Торговое предложение (SKU) — это конкретная продаваемая вариация товара: футболка → красная, размер L. В 1С-Битрикс вариации хранятся в отдельном инфоблоке SKU, привязанном к каталогу, а различаются набором свойств. Разберём, как правильно завести свойства «Цвет» и «Размер» и добавить по ним предложения, чтобы они корректно выводились в карточке товара.
Что нужно подготовить заранее
Торговые предложения работают только тогда, когда у инфоблока каталога включена привязка к отдельному инфоблоку SKU. Проверьте это в Контент → Инфоблоки → Типы инфоблоков → Каталог: на форме товарного инфоблока, во вкладке «Торговый каталог», поле «Тип товаров» должно стоять в значении «Товары с торговыми предложениями», а ниже — указан связанный инфоблок предложений.
Если магазин создан мастером или из готового решения (например, «Аспро» или типового «Магазина 24»), инфоблок SKU обычно уже создан автоматически и называется Торговые предложения (aspro_next_offers) или похоже. Тогда отдельно ничего создавать не нужно — переходите к настройке свойств.
Создаём свойства «Цвет» и «Размер»
Откройте инфоблок торговых предложений и перейдите в Настроить → вкладка «Свойства». Добавьте два свойства с типом «Список» (Enum). Именно тип «Список» даёт готовый набор значений, из которых менеджер выбирает вариацию, и по нему же строится выбор на витрине.
| Символьный код | Название | Тип | Значения |
|---|---|---|---|
COLOR_REF (или CML2_ATTRIBUTES) | Цвет | Список | Красный, Синий, Чёрный… |
SIZES_SHOES / SIZE | Размер | Список | S, M, L, XL… |
В настройках каждого свойства заполните список значений (кнопка добавления пустых строк внизу вкладки значений) и включите флажок «Обязательное», если без вариации товар продавать нельзя. Для «Цвета» удобно сразу задать привязку файла-образца или HEX через настройки highload-блока, если вы используете умный фильтр по цвету.
Добавляем предложения в карточке товара
Откройте карточку товара на редактирование. Внизу формы, под основными полями, появится блок «Торговые предложения» с таблицей вариаций. Нажмите «Добавить торговое предложение» — откроется строка (или отдельная карточка) со свойствами «Цвет» и «Размер».
- Выберите значения свойств — например,
Цвет = Красный,Размер = L. - Задайте название предложения (обычно генерируется автоматически из товара и свойств, например «Футболка, Красный, L»).
- Укажите цену на вкладке «Цены» и количество на вкладке «Складской учёт».
- При необходимости прикрепите собственную картинку вариации (фото красной футболки).
Повторите для каждой комбинации, которую реально продаёте. Сохраните товар. Артикул (CATALOG.QUANTITY, поле «Артикул») задаётся у каждого предложения отдельно — это удобно для обмена с 1С и учёта остатков.
Цены, остатки и обмен с 1С
Цена и остаток в схеме с предложениями хранятся на уровне SKU, а не товара-родителя. Товар в такой конфигурации становится «контейнером» без собственной цены: покупатель всегда выбирает конкретное предложение, и именно его цена и наличие попадают в корзину.
- Цены. Если используете несколько типов цен (розница, опт), они задаются у каждого предложения на вкладке «Цены».
- Остатки. Количество указывается по каждому SKU; при включённом складском учёте — в разрезе складов.
- Обмен с 1С. При стандартном обмене CommerceML вариации в 1С («Характеристики номенклатуры») сопоставляются с торговыми предложениями Битрикса по свойству
CML2_LINKи уникальным XML_ID. Заводить SKU вручную и одновременно грузить из 1С — прямой путь к дублям.
Вывод выбора вариаций на витрине
Чтобы селекторы цвета и размера появились в карточке, комплексному компоненту catalog (или catalog.element) нужно передать эти свойства. В настройках компонента откройте раздел «Настройки товаров и предложений» и в поле «Свойства торговых предложений» (параметр OFFER_TREE_PROPS) выберите COLOR_REF и SIZE.
Именно параметр OFFER_TREE_PROPS отвечает за построение «дерева» выбора: по нему компонент рисует кнопки-переключатели. Свойства, не указанные здесь, на витрине выбирать нельзя, даже если предложения по ним заведены. Дополнительно проверьте:
- в списке товаров (
catalog.section) для показа кружков цвета включите вывод свойств предложений в параметреPROPERTY_CODE_MOBILE/ настройках блока предложений; - после изменения настроек — сбросьте кэш компонента (
Настройки → Кэшированиеили общая очистка кэша).
Типичные ошибки и как их избежать
- Свойства заведены в товарном инфоблоке. Предложения не различаются — переносите свойства в инфоблок предложений.
- Не заполнена цена SKU. Предложение без цены на витрине показывается как недоступное или скрывается — проверьте вкладку «Цены» у каждой вариации.
- Не выбраны свойства в
OFFER_TREE_PROPS. Вариации есть в админке, но выбор на сайте не появляется. - Дубли после обмена с 1С. Ручные SKU конфликтуют с выгруженными — согласуйте источник данных.
- Не сброшен кэш. После правок настроек изменения не видны до очистки кэша каталога.
Если вариаций много и все комбинации «цвет × размер» продаются, вручную заводить их долго — в Битриксе есть генерация торговых предложений, которая создаёт весь набор SKU по выбранным свойствам одной операцией.
Итог
Схема добавления вариаций в 1С-Битрикс сводится к трём шагам: связать товарный инфоблок с инфоблоком предложений, завести в предложениях свойства «Цвет» и «Размер» типа «Список», затем добавить SKU с ценами и остатками и передать свойства в компонент через OFFER_TREE_PROPS. Держите источник данных единым (руками или из 1С), и вариации будут корректно выбираться на витрине и уходить в заказ.
Если каталог большой, обмен с 1С «спорит» с ручными правками или выбор вариаций работает нестабильно, мы настроим инфоблоки, свойства и компоненты каталога под ваш магазин и наладим корректную выгрузку торговых предложений из 1С.
Частые вопросы
Чем торговое предложение отличается от товара?
Товар — это «контейнер» (модель), а торговое предложение — конкретная продаваемая вариация с собственной ценой, остатком и артикулом. Покупатель выбирает именно предложение: определённый цвет и размер.
В каком инфоблоке заводить свойства «Цвет» и «Размер»?
В инфоблоке торговых предложений (SKU), а не товаров. Только свойства предложений различают вариации между собой и формируют выбор на витрине.
Какой тип свойства выбрать для цвета и размера?
Тип «Список» (Enum) — он даёт фиксированный набор значений для выбора и корректно строит дерево вариаций в карточке. Для цвета можно дополнительно привязать образцы или HEX через highload-блок.
Где задаются цена и остаток у вариации?
На уровне самого торгового предложения: цена — на вкладке «Цены», количество — на вкладке «Складской учёт». Товар-родитель в этой схеме собственной цены не имеет.
Почему выбор цвета и размера не появляется на сайте?
Чаще всего свойства не переданы в параметр OFFER_TREE_PROPS настроек компонента каталога, либо не сброшен кэш. Проверьте оба пункта, вариации при этом уже должны существовать в админке.
Как быть, если каталог грузится из 1С?
Свойства и вариации приедут обменом CommerceML как характеристики номенклатуры. Создавать SKU вручную в этом случае не нужно — иначе появятся дубли; достаточно проверить символьные коды свойств после первой выгрузки.
Можно ли создать все комбинации цвет×размер сразу?
Да, для этого есть функция генерации торговых предложений: она создаёт весь набор SKU по выбранным свойствам одной операцией, что экономит время при большом ассортименте.
Можно ли задать отдельное фото для каждой вариации?
Да, у каждого торгового предложения есть собственные поля картинок (детальная и анонс). Так для красной футболки покажется красная фотография при выборе цвета.
Поможем с настройкой и поддержкой 1С-Битрикс: Управление сайтом
Поможем с настройкой, доработкой и поддержкой 1С-Битрикс: Управление сайтом.