В 1С-Битрикс промокод — это не отдельная сущность, а купон, привязанный к правилу работы с корзиной. Скидку задаёт правило, а промокод лишь включает её при вводе в оформлении заказа. Разберём настройку по шагам: от создания правила до проверки на витрине.
Как устроен промокод в Битрикс
Ключевая идея, которую важно усвоить перед настройкой: в 1С-Битрикс сам купон скидку не содержит. Размер и условия скидки хранит правило работы с корзиной (раздел Магазин → Настройки → Правила работы с корзиной), а купон-промокод — это лишь текстовый код, который активирует привязанное к нему правило.
Соответственно, чтобы получить рабочий промокод, нужны две вещи:
- Правило корзины — оно описывает, что за скидка (процент, фиксированная сумма, скидка на доставку) и при каких условиях она применяется;
- Купон — код вида
SALE15, привязанный к этому правилу и ограниченный по количеству использований и сроку.
Шаг 1. Создаём правило работы с корзиной
Перейдите в Магазин → Настройки → Правила работы с корзиной и нажмите «Добавить правило». Заполните основные поля:
- Название — понятное для менеджеров, например «Промокод -15% на весь заказ»;
- Активность — включите, иначе правило не сработает;
- Период активности — при необходимости ограничьте датами акции;
- Сайты — отметьте те, где действует скидка (важно на многосайтовых проектах);
- Приоритет — определяет порядок применения, если правил несколько.
Далее в блоке «Условия» можно оставить пусто (скидка на любой заказ) или задать ограничения: минимальную сумму корзины, конкретные разделы каталога, свойства товаров. В блоке «Действие» задаётся сама скидка — к этому вернёмся в отдельном разделе.
«Применять только с купоном» (в новых редакциях — переключатель типа скидки на «По купону»). Без него скидка станет применяться всем автоматически, а промокод потеряет смысл.Шаг 2. Привязываем купон-промокод
Когда правило настроено как «по купону», внутри него появляется блок «Купоны». Нажмите «Добавить купон» и заполните:
- Купон — сам код промокода. Можно ввести вручную (
WELCOME10) или нажать «Сгенерировать» для случайной строки; - Тип купона —
Одноразовый(сгорает после первого заказа),Многоразовый на один заказ(одна скидка на заказ, но кодом пользуются многие) илиОграниченное количество применений; - Число активаций — для ограниченного типа;
- Активность и срок действия — даты, за пределами которых код не примет.
Один код на скидку в 15% для рассылки обычно делают многоразовым, а персональные коды из письма «спасибо за регистрацию» — одноразовыми. Тип купона в Битрикс задаётся на уровне каждого купона, а не правила, поэтому в одном правиле можно держать и одноразовые, и многоразовые коды.
Шаг 3. Выбираем тип скидки: процент, фикс или доставка
Тип скидки задаётся в блоке «Действие» правила корзины. Битрикс поддерживает несколько сценариев:
| Тип действия | Что делает | Пример |
|---|---|---|
| Скидка в процентах | Снижает сумму корзины на заданный % | −15% на заказ |
| Фиксированная скидка | Вычитает конкретную сумму | −500 ₽ от итога |
| Фиксированная цена | Приравнивает цену к заданной | Товар за 990 ₽ |
| Скидка на доставку | Снижает или обнуляет стоимость доставки | Бесплатная доставка |
Для процентной скидки полезно выставить ограничение максимальной суммы (поле «не более»), чтобы −15% на крупном заказе не превратились в неожиданный убыток. Скидку на доставку выбирают в выпадающем списке типа действия — она применяется к службе доставки, а не к товарам, поэтому для «бесплатной доставки по промокоду» нужен именно этот вариант.
Шаг 4. Ввод промокода в оформлении заказа
Поле для ввода промокода на витрине даёт компонент оформления заказа sale.order.ajax (в старых сборках — sale.order). В большинстве стандартных шаблонов поле «Купон» присутствует по умолчанию, но иногда его прячут в настройках компонента.
Проверьте в настройках компонента параметр отображения купонов (в шаблоне за это отвечает блок с классом basket-coupon). Клиент вводит код, нажимает «Применить», и Битрикс по AJAX пересчитывает корзину: если купон валиден и условия правила выполнены — сумма меняется, если нет — выводится сообщение об ошибке.
Также поле ввода купона встречается в компоненте малой корзины и на странице большой корзины (sale.basket.basket), если вы хотите, чтобы скидка была видна ещё до оформления. Код, введённый в корзине, сохраняется в сессии и подхватывается в оформлении автоматически.
Шаг 5. Тестируем и типовые ошибки
После настройки обязательно проверьте промокод на реальном заказе. Соберите корзину, перейдите в оформление, введите код и убедитесь, что скидка отобразилась в итоге. Если скидка не применяется, пройдитесь по чек-листу:
- Правило неактивно или закончился период его активности;
- Купон неактивен, истёк срок или исчерпан лимит активаций;
- Не выполнены условия правила — например, сумма корзины ниже минимальной;
- Правило не помечено как «по купону» — тогда скидка либо не привязана к коду, либо применяется всем;
- Промокод не действует на выбранном сайте (проверьте привязку сайтов);
- Мешает приоритет — другое правило с флагом «прекратить применение других правил» перехватывает расчёт.
Настройки → Настройки продукта → Автокэширование или очистка кэша). Иначе на витрине вы можете видеть старое поведение.Итог
Промокод на скидку в 1С-Битрикс собирается из двух частей: правило работы с корзиной задаёт размер и условия скидки (процент, фикс, цена или доставка), а купон активирует это правило при вводе кода в оформлении заказа. Отметьте правило как «по купону», выберите тип купона по сценарию рассылки, настройте поле ввода в компоненте sale.order.ajax и обязательно протестируйте на живом заказе, не забыв про кэш.
Если промокодов много, они пересекаются по приоритетам или нужна генерация серии кодов под рассылку с выгрузкой в 1С — мы помогаем выстроить логику скидок аккуратно и без сюрпризов в расчётах. Наша команда занимается разработкой и поддержкой магазинов на 1С-Битрикс и настроит акционную механику под ваши задачи.
Частые вопросы
Чем промокод отличается от купона в Битрикс?
Технически это одно и то же: промокод — это купон, привязанный к правилу работы с корзиной. Термин «промокод» чаще используют в маркетинге, а в админке Битрикс он называется купоном.
Можно ли сделать промокод на скидку без правила корзины?
Нет. Купон сам по себе скидку не содержит — её размер и условия хранит правило работы с корзиной. Без привязанного правила код просто не даст никакого эффекта.
Как сделать промокод на бесплатную доставку?
В правиле корзины в блоке «Действие» выберите тип «Скидка на доставку» и задайте 100% или обнуление стоимости. Затем привяжите к правилу купон и пометьте правило как действующее по купону.
Как ограничить промокод одним использованием на клиента?
Задайте купону тип «Одноразовый» — он сгорит после первого оформленного заказа. Для персональных кодов из писем это самый надёжный вариант.
Почему промокод не применяется на витрине?
Частые причины: правило или купон неактивны, истёк срок, не выполнены условия правила (например, минимальная сумма), либо не сброшен кэш. Проверьте флаг «по купону» и привязку к нужному сайту.
Как ограничить сумму процентной скидки?
В действии правила у процентной скидки есть поле максимальной суммы («не более»). Оно ограничивает абсолютный размер скидки, чтобы на крупных заказах процент не давал слишком большую скидку.
Где на сайте появляется поле ввода промокода?
В компоненте оформления заказа sale.order.ajax, а также в компонентах корзины. В стандартных шаблонах поле «Купон» есть по умолчанию, но его отображение можно включать или отключать в настройках компонента.
Можно ли в одном правиле держать несколько промокодов?
Да. К одному правилу можно привязать множество купонов с разными кодами и типами. Это удобно для серии промокодов под рассылку, когда скидка одна, а кодов много.
Поможем с настройкой и поддержкой 1С-Битрикс: Управление сайтом
Поможем с настройкой, доработкой и поддержкой 1С-Битрикс: Управление сайтом.