В рознице у товара одна цена, и всё просто. В опте всё иначе: у той же позиции своя цена для дилера, своя для оптовика первого уровня, своя для розничного гостя, а часть цен вообще не должна быть видна посторонним. Если пытаться уложить это в одну ценовую колонку, начинается хаос — и клиент видит не ту цену, что должен.
В 1С-Битрикс для этого есть штатный механизм — множественные цены через типы цен и группы пользователей. В этой статье разберём, как он устроен: что такое тип цены, как он связан с группами, как настроить приоритеты и закрытые оптовые цены и как всё это приезжает из 1С. Настройку и доработку ценообразования под опт закрывает наша услуга автоматизации на 1С.
Коротко
- Множественные цены — это набор типов цен (розница, опт, дилер), привязанных к одному товару.
- Какую цену видит покупатель, определяет связка «тип цены + группа пользователя».
- При пересечении групп применяется приоритет типов цен — показывается самая приоритетная.
- Оптовые цены скрывают от гостей правами на просмотр; цены обычно приходят из 1С обменом.
Зачем каталогу несколько цен на товар
Множественные цены нужны везде, где цена зависит от того, кто покупает. Это прежде всего опт и B2B, но не только: программы лояльности, партнёрские условия, региональные цены — всё это требует разных цен на один и тот же товар.
Задача механизма — хранить у товара несколько цен одновременно и показывать каждому покупателю ту, что положена именно ему. Причём не только показывать выгодную своим, но и скрывать закрытые цены от чужих. 1С-Битрикс решает это через две связанные сущности: типы цен и группы пользователей.
Типы цен: базовое понятие
Тип цены — это отдельная ценовая колонка товара. Вы заводите нужные типы под свои сегменты:
- Розница. Базовая цена для обычных покупателей и гостей.
- Опт. Цена для оптовых клиентов.
- Дилер. Специальная цена для дилеров и партнёров.
- Дополнительные. VIP, региональные, акционные — сколько нужно бизнесу.
У одного товара эти типы существуют параллельно: одна и та же позиция имеет розничную, оптовую и дилерскую цену одновременно. Каждый тип — самостоятельная сущность со своими правами доступа. Именно набор типов цен на товаре и называют множественными ценами.
Группы пользователей и права
Вторая половина механизма — группы пользователей. Покупатели распределяются по группам: «Все пользователи» (в том числе гости), «Оптовики», «Дилеры», «VIP» и так далее. Группа — это способ сегментировать аудиторию и выдать каждому сегменту свои условия.
У каждого типа цены настраиваются права: какие группы могут его видеть и какие — покупать по нему. Право «просмотр» отвечает за то, увидит ли группа эту цену на витрине, право «покупка» — сможет ли по ней оформить заказ. Разделение прав позволяет тонко управлять тем, кто и что видит.
Связка «тип цены + группа»
Магия множественных цен — в связке типов и групп. Именно она определяет, какую цену увидит конкретный покупатель.
| Группа | Видит тип цены | Что показывается на витрине |
|---|---|---|
| Гость (Все) | Розница | Розничная цена |
| Оптовик | Розница, Опт | Оптовая (приоритетнее) |
| Дилер | Розница, Опт, Дилер | Дилерская (самая приоритетная) |
| VIP | Индивидуальная | Персональная цена |
Авторизованный дилер видит дилерскую цену, оптовик — оптовую, а гость — розничную. Витрина автоматически подставляет нужную цену по группе текущего пользователя. Про то, как эта же логика групп работает в поиске и B2B-сценариях, полезно смотреть вместе с материалом про REST, вебхуки и безопасность в Битрикс, где данные о клиенте и его группе передаются во внешние системы.
Приоритеты при пересечении групп
Что делать, если пользователю доступно несколько типов цен? Дилер часто входит и в группу «Оптовики», и в «Дилеры», а значит видит и оптовую, и дилерскую цену. Чтобы разрешить конфликт, у типов цен есть приоритет.
Показывается самая приоритетная из доступных цен — обычно самая выгодная для клиента. Приоритеты настраиваются числом: дилерская цена ставится выше оптовой, оптовая — выше розничной. Тогда дилер получает дилерскую, а не оптовую цену, хотя формально видит обе. Правильная настройка приоритетов — ключ к тому, чтобы пересечения групп не давали покупателю не ту цену.
Закрытые оптовые цены
Частое B2B-требование — не показывать оптовые и дилерские цены посторонним. Реализуется это правами на просмотр: у оптового типа цены снимают право просмотра у группы «Все пользователи» и оставляют только у нужных групп.
Тогда неавторизованный гость не видит оптовую цену вовсе. Вместо неё показывают:
- Розничную цену. Как альтернативу для обычных покупателей.
- Кнопку «Войти». Чтобы оптовик авторизовался и увидел свою цену.
- Запрос на регистрацию. «Оптовые цены — после регистрации».
Цены и торговые предложения
У товаров с вариантами — торговыми предложениями — цены обычно ведутся на уровне предложения. У каждого размера, цвета или фасовки своя цена по каждому типу. Каталог показывает цену выбранного предложения с учётом группы покупателя.
Это позволяет делать разные оптовые и розничные цены не только для товара-родителя, но и для конкретных вариантов — например, крупная фасовка дешевле в опте за единицу. Механизм множественных цен здесь работает так же, просто применяется к предложению, а не к товару.
Обмен цен из 1С
На реальных проектах цены редко заводят вручную — они приходят из 1С обменом по CommerceML. В учётной системе ведут виды цен, которые выгружаются на сайт и раскладываются по типам цен каталога.
Ключевой момент — сопоставление: вид цены в 1С должен корректно ложиться в нужный тип цены на сайте. Если сопоставление неверное, оптовая цена попадёт в розничный тип и «утечёт» гостям. Поэтому настройку обмена цен всегда проверяют после первой выгрузки. Стабильность и безопасность обмена данными — отдельная тема, которую мы затрагиваем в материале про работу с данными через D7 ORM.
Сочетание с правилами скидок
Типы цен часто работают вместе со скидками. Тип цены задаёт базовую цену для группы, а правила работы с корзиной добавляют объёмные, накопительные и акционные скидки поверх. Дилер видит дилерскую цену, а при заказе от определённого объёма получает дополнительную скидку.
Здесь важно не наложить снижения дважды по ошибке — например, когда и тип цены уже льготный, и скидка добавляется сверх. Логику скидок и типов цен продумывают вместе, чтобы итоговая цена была предсказуемой и выгодной ровно настолько, насколько задумано бизнесом.
Настройка пошагово
- Заведите типы цен. Розница, опт, дилер и другие под ваши сегменты.
- Опишите группы. Оптовики, дилеры, VIP — под аудиторию.
- Настройте права. Кто видит и покупает по каждому типу цены.
- Задайте приоритеты. Чтобы при пересечении групп показывалась нужная цена.
- Закройте оптовые цены. Снимите просмотр у «Всех» для закрытых типов.
- Настройте обмен. Сопоставьте виды цен 1С с типами цен сайта.
- Проверьте под группами. Зайдите гостем, оптовиком, дилером и сверьте цены.
Частые ошибки
- Одна цена на всех. Не используют типы цен, опт и розница мешаются.
- Неверные приоритеты. Дилер видит оптовую цену вместо дилерской.
- Утечка закрытых цен. Гость видит оптовую цену в каталоге или разметке.
- Ошибка сопоставления обмена. Вид цены из 1С ложится не в тот тип.
- Забыли про предложения. Цены заведены на товаре, а не на вариантах.
- Двойные скидки. Тип цены и скидка снижают цену дважды неожиданно.
- Не проверили под группами. Тестируют только под администратором, а не под клиентами.
Чек-лист проверки
- Типы цен заведены. Под все нужные сегменты бизнеса.
- Группы настроены. Клиенты распределены по группам корректно.
- Права выставлены. Каждый тип виден и доступен нужным группам.
- Приоритеты работают. При пересечении групп показывается верная цена.
- Закрытые цены скрыты. Гость не видит оптовых цен нигде на сайте.
- Обмен сопоставлен. Виды цен из 1С раскладываются по правильным типам.
- Проверено под группами. Гость, оптовик, дилер видят каждый свою цену.
Вывод
Множественные цены в 1С-Битрикс — это связка типов цен и групп пользователей. Типы цен хранят у товара несколько цен параллельно, группы сегментируют покупателей, а права и приоритеты определяют, кто какую цену видит и покупает. Так один каталог обслуживает и розницу, и опт, и дилеров, показывая каждому его условия.
Главное — аккуратно настроить приоритеты, закрыть оптовые цены от гостей, правильно сопоставить обмен цен из 1С и обязательно проверить витрину под разными группами. Тогда ценообразование становится точным инструментом B2B, а не источником ошибок, из-за которых клиент видит не ту цену.