Функционал интернет-магазина, работающего под управлением 1С Битрикс, позволяет задавать множество условий скидок в корзине покупателя. Эти условия можно гибко настраивать и адаптировать под конкретный вид бизнеса. Расскажу про настройку скидок на общую сумму заказа в корзине в зависимости от суммы.
Основные виды манипуляций которые приходится настраивать достаточно часто:
- Скидка на доставку при большом количестве набранных товаров
- Скидка на количество конкретного товара в корзине. При этом, другие товары, положенные вместе со "скидочным" не имеют скидки
- Скидка на конкретный товар, который идет по акции (правда не особо применимо в разрезе этого функционала, проще сделать через "Скидки на товар")
- Скидка на товары при оформлении доставки, конкретной службой доставки
- Скидка при самовывозе.
- Скидка при использовании конкретной платежной системы
- Скидка на общую сумму заказа.
Функционал достаточно обширен и позволяет реализовать любые фантазии и условия. Я расскажу на примере "Скидка 15% если товаров в корзине на сумму от 15001 до 20000 рублей"
Скидка на общую сумму покупки
Идем в админпанель, раздел "Магазин", подраздел "Скидки", пункт "Правила работы с корзиной":

Нажимаем "Добавить правило":

Откроется мастер настройки правила. Здесь минимально необходимо указать понятое название, так как, если таких условий будет много, Вы легко запутаетесь. Я назвал скидку как есть и не выставлял период активности, то есть данное правило навсегда с текущего момента:

Переходим на вкладку "Действия условия" и задаем действие которое должно произойти, в моем случае должно произойти "Изменение стоимости товаров в корзине"

И заполняем действие как на скриншоте. То есть мы пошагово составили "применить скидку 15% ко всем товарам соответствующим условиям"

А теперь необходимо создать условие при котором это действие будет срабатывать. Для этого переходим в поле ниже "Дополнительные условия". И выбираем из заготовок "Общая стоимость товаров":

Создаем два таких условия как на скриншоте. То есть мы ограничили суммы в рамки 15001 рубль и 20000 рублей. Если говорить человеческим языком, то получается следующее "Если в корзине набрано товаров от 15001 рубля до 20000 рублей, должна сработать скидка 15% на все товары":

Переходим на вкладку "Ограничения" и указываем пользователей, для которых будет доступно это условие. То есть можно применять только для авторизованных или для партнеров, а для всех остальных скидок не будет. В моем случае я выбрал все категории пользователей. Администратора выбирайте обязательно, так как Вам нужно будет проверить свою работу.

Все готово. Но держите за правило: всегда все проверять. Для этого переходим на сайт и кидаем в корзину товаров на сумму в рамках 15000/20000 рублей. Переходим в корзину и видим, что наша скидка применилась.

На всякий случай докладываем в корзину товаров на сумму превышающее наше условие, и видим, что скидка не сработала.

Все отлично, наша работа принесла результат. Если Вы не хотите ограничивать скидку в неких рамках. Например, нужно сделать так, чтобы скидка срабатывала от 15000 рублей и в бесконечность, просто не задаете второе условие, не нужно создавать еще одну скидку от 20000 и выше (конечно если она не отличается)

Цитата |
---|
ruslan2243 написал: Михаил, как сделать, чтобы в корзине стояли чекбоксы: - пенсионерам скидка 5% - студентам скидка 5% Покупатель выбирает, и заказ пересчитывается. Такое можно сделать штатно? И если не штатно, то как примерно это должно выглядеть? |
Например, стоят галочки:
- сезонная скидка
- скидка студенту
Человек отмечает галочки и Итоговая сумма в корзине пересчитывается.
Какой метод использовать? и Где хранить эти скидки, чтобы можно было их редактировать? в инфоблоке?
Не получится разделить на группы, т.к. скидки произволные, не привязаны ни к пользователям и товарам.
Просто чекбоксы. Это может быть всё что угодно, безо всякой логики:
- у меня хорошее настроение (5%)
- просто поставь галочку (10%)
..ну и т.д.
Может быть просто менять стоимость заказа. А скидки хранить в инфоблоке.
Есть такой метод CCatalogDiscount::Add, но мне кажется он относится к скидкам по условию, которые хранятся в разделе скидки.

Цитата |
---|
Михаил Базаров пишет: Быть может, срабатывает какое-то ограничение? Например: по службе оплаты или доставки- нужно изнутри разбираться |

Цитата |
---|
Роман написал: Добрый день, можно ли увидеть сумму всех товаров со скидкой промокода в корзине, а не на этапе оформления, где видны все способы оплаты, это к тому, что у промокода есть правила исключения по поводу способов оплаты. То есть, корзина еще не видит способов оплаты и поэтому не пересчитывает товары. |
Думаю нет. Но это и логично: корзина еще "не знает", что выберет пользователь в оформлении.

Цитата |
---|
Гость написал: Михаил, подскажите пожалуйста, как сделать так, чтобы суммировалась скидка по купону и другие скидки? |
Если память не изменяет, сейчас негде посмотреть, нужно в обоих скидках не ставить галку "Прекратить дальнейшее применение скидок" - может быть не очень точно написал название галки, но смысл примерно такой.