Накопительные скидки в магазине на Битриксе. Битрикс применимости скидок
Накопительные скидки на сайте под управлением 1С-Битрикс
Приветствую, Друзья!
В этом видеоуроке Вы узнаете как настроить накопительные скидки (программу лояльности) для своего интернет-магазина на 1С-Битрикс. Данная возможность есть только в 1С-Битрикс редакций «Бизнес» и «Бизнес веб-кластер».
Этим видеоуроком я продолжаю небольшую серию уроков по редакции «Бизнес».
Что такое накопительные скидки? Это механизм, который помогает Вам сделать покупателей своего интернет-магазина постоянными покупателями. Вы своим покупателям даете дополнительные скидки на товары в зависимости от того, на какую сумму уже сделал покупок ранее этот покупатель.Накопительные программы в Битриксе позволяют делать шкалу скидок. Купил раньше на 10т.р. – получи скидку на все товары 5%. Купил на 20т.р. – скидка будет уже 10%. И так далее.
Причем можно привязываться к периодам. Например, при покупке в сентябре на сумму более 20т.р. даем скидку в октябре и ноябре 10% на все товары.
Как начать работать с покупателями по такой системе?Если магазин настроен правильно, то все покупатели у нас становятся зарегистрированными автоматически после первой покупки, даже если они сами не проходили процедуру регистрации на сайте. И у нас появляются их контактные данные. Сейчас нам надо только настроить накопительные скидки и оповестить через какое-то время после первой покупки, что в магазине действует накопительная программа, что человек уже попал под ее действие и у него уже есть дополнительная скидка в размене XXX%. В этом же письме надо напомнить покупателю его логин и пароль в нашем магазине. И дальше включаете какие-нибудь свои маркетинговые возможности и стимулируете покупателя на повторную покупку, которую сделать намног проще, чем первую покупку в любом интернет-магазине.
У Вас есть свой магазин на Битриксе в редакции Бизнес? Тогда смотрите однозначно:
На этом сегодня все!
Всем пока! Если появились вопросы или пожелания, то пишите их ниже в комментариях.
blog.web-shoper.ru
Создание скидки на общую сумму покупки в Битрикс корзине
Функционал интернет-магазина, работающего под управлением 1С Битрикс, позволяет задавать множество условий скидок в корзине покупателя. Эти условия можно гибко настраивать и адаптировать под конкретный вид бизнеса.
Основные виды манипуляций которые приходится настраивать достаточно часто:
- Скидка на доставку при большом количестве набранных товаров
- Скидка на количество конкретного товара в корзине. При этом другие товары, положенные вместе со "скидочным" не имеют скидки
- Скидка на конкретный товар, который идет по акции (правда не особо применимо в разрезе этого функционала, проще сделать через "Скидки на товар")
- Скидка на товары при оформлении доставки, конкретной службой доставки
- Скидка при самовывозе.
- Скидка при использовании конкретной платежной системы
- Скидка на общую сумму заказа.
Функционал достаточно обширен и позволяет реализовать любые фантази и условия. Я расскажу на примере "Скидка 15% если товаров в корзине на сумму от 15001 до 20000 рублей"
Скидка на общую сумму покупки
Идем в админпанель, раздел "Магазин", подраздел "Скидки", пункт "Правила работы с корзиной":
Нажимаем "Добавить правило":
Откроется мастер настройки правила. Здесь, минимально необходимо, указать понятое название, так как если таких условий будет много Вы легко запутаетесь. Я назвал скидку как есть и не выставлял период активности, то есть данное правило навсегда с текущего момента:
Переходим на вкладку "Действия условия" и задаем действие которое должно произойти, в моем случае должно произойти "Изменение стоимости товаров в корзине"
И заполняем действие как на скриншоте. То есть мы пошагово составили "применить скидку 15% ко всем товарам соответствующим условиям"
А теперь необходимо создать условие при котором это действие будет срабатывать. Для этого переходим в поле ниже "Дополнительные условия". И выбираем из заготовок "Общая стоимость товаров":
Создаем два таких условия как на скриншоте. То есть мы ограничили суммы в рамки 15001 рубль и 20000 рублей. Если говорить человеческим языком- то получается следующее "Если в корзине набрано товаров от 15001 рубля до 20000 рублей должна сработать скидка 15% на все товары":
Переходим на вкладку "Ограничения" и указываем пользователей для которых будет доступно это условие. То есть можно применять только для авторизованных или для партнеров, а для всех остальных скидок не будет. В моем случае я выбрал все категории пользователей. Администратора выбирайте обязательно, так как Вам нужно будет проверить свою работу.
Все готово. Но держите за правило- всегда все проверять. Для этого переходим на сайт и кидаем в корзину товаров на сумму в рамках 15000/20000 рублей. Переходим в корзину и видим что наша скидка применилась.
На всякий случай докладываем в корзину товаров на сумму превышающее наше условие. И видим что скидка не сработала.
Все отлично, наша работа принесла результат. Если Вы не хотите ограничивать скидку в неких рамках. Например нужно сделать так, чтобы скидка срабатывала от 15000 рублей и в бесконечность, просто не задаете второе условие, не нужно создавать еще одну скидку от 20000 и выше (конечно если она не отличается)
miditator.ru
Получить скидку / цена с учетом скидки bitrix — Библиотека кода
/**
* Возвращает скидочную цены/цену с учетом скидки
* @param boolean $type [true/false]
* @return [int] [Если true возвращаем скидку, иначе возвращает сумму с учетом скидки]
*/
function getDiscountPrice($type = true)
{
$dbBasketItems = CSaleBasket::GetList(
array("ID" => "ASC"),
array(
'FUSER_ID' => CSaleBasket::GetBasketUserID(),
'LID' => SITE_ID,
'ORDER_ID' => 'NULL',
),
false,
false,
array(
'ID', 'PRODUCT_ID', 'QUANTITY', 'PRICE', 'DISCOUNT_PRICE', 'WEIGHT',
)
);
$allSum = 0;
$allWeight = 0;
$arItems = array();
while ($arBasketItems = $dbBasketItems->Fetch()) {
$allSum += ($arItem["PRICE"] * $arItem["QUANTITY"]);
$allWeight += ($arItem["WEIGHT"] * $arItem["QUANTITY"]);
$arItems[] = $arBasketItems;
}
$arOrder = array(
'SITE_ID' => SITE_ID,
'USER_ID' => $GLOBALS["USER"]->GetID(),
'ORDER_PRICE' => $allSum,
'ORDER_WEIGHT' => $allWeight,
'BASKET_ITEMS' => $arItems,
);
$arOptions = array(
'COUNT_DISCOUNT_4_ALL_QUANTITY' => 'Y',
);
$arErrors = array();
CSaleDiscount::DoProcessOrder($arOrder, $arOptions, $arErrors);
$PRICE_ALL = 0;
$DISCOUNT_PRICE_ALL = 0;
$QUANTITY_ALL = 0;
foreach ($arOrder["BASKET_ITEMS"] as $arOneItem) {
$PRICE_ALL += $arOneItem["PRICE"] * $arOneItem["QUANTITY"];
$DISCOUNT_PRICE_ALL += $arOneItem["DISCOUNT_PRICE"] * $arOneItem["QUANTITY"];
$QUANTITY_ALL += $arOneItem['QUANTITY'];
}
$result['PRICE_ALL'] = $PRICE_ALL; // Цена у учетом скидки
$result['DISCOUNT_PRICE_ALL'] = $DISCOUNT_PRICE_ALL; // Скидка
$result['QUANTITY_ALL'] = $QUANTITY_ALL; // Кол-во товара
return ($type) ? $result['DISCOUNT_PRICE_ALL'] : $result['PRICE_ALL'];
}
code.matveevs.ru