Перейти к содержимому

Товарные данные: модель, атрибуты и качество

TL;DR: карточка товара — это не «картинка и название», а модель: товар → SKU → вариант с типизированными атрибутами, справочниками, медиа и связями. Каналы сбыта (витрина, фиды, маркетплейсы) потребляют из неё разные подмножества, поэтому полнота данных проектируется под каналы до наполнения, а не после.

Страница описывает структуру товарных данных и правила их качества. Она не описывает, чем карточка продаёт (тексты и конверсия — в каталоге и checkout) и что физически происходит с товаром на складе (см. исполнение и возвраты).

Базовое разграничение трёх уровней:

  • Товар (product) — логическая единица каталога, которой покупатель оперирует в поиске и навигации: «Худи, серое/чёрное». Товар группирует варианты и стоит в ценовой категории, бренде, налоговой группе.
  • SKU — артикул учёта: единица закупки, складской позиции и отчётности. Один товар обычно раскладывается на несколько SKU.
  • Вариант — продаваемая комбинация характеристик (цвет + размер + вес). Витрина продает и резервирует варианты; в простых магазинах «товар» и «вариант» совпадают, но модель лучше сразу закладывать раздельно — обратная миграция дороже.

В WooCommerce уровни реализуются товаром, вариациями и атрибутами; платформенные особенности — в стеке WooCommerce. Для каталогов со сложной структурой (несколько брендов, каналы, локали) используется PIM: структура каталога Akeneo — товарные модели и варианты как отдельные сущности: catalog structure.

Атрибуты бывают трёх типов по роли:

ТипПримерКто владеетНа что влияет
ИдентификационныеАртикул, GTIN/EAN, брендУчётная система, каталожная командаУчёт, фиды, поиск поставщика
НавигационныеКатегория, цвет, размер, материалКаталожная командаФильтры, рубрики, SEO
РегуляторныеСрок годности, страна происхождения, сертификаты, вес/габаритыНормоконтроль, бухгалтерияМаркетплейсы, доставка, маркировка

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

Справочники проектируются до массового наполнения с простой проверкой: для каждого ссылочного атрибута известен владелец справочника и порядок его изменения. Частый дефект — два независимых справочника бренда или единиц измерения в PIM и в платформе; расхождение всплывает на фильтрах и в фидах, а чинится с полным пересмотром карточек.

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

Три отдельных вопроса, которые часто путают:

  • Вариант — комбинация характеристик, продаётся по одной цене.
  • Упаковка — «шт/комплект/коробка»: та же физическая позиция, другой фасовочный SKU, своя цена и свой бар-код.
  • Кратность и минимальное лото — сколько минимальных единиц продается разом; актуально в B2B и на маркетплейсах.

Правило: упаковки — самостоятельные SKU со ссылкой на базовый размер, а не сайт-хак «продать 10 штук», потому что у упаковки своя цена, габариты и остаток.

Медиа (фото, видео, PDF-инструкции) привязываются к уровню товара, а вариант получает свою миниатюру и, при необходимости, собственные фото. Связи делятся по назначению: сопутствующие (в basket-рекомендации), аналоги (замена по цене/толку при отсутствии), заменители (обратная связь: «этот товар — замена снятого с продажи»). Тип связи хранится направленно, потому что «аналогом A является B» не равняется «заменой B является A».

Один товар потребляют три группы каналов, и каждой нужны разные данные. Матрица «канал → что нужно» проектируется заранее: она определяет, какие атрибуты обязательны, а какие — дополнительные.

КаналЧто обязательноЧто желательноЧастые дефекты
ВитринаФото, цена, наличие, описательный текст, вариантыУТП, видео, сопутствующиеТонкие описания без ключевых характеристик
Фиды (SEO/маркетинг)GTIN, бренд, категория по таксономии фида, вес/габариты, цена, наличиеДополнительные атрибуты фида, промо-подписиАтрибуты не соответствуют таксономии фида; пустой GTIN
МаркетплейсыGTIN/EAN, полная характеристика по внутренней модели площадки, сертификаты, вес/габаритыЛокализованные описания, контент-рейтингАтрибуты не соответствуют внутренней модели площадки; неполные сертификаты
B2B-кабинетТехнические характеристики, единицы измерения, кратности, аналогиPDF документация, сертификатыТехнический лист неполный; кратности не совпадают с учётом

Качество проверяется регулярными правилами, а не «на глаз»:

  • Полнота атрибутов — % карточек, где заполнены обязательные атрибуты канала; ниже порога канал не получает товар.
  • Уникальность SKU — один артикул = одна позиция; дубли SKU ломают остатки и отчётность.
  • Справочная целостность — нет «сиротских» ссылок: бренд не из списка, категория вне таксономии, EAN занят другим товаром.
  • Согласованность каналов — цена и наличие, которые видит витрина, и то, что уходит в фид и на маркетплейс, не расходятся больше допустимой задержки обмена (см. обзор контура).

Правила полноты и дубли SKU заводятся как отчёты в PIM или платформе, запускаются по расписанию и требуют владельца, который разбирает отчёты.

Второй слой качества — сохранение качества во времени, без которого первая чистка быстро обесценивается:

  • Новые товары проходят проверку обязательных атрибутов канала до публикации, а не размечаются после.
  • Изменения в справочниках проходят ревизию: удаление бренда или переименование категории пересчитывает все карточки, которые на них ссылаются.
  • Потоки новых требований от каналов пополняют data-quality-правила: каждая новая интеграция приносит свои обязательные поля, и они входят в отчёт полноты, а не остаются неявными требованиями.

Правило практик: отчёт полноты без владельца и периодичности — это не контроль, а украшение; назначайте исполнителя и срок разбора.

PIM управляет контентом карточки: атрибутами, медиа, связями, канальными представлениями. Цена и доступный к продаже остаток в PIM не живут — их источники находятся в учётной системе, а PIM получает их либо как ссылку (см. матрицу source of truth в обзоре контура), либо вообще не касается. Практическое следствие: товар, полностью оформленный в PIM, всё равно не появится в продаже, пока учёт не передал цену и остаток, и наоборот — цена в учёте без карточки не создаёт товарную позицию.

B2C-карточка оптимизируется под решение покупателя: выгоды, фото, характеристики в человеческой формулировке. B2B-карточка сохраняет всё это и добавляет слой техники: полные технические характеристики в нормируемых единицах, сертификаты и декларации соответствия, аналоги и взаимозаменяемость, кратности и минимальные партии. В B2B кроме общего каталога используется персональный каталог: состав и значения атрибутов, а главное — цены, формируются по контрагенту (матрица «прайс-лист × клиент» живёт в учётной системе, не в PIM). Различия B2B-модели в целом описаны в B2B-портале и опте.

  • Уровни «товар / SKU / вариант» разграничены и не смешиваются при наполнении.
  • Справочники для ссылочных атрибутов заведены до массового наполнения.
  • Матрица «канал → обязательные атрибуты» согласована с командой наполнения.
  • Маппинг категорий ведётся как данные, а не как ежемесячная ручная правка фидов.
  • Отчёты полноты, дубли SKU и справочная целостность запланированы как периодический процесс, а не разовая чистка.
  • Владелец контента отличен от владельца цен и остатков, и передача между ними описана.

Проверка занимает десятки минут, но снимает месяцы переделок наполнения при подключении второго канала сбыта.