К статье
Практический материал

Торговля и Склад · 9 мин

Как сделать скидку на товар в 1С-Битрикс

Как настроить скидку на товар в 1С-Битрикс: правила работы с корзиной, купоны, накопительные скидки, условия применения и проверка результата.

Скидки на товары в 1С-Битрикс (редакции с модулем «Интернет-магазин») создаются в административном разделе через механизм правил работы с корзиной. Это гибкий инструмент: можно задать процентную или фиксированную скидку, привязать её к конкретному товару, разделу, бренду, группе пользователей или купону. Настройка выполняется без программирования, но требует понимания логики условий и приоритетов.

Основной путь: Маркетинг → Товарный маркетинг → Правила работы с корзиной (в старых версиях — «Магазин → Скидки»). Каждое правило состоит из действия (что делать — например, дать скидку 10%) и условий (когда применять). Ниже разобраны основные сценарии, ограничения и типичные ошибки.

Где находится настройка скидок

В современных версиях 1С-Битрикс: Управление сайтом скидки объединены в разделе Маркетинг. Откройте «Товарный маркетинг → Правила работы с корзиной». Здесь отображается список всех существующих правил с их приоритетами, периодами активности и статусами.

В старых редакциях путь другой: «Магазин → Скидки на товар» и «Магазин → Скидки на заказ». Логика похожая, но интерфейс отличается. Если у вас установлено решение Аспро или другое готовое, проверьте, не переопределено ли отображение скидок в шаблоне — сама механика при этом остаётся штатной.

Создание простой скидки на конкретный товар

Нажмите «Добавить правило». Заполните название (например, «Скидка 15% на кофемашину X»), укажите сайт, период активности и при необходимости группы пользователей, которым доступна скидка. Если оставить группы пустыми, скидка будет действовать для всех посетителей.

В блоке «Действия» выберите «Предоставить скидку на товар» (или «Скидка в процентах / в валюте» в зависимости от версии). Укажите величину скидки: процент от цены или фиксированную сумму. Затем в блоке «Условия» добавьте условие «Товар» и выберите нужный товар из каталога через поиск по названию или коду.

Сохраните правило. Теперь при добавлении этого товара в корзину цена пересчитается автоматически. Если скидка должна отображаться ещё на карточке товара в каталоге, убедитесь, что шаблон компонента выводит цену со скидкой (стандартные шаблоны это делают).

Порядок действий
  1. 1
    Откройте Маркетинг → Правила работы с корзиной и нажмите «Добавить правило»
  2. 2
    Заполните название, сайт и период активности правила
  3. 3
    В блоке «Действия» выберите скидку и задайте процент или сумму
  4. 4
    В блоке «Условия» добавьте условие «Товар» и выберите нужную позицию
  5. 5
    Сохраните правило и проверьте расчёт в тестовой корзине

Скидка на раздел, бренд или группу товаров

Чтобы скидка действовала не на один товар, а на целую категорию, в условиях используйте «Раздел товара» — скидка применится ко всем товарам указанного раздела. При необходимости включите опцию учёта вложенных подразделов, иначе товары из дочерних категорий не попадут под акцию.

Для скидки по бренду или другому свойству добавьте условие «Свойство товара» и укажите нужное значение. Условия можно комбинировать: например, «раздел = Обувь» И «свойство Бренд = X». По умолчанию условия объединяются логическим «И» — скидка сработает только при выполнении всех условий одновременно. Для варианта «хотя бы одно из» переключите логику группы условий на «ИЛИ».

Исключения из акции

Частая задача — скидка на раздел, кроме нескольких товаров. Добавьте вложенную группу условий с отрицанием: «НЕ (товар = ...)». Проверьте результат на нескольких позициях: ошибки в логике условий — самая частая причина того, что скидка применяется не туда.

Скидка по купону

Купонная скидка активируется кодом, который покупатель вводит в корзине. В форме правила перейдите на вкладку «Купоны» и создайте купон: один многоразовый код (например, SALE10) или сгенерируйте пакет одноразовых кодов для рассылки. Одноразовые купоны безопаснее для персональных акций — их нельзя переслать другому покупателю повторно.

Дальше правило настраивается так же: действие (размер скидки) и при необходимости дополнительные условия. Без купона скидка применяться не будет — это главное отличие от автоматических правил. Убедитесь, что в шаблоне корзины есть поле ввода купона, иначе покупатели физически не смогут его применить.

Приоритеты и совместное применение скидок

Когда активно несколько правил, важно понимать, как они взаимодействуют. У каждого правила есть приоритет: правила с более высоким приоритетом применяются первыми. Флажок «Прекратить дальнейшее применение правил» останавливает обработку остальных скидок после текущего — это защищает от суммирования акций, которые не должны складываться.

Также есть опция «Прекратить применение скидок на уровне приоритета». Типичная схема: крупным акционным правилам дают высокий приоритет и ставят остановку, а базовым (например, скидка постоянным клиентам) — низкий. Перед запуском массовой распродажи протестируйте пересечения с уже действующими правилами, иначе итоговая цена может уйти ниже себестоимости.

Проверка результата и типичные ошибки

После настройки добавьте товар в корзину от имени обычного посетителя (в режиме инкогнито или под тестовым пользователем). Цена должна пересчитаться с учётом скидки, а в составе заказа должна отображаться строка скидки. Проверьте также карточку товара в каталоге и оформление заказа до конца — скидка должна «дожить» до финального чека.

Если скидка не применяется, проверьте по порядку: активно ли правило и не истёк ли период; совпадает ли сайт; входит ли пользователь в разрешённую группу; корректны ли условия (частая ошибка — выбран не тот инфоблок или торговое предложение вместо товара); не остановило ли обработку другое правило с высоким приоритетом.

Типичные ошибки
01
Скидка задана на товар, а в корзину добавляется торговое предложение (SKU) — условие не срабатывает; выбирайте в условии именно то, что покупает клиент
02
Не установлен период активности или сайт, и правило конфликтует с другими акциями на многосайтовой установке
03
Забыт флажок остановки применения правил — скидки суммируются и цена уходит ниже себестоимости
04
Условие по разделу не учитывает вложенные подразделы — часть товаров остаётся без скидки
05
Купон создан, но в шаблоне корзины нет поля ввода — покупатели не могут его применить
Контрольные точки

Как проверить результат

Цена в корзине
Норма

Цена пересчитана, видна строка скидки с названием правила

Тревожный признак

Цена не изменилась или скидка применилась дважды

Карточка товара в каталоге
Норма

Отображается старая и новая цена

Тревожный признак

Скидка видна только в корзине — проверьте шаблон компонента

Оформленный заказ
Норма

В составе заказа и печатных формах скидка учтена корректно

Тревожный признак

Скидка теряется на этапе оформления — проверьте приоритеты правил

Дополнительные возможности

Помимо прямых скидок на товар, в правилах доступны смежные сценарии: скидка на весь заказ от суммы, подарок при покупке определённого товара, бесплатная доставка. Накопительные программы (скидка, зависящая от суммы прошлых покупок) настраиваются отдельно — в разделе «Магазин → Накопительные скидки» — и работают только для зарегистрированных пользователей.

Если стандартных условий не хватает (например, скидка по сложной формуле или по данным из внешней системы), потребуется доработка через события модуля sale или кастомные условия. Это уже задача для разработчика: изменения в ядре делать нельзя, только через обработчики в init.php или собственный модуль.

Итог

Что важно запомнить

Скидка создаётся в разделе Маркетинг → Правила работы с корзиной: действие задаёт размер скидки, условия — область применения. Контролируйте приоритеты и остановку правил, чтобы акции не суммировались, и всегда проверяйте результат на тестовом заказе до запуска.

Частые вопросы

Почему скидка не отображается на карточке товара, но работает в корзине?

Скорее всего, шаблон каталога выводит базовую цену без расчёта скидок. Используйте штатные методы получения цены со скидкой (CCatalogProduct::GetOptimalPrice или соответствующие вызовы в новых шаблонах) либо включите вывод цены со скидкой в настройках компонента каталога.

Можно ли сделать скидку только для зарегистрированных пользователей?

Да. В настройках правила укажите группы пользователей, которым доступна скидка, и исключите группу неавторизованных посетителей. Скидка начнёт применяться только после входа пользователя на сайт.

Как сделать скидку на второй товар в корзине (механика «1+1»)?

В действиях правила доступны варианты скидки с учётом количества, но сложные механики вроде «второй товар со скидкой 50%» часто требуют комбинации условий по количеству или доработки. Проще всего проверить штатные действия «скидка на каждый N-й товар», если они есть в вашей версии.

Скидка применяется к торговым предложениям, но не к товару — что делать?

В условии используйте именно тот тип элемента, который попадает в корзину. Если продаются торговые предложения (SKU), условие «Товар» может не сработать — выберите условие по предложению или по свойству, общему для всех вариантов.

Как массово завершить все акции после распродажи?

Откройте список правил работы с корзиной, отфильтруйте активные и деактивируйте нужные правила снятием флажка активности. Удалять правила не обязательно — деактивированное правило можно включить повторно для следующей акции.