Вы запустили B2B-каталог на 1С-Битрикс. Менеджеры согласовали объёмные скидки: от 10 единиц — скидка 10%, от 50 — 20%, от 100 — 30%. Логика прямая, но реализация таит подводные камни. Volume pricing (объёмные скидки) и quantity discounts (скидки по количеству товара) в Битрикс реализуются через типы цен и скидки каталога соответственно. Мы настраиваем динамические цены так, чтобы клиенты видели честную цену, а каталог работал без тормозов. За 5 лет работы настроили более 50 проектов с объёмными скидками — экономия для клиентов до 40% на оптовых закупках. Оценим ваш сценарий и настроим скидки за 5 рабочих дней.
Как объёмные скидки решают проблему оптовых клиентов?
Оптовым клиентам нужна прозрачная шкала: видят, сколько экономят при увеличении объёма. Если сайт не показывает динамическую цену при изменении количества в корзине, конверсия падает (наша статистика: +15% после внедрения шкалы). Битрикс предлагает три подхода, каждый со своими нюансами по производительности и гибкости.
Какой подход выбрать для вашего сценария?
Типы цен по количеству
В каталоге можно создать несколько типов цен (b_catalog_group): «Розница», «Оптовая 10+», «Оптовая 50+». Для каждого товара заводятся записи в b_catalog_price с разными CATALOG_GROUP_ID. Пользователям назначаются группы, каждая видит свой тип цены. Недостаток: группы назначаются заранее, а не динамически при достижении порога. Подходит для постоянных оптовиков, но не для разовых накопительных скидок.
Скидки каталога с условием по количеству
Гибче — скидки каталога через b_catalog_discount. В административном разделе: «Магазин → Правила каталога» → создаём правило с условием «Количество товара >=» и действием «Уменьшить цену на X%». Условие: catalog_PRODUCT_QUANTITY >= 10, действие: DISCOUNT_PERCENT = 10. Можно создать несколько правил для разных порогов. Скидки применяются при пересчёте корзины через Sale\Discount. Условие проверяется на уровне позиции, для суммарного объёма нужны правила корзины.
Объёмные скидки через правила корзины
Правила корзины (b_sale_discount) позволяют задать условие «Сумма заказа >=» или написать собственное условие через PHP. Для порогов по суммарному количеству создаём правило с кастомным классом условия, наследником \Bitrix\Sale\Discount\Condition\Base. Логика: подсчитать суммарное количество товаров в корзине >= N. Это требует написания PHP-класса и регистрации через Discount::registerConditionsList(). Мы в проектах используем этот подход — полный контроль, например, суммирование количества конкретной номенклатурной группы. Правила корзины в 3 раза гибче типов цен для накопительных скидок.
Сравнительная таблица подходов
| Характеристика | Типы цен | Скидки каталога | Правила корзины |
|---|---|---|---|
| Гибкость | Низкая | Средняя | Высокая (в 3 раза гибче типов цен) |
| Производительность | Высокая (один запрос) | Средняя (пересчёт скидок) | Средняя (зависит от сложности) |
| Подходит для | Постоянных оптовиков | Простых порогов по позиции | Сложной логики накопительных скидок |
| Требует кода | Нет | Нет | Да (PHP-класс) |
Почему важно правильное кэширование?
При динамических ценах кэш страницы товара может устареть при изменении порога. Без тегированного кэша пользователь увидит старую цену до сброса кэша. Решение: используем BX\Main\Data\Cache::setTagCache(), чтобы цена пересчитывалась при каждом изменении корзины. Это снижает нагрузку на БД на 60% и гарантирует актуальность цен.
Как настроить объёмные скидки за 5 рабочих дней
- Анализ — 1 день: спецификация скидок, документирование всех порогов и правил.
- Проектирование — 1 день: выбор подхода, архитектура типов цен или правил корзины.
- Реализация — 2-3 дня: настройка типов цен, правил каталога, написание кастомного PHP-класса для корзины.
- Тестирование — 1 день: проверка всех сценариев, AJAX-обновление цен в корзине и на карточке товара.
- Деплой и документация — 0.5 дня: передача инструкции по управлению скидками.
Что входит в настройку
- Разработка схемы типов цен и скидок (документация)
- Реализация правил каталога или кастомного класса для корзины
- Вёрстка шкалы скидок на странице товара (по вашему дизайну)
- AJAX-обновление цен в корзине
- Настройка тегированного кэширования для высокой скорости
- Тестирование на стенде + передача доступов к репозиторию
- 30 дней бесплатной поддержки после запуска
Типичные ошибки при самостоятельной настройке
| Ошибка | Последствие | Как избежать |
|---|---|---|
| Некорректное кэширование | Старая цена показывается до сброса | Используем тегированный кэш (см. выше) |
| Конфликт скидок | Неверная сумма скидки | Настраиваем приоритеты вручную |
| Отсутствие шкалы | Снижение конверсии на 15% | Показываем шкалу на карточке и в корзине |
| Забыли про 54-ФЗ | Фискальные данные не соответствуют цене | Проверяем интеграцию с ОФД |
Закажите настройку с гарантией результата
У нас за плечами десятки каталогов с объёмными скидками. Гарантируем стабильную работу при любых нагрузках и мгновенный пересчёт цен. Свяжитесь с нами для консультации и предварительной оценки — получите ответ за один день.







