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

Требования к товарному фиду

Фид обязателен для обоих путей интеграции (SDK и API). По нему ShopStory связывает товары со стримами и mini-player.

Базовые требования

  1. Формат: XML или YML.
  2. Доступ: публичный HTTPS URL без авторизации.
  3. Идентификатор товара (id): стабильный и неизменный во времени.
  4. В каждом товаре должен быть vendorCode с артикулом, который виден на карточке товара на сайте.
  5. Кодировка: UTF-8.

Обязательные поля товара

ПолеНазначение
idВнутренний стабильный идентификатор товара (может быть ID CMS)
vendorCodeАртикул товара, который видит пользователь на сайте
nameНазвание товара
urlСсылка на карточку товара
image / pictureОсновное изображение товара
priceТекущая цена
Важно про артикулы с сайта

Если в id используются внутренние идентификаторы CMS (например, ID Битрикса), это нормально. Но vendorCode обязан содержать именно сайтовый артикул (SKU), по которому команда планирует товары в эфирах.

Критичные ошибки

Проверьте перед отправкой

Эти ошибки приводят к потере данных и некорректной работе интеграции. Убедитесь, что ваш фид не содержит ни одной из них.

ОшибкаПоследствие
Нестабильный id или vendorCodeПотеря связки товара со стримами и mini-player
Отсутствует vendorCode (сайтовый артикул)Товары не находятся по артикулам при планировании эфиров
Недоступный URL фидаНет обновления каталога товаров
Битые ссылки на изображенияНекорректные карточки товара в стриме
Невалидный XML/YMLОшибки парсинга и неполная загрузка

Пример для YML (offer)

Сейчас (не хватает vendorCode):

<offer id="2858" available="true">
<name>Мультиактивная SOS-маска...</name>
<price>536</price>
...
</offer>

Нужно:

<offer id="2858" available="true">
<vendorCode>6327</vendorCode>
<name>Мультиактивная SOS-маска...</name>
<price>536</price>
...
</offer>

vendorCode — стандартный тег YML (Яндекс Маркет), обычно соответствует полю «Артикул» в CMS/ERP.

Рекомендуемые поля

ПолеЗачем
old_price / oldpriceОтображение скидки
availabilityКорректное состояние товара
brand / vendorФильтрация и аналитика
categoryId / product_typeГруппировка и навигация

Минимальный XML-пример

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:g="http://base.google.com/ns/1.0">
<channel>
<item>
<g:id>airwrapcomplete</g:id>
<title>Фен-стайлер Dyson Airwrap HS01 Complete</title>
<link>https://example.ru/hairdryer/dyson/airwrapcomplete</link>
<g:image_link>https://cdn.example.ru/product/airwrap.jpg</g:image_link>
<g:price>29199.00 RUB</g:price>
<g:sale_price>24999.00 RUB</g:sale_price>
<g:availability>in_stock</g:availability>
</item>
</channel>
</rss>

Проверка перед отправкой фида

  1. curl -I <feed-url> возвращает HTTP 200.
  2. XML/YML валиден.
  3. Все ссылки на изображения и карточки товаров открываются без авторизации.
  4. Артикул на карточке товара совпадает со значением vendorCode в фиде.

Связанные разделы