Главная · Блог · Что такое YML-фид и как сделать из него каталог для чат-бота

Что такое YML-фид и как сделать из него каталог для чат-бота

· Команда ЧБТ · Каталог, Магазин

YML-фид — это файл со всеми товарами магазина в одном стандартном формате: название, цена, фото, наличие, ссылка. Его придумал Яндекс для Маркета, а сейчас его отдают почти все платформы рунета — и почти все сервисы его понимают: реклама, агрегаторы, маркетплейсы, чат-боты. Разбираем, как устроен фид, где взять на него ссылку и какие ошибки чаще всего мешают ему работать — на примере того, как его читает ЧБТ.

YML простыми словами

YML (Yandex Market Language) — XML-файл по постоянной ссылке, вида https://shop.ru/export/yml.xml. Магазин обновляет его сам, а сервисы периодически перечитывают. Плюс в том, что каталог не нужно вбивать руками в каждый сервис: поменяли цену на сайте — через какое-то время она поменяется везде, где подключён фид.

Для чат-бота фид — источник того, что бот знает о товарах: что есть, сколько стоит, как выглядит и куда вести покупателя.

Из чего состоит фид

Внутри — магазин, его валюты, категории и список предложений. Одно предложение (offer) — одна позиция прайса:

<offer id="1001" available="true" group_id="77">
  <name>Пуховик женский, синий, 46</name>
  <url>https://shop.ru/p/pukhovik-77</url>
  <price>8490</price>
  <oldprice>9990</oldprice>
  <currencyId>RUR</currencyId>
  <categoryId>12</categoryId>
  <picture>https://shop.ru/img/77-1.jpg</picture>
  <vendor>Северный ветер</vendor>
  <description>Тёплый пуховик до −25…</description>
  <param name="Цвет">синий</param>
  <param name="Размер">46</param>
</offer>
  • id — уникальный номер позиции.
  • available — в наличии или нет.
  • group_id — общий номер для вариантов одной модели (цвета, размеры).
  • name — название; у типа vendor.model вместо него производитель и модель.
  • url, price, oldprice, currencyId — ссылка на товар, цена, старая цена, валюта.
  • picture — фото, можно несколько.
  • param — характеристики «название — значение».

Где взять ссылку на фид

Почти у всех платформ фид включается в настройках экспорта или в разделе для Яндекс Маркета:

  • 1С-Битрикс — модуль экспорта в Яндекс Маркет (профиль выгрузки YML).
  • InSales, Ecwid, Tilda, OpenCart, Shop-Script, CS-Cart — встроенная выгрузка для Маркета или приложение-экспорт.
  • МойСклад, RetailCRM — выгрузка каталога по ссылке.
  • WooCommerce, Shopify — через плагины или приложения фида.

Если платформа отдаёт не YML, а фид Google Merchant (XML) или CSV по ссылке, это тоже подходит большинству сервисов. ЧБТ определяет формат по содержимому файла, а платформу спрашивает только чтобы подсказать, где искать ссылку.

Варианты товара: зачем нужен group_id

YML плоский: каждый размер и цвет — отдельный offer. Если у вариантов одной модели общий group_id, сервис понимает, что это один товар в разных исполнениях. В ЧБТ из такой группы собирается один товар с вариантами — и бот на «пуховик 46 синий» покажет одну карточку, а не шесть похожих.

Нет group_id — каждый offer станет отдельным товаром. Это не ошибка, просто магазин сам не различает модель и её исполнения.

Частые ошибки в фидах

  • Нет атрибута available. Многие выгрузки его не ставят. ЧБТ в таком случае пишет наличие «неизвестно» и не говорит покупателю «нет в наличии» — но и подтвердить наличие бот не сможет.
  • Чужая валюта. ЧБТ принимает рубли, тенге и сумы. Предложение в другой валюте пропускается с пометкой, а не пересчитывается по курсу.
  • Фид за паролем или доступен только из админки — сервис его не скачает. Нужна публичная ссылка.
  • Слишком большой фид. У ЧБТ лимит — 20 МБ и 60 секунд на загрузку; сжатый gzip подходит.
  • Нет цены или цена 0 — такой товар попадёт в список с ошибкой и не будет предлагаться.
  • Фото по относительному пути вроде /img/1.jpg — нужны полные адреса с https.

Как подключить фид к боту в ЧБТ

  1. «Маркетплейсы» → «Интернет-магазин»: выберите платформу и вставьте «Ссылка на товарный фид», нажмите «Подключить магазин».
  2. Через несколько минут товары появятся в «Продажи» → «Каталог» черновиками. Проверьте счётчики «с ошибками» и откройте пару товаров.
  3. Опубликуйте товары, которые бот должен предлагать.
  4. Покупателю каталог показывает ИИ-продавец: «Продажи» → «Настроить продажи».

ЧБТ перечитывает фид, когда данным больше шести часов. Если цену поменяли срочно, нажмите «Обновить сейчас» на карточке магазина — не чаще раза в две минуты. Из фида приходит до 20 фото, до 30 характеристик, название до 191 символа и описание до 4000.

Подключить фид и опубликовать товары можно на любом тарифе. Подбор товаров покупателю делает ИИ-продавец — он доступен с Базового, 650 ₽ в месяц за бота.

YML, Google Merchant или CSV: что выбрать

ФорматКогда подходитЧто важно
YMLИнтернет-магазин на любой популярной платформе рунетаЕсть фото, характеристики, варианты через group_id
Google Merchant (XML)Магазин на Shopify, WooCommerce или с уже настроенной рекламой в GoogleТоже с фото и ценами; ЧБТ разбирает его автоматически
CSV по ссылкеКаталог ведётся в таблице, которую можно опубликовать по ссылкеЧитается по правилам импорта файлом
Файл CSV/TSV/JSONТоваров немного, сайта нетЗагрузка вручную, до 5 МБ и 50 000 строк, без фото

Если у платформы есть и YML, и Google Merchant, берите YML: в рунете он поддерживается полнее, и выгрузки обычно аккуратнее заполнены.

Как проверить фид перед подключением

  1. Откройте ссылку в браузере без входа в админку. Если видите XML с тегами <offer> — фид публичный. Если просит пароль или показывает страницу входа — сервисы его не скачают.
  2. Посчитайте предложения. Поиском по странице найдите <offer — их число должно примерно совпадать с числом товаров на сайте.
  3. Проверьте пару товаров: есть ли цена, валюта, фото с полным адресом https, атрибут available.
  4. Посмотрите вес. Если файл больше 20 МБ, попросите платформу отдавать его в gzip или выгружать только нужные категории.

Как часто обновляется каталог

Сам фид обновляет ваша платформа — у одних раз в час, у других раз в сутки или по кнопке в админке. ЧБТ перечитывает фид, когда данным больше шести часов, а кнопка «Обновить сейчас» на карточке магазина срабатывает не чаще раза в две минуты. Значит, цена в боте может отставать от сайта на время обновления фида плюс до шести часов. Если цены меняются часто, настройте на платформе частое обновление фида и после крупных изменений нажимайте «Обновить сейчас».

Когда фид не нужен

Если товаров десяток и сайта нет, фид заводить незачем: каталог загружается файлом CSV из таблицы — с колонкой «артикул», с предпросмотром и без дублей при повторной загрузке. Фото при импорте файлом не загружаются, поэтому карточки будут текстовыми. Для продавцов Wildberries каталог берётся из карточек площадки по API-ключу — подробнее на странице каталога товаров.

Ещё в блоге