Товарный фид Яндекса: как сделать YML для Товаров и Директа

Как собрать YML-фид для Яндекс Товаров и Директа и проверить каждый этап от выгрузки каталога до обработки файла.

7 ноября 2026 · LidFly · Правила справки Яндекс Товаров, Яндекс Директа и схемы API сверены 07.11.2026

Товарный фид Яндекса - это YML-файл с каталогом магазина: цены, наличие, ссылки и фото. Его публикуют по постоянному адресу на своём сайте, затем регистрируют в Яндекс Товарах и отдельно в библиотеке фидов Директа. Чаще всего путаница начинается после загрузки: ошибок XML нет, а товары в поиске так и не появились. Файл может ещё обрабатываться, цены могут расходиться с сайтом, магазин может не пройти проверку качества, и в каждом случае чинить нужно своё.

Во встроенном чате LidFly или в Claude, ChatGPT и Codex по MCP каждый этап проверяется по данным, а не по памяти. Для магазина на конструкторе LidFly сервис читает профили фидов, состав и состояние файла. В Яндекс Товарах он проверяет источники домена, показывает план, после вашего текстового подтверждения запускает загрузку и перечитывает статус обработки. В Директе проверяет регистрацию URL, число позиций и связь с кампаниями. Если магазин на внешней CMS, выгрузку готовит владелец сайта или модуль этой CMS.

Проверь готовность товарного фида моего магазина к загрузке в Яндекс Товары.
Сайт: [домен]. Источник: [сайт LidFly / моя CMS].
URL фида: [ссылка, если уже есть]. Регионы продажи: [регионы].
Для сайта LidFly прочитай профили фидов, состав выбранного профиля
и его состояние. Прочитай фиды этого домена в Яндекс Товарах.
Покажи таблицу: что проверено, что ещё неизвестно, что нужно исправить.
Если нужен новый профиль или загрузка, сначала предложи точный план.
Выполни изменения только после моего отдельного подтверждения
и затем проверь результат. Статус загрузки не называй модерацией.
Товарный фид Яндекса: бумажный каталог со светильником на ленте перед закрытой витриной между загрузкой файла и показом товаров

Что такое товарный фид и куда его загружать

Товарный фид Яндекса в формате YML (Yandex Market Language) - это структурированный файл на основе XML, в котором магазин передаёт площадкам срез каталога: категории, названия, цены, валюту, наличие, ссылки и фото (справка о формировании фида, проверено 07.11.2026). Один каталог обычно питает два разных канала:

Публикация файла на сайте, регистрация URL, техническая обработка и показ в выдаче - разные события, и каждое подтверждается в своём месте:

Этап Где смотреть Что доказано Что ещё неизвестно
1. Публикация файла URL фида; на сайте LidFly - профиль и проверка собранного файла Файл собран и отдаётся по HTTPS Добавлен ли URL в кабинет Яндекса
2. Регистрация URL Список фидов в Яндекс Товарах или «Библиотека → Фиды» в Директе Ссылка привязана к домену или рекламному аккаунту Прошла ли загрузка без ошибок чтения
3. Обработка файла processStatus=OK в Товарах (API статуса) или DONE в Директе Платформа скачала и разобрала XML Прошли ли карточки проверку качества и цен
4. Модерация и показ «Ошибки и рекомендации» в Товарах; кампании в Директе Доля допущенных товаров (о фидах) и активность рекламы Фактические клики и заказы в Метрике
Два маршрута товарных данных из одного каталога
Один каталог, два маршрута: модерация в Товарах и кампания в Директе проверяются отдельно от загрузки файла.

В чате LidFly напишите: «Покажи, на каком этапе мой фид». Сервис прочитает профиль магазина и список фидов домена в Товарах (или регистрацию фида в Директе) и отделит подтверждённое от того, что остаётся проверить в кабинете. Без LidFly откройте URL фида в браузере, а затем пройдите по строкам таблицы: дата и статус обработки видны в кабинете Товаров или Директа.

Важно: успешная загрузка не означает пройденную модерацию и не запускает показы.

Как сделать фид: CMS, каталог LidFly или ручной YML

Выбирайте источник, который обновляется вместе с каталогом. Цены, остатки и характеристики ИИ берёт из вашей системы и проверяет их там же, а не сочиняет.

Источник Как создаётся YML Когда подходит Ограничение
CMS (1С-Битрикс, Tilda, WooCommerce, OpenCart) Штатный экспорт каталога или проверенный модуль выгрузки Основной способ для действующего магазина на своей CMS Функция зависит от версии и тарифа CMS; подключение Директа не даёт LidFly доступа к базе внешней CMS
Магазин на LidFly Commerce Профили товарных фидов сайта с предпросмотром состава Каталог, профиль YML и загрузка в Товары в одной системе Только для магазинов на конструкторе сайтов LidFly
Ручной YML Сборка XML по шаблону в текстовом редакторе Небольшой каталог, который редко меняется (способы) Любую смену цены или остатка приходится вносить в файл вручную

Не переименовывайте таблицу Excel (.xlsx, .csv) в .yml: смена расширения не превращает прайс-лист в XML-структуру.

Типовой сценарий 1, часть 1: профиль фида на сайте LidFly (данные условные). В условном магазине настольных светильников lamp-example.ru на LidFly Commerce 48 товаров, часть ещё в черновиках. Владелец просит подготовить выгрузку для Яндекс Товаров:

Подготовь фид опубликованных светильников моего магазина lamp-example.ru на LidFly для Яндекс Товаров.
Прочитай существующие профили и покажи предпросмотр: какие позиции войдут в выгрузку, какие исключены и почему.
Публикацию выполняй только после моего подтверждения.

ИИ читает профили фидов и показывает предпросмотр: например, из 48 товаров в фид войдут 43, а 5 отсеются: черновики и карточки без цены или фото. Если рабочий профиль уже есть, пересоздавать его не нужно. Получив текстовое подтверждение владельца на состав и URL https://lamp-example.ru/feeds/yandex-products.xml, сервис публикует профиль и проверяет собранный файл.

Без LidFly включите экспорт YML в настройках вашей CMS (справка о формировании, проверено 07.11.2026), откройте сгенерированный URL и проверьте обновление файла после одной тестовой правки цены.

Правило актуальности: закрепите один источник данных и ответственного, чтобы цены в YML не отставали от корзины сайта.

Пример YML: какие данные проверить в каждом товаре

Ниже - компактный учебный YML-файл для Яндекс Товаров на одной позиции нашего условного магазина светильников. Названия, цены и домен example.com выдуманы для обучения: перед реальной отправкой замените ссылки на свои и обновите date.

<?xml version="1.0" encoding="UTF-8"?>
<yml_catalog date="2026-11-07T10:00:00+03:00">
  <shop>
    <name>Учебный магазин</name>
    <company>Учебный продавец</company>
    <url>https://example.com/</url>
    <currencies>
      <currency id="RUR" rate="1"/>
    </currencies>
    <categories>
      <category id="1">Настольные светильники</category>
    </categories>
    <offers>
      <offer id="1001" available="true">
        <name>Настольный светильник Лист, белый</name>
        <url>https://example.com/catalog/lampa-list</url>
        <price>2490</price>
        <currencyId>RUR</currencyId>
        <categoryId>1</categoryId>
        <picture>https://example.com/images/lampa-list.jpg</picture>
        <description>Настольный светильник с белым плафоном.</description>
      </offer>
    </offers>
  </shop>
</yml_catalog>

Сравните формат времени в корневом теге. Справка Яндекс Товаров требует RFC 3339 с часовым поясом (2026-11-07T10:00:00+03:00), не старше 10 дней и не в будущем (сформировать фид, проверено 07.11.2026). А справка Яндекс Директа описывает формат YYYY-MM-DD hh:mm (требования к YML в Директе, проверено 07.11.2026):

<yml_catalog date="2026-11-07 10:00">

Поэтому один каталог магазина может снабжать оба сервиса, но совместимость конкретного файла проверяют отдельно либо делают две выгрузки.

В таблице разобраны поля нашего учебного примера. Это не полный перечень обязательных тегов: для других категорий и типов оферов набор отличается.

Поле нашего примера Назначение и правила в справке Что проверить в файле
offer id Устойчивый ID варианта. Обязателен в упрощённом типе Директа (требования Директа); в Товарах должен оставаться стабильным (рекомендации, проверено 07.11.2026) Не меняется при новой выгрузке и не дублируется
name Название конкретного варианта. Обязательно для упрощённого офера Директа (у vendor.model другие поля) Отражает модель и цвет без капслока и промоакций
url Ссылка на карточку товара; обязательна в упрощённом типе Директа Ведёт на конкретный товар, а не на главную магазина
price и currencyId Цена покупки и валюта (советы по качеству, проверено 07.11.2026); в Директе обязательность зависит от формата Точно совпадают с карточкой и корзиной на сайте
categoryId и categories Связь с разделом каталога; categoryId обязателен в упрощённом офере Директа Категория объявлена в блоке <categories>
picture Прямая ссылка на фото товара Открывается картинка без редиректа на HTML и водяных знаков
available Фактическое наличие (true / false, ошибки фида, проверено 07.11.2026) Не ставить true товарам, которые нельзя купить
date Момент актуальности выгрузки (RFC 3339 в Товарах, YYYY-MM-DD hh:mm в Директе) Обновляется только вместе с реальными данными каталога
description Характеристики товара без рекламных лозунгов Спецсимволы экранированы (&amp; вместо сырого &)
Какие данные карточки товара передаются в YML-фид
Каждое поле в элементе offer должно совпадать с тем, что покупатель видит на странице товара и в корзине.

В LidFly по запросу «Объясни, почему позиции исключены из фида» предпросмотр и проверка собранного файла покажут список карточек и причины отсева, чтобы владелец поправил каталог и повторил проверку. Без LidFly откройте свой XML в редакторе, сверьте 3-5 карточек с сайтом и проверьте экранирование &amp;.

Как проверить фид до загрузки: четыре слоя

Синтаксически верный XML не спасёт товары от отказа, если в нём старая цена или битая ссылка. Проверяйте фид на четырёх уровнях:

  1. Файл: XML читается парсером без ошибок, кодировка UTF-8, все offer id уникальны, а categoryId согласованы со списком категорий (валидация в Директе, проверено 07.11.2026).
  2. Доступ: URL отдаёт XML, а не HTML-ошибку или окно входа; карточки и фото открываются. Для загрузки через LidFly в Товары нужен публичный HTTPS URL без логина и пароля в адресе. Это требование инструмента LidFly: в веб-кабинете Яндекса фид с авторизацией описан как допустимый вариант.
  3. Содержание: цены, валюта, наличие и названия совпадают с карточкой и корзиной сайта (работа с ошибками, проверено 07.11.2026).
  4. Назначение: учтены правила выбранного канала; нет неподходящих тегов от чужого экспорта (особенности фида в Товарах, проверено 07.11.2026).

По запросу «Что мешает отправить профиль фида?» LidFly выполняет предпросмотр и проверку собранного файла. Проверка идёт по файлу, собранному на стороне LidFly, и не показывает, как его скачает робот Яндекса. Без LidFly проверьте файл XML-парсером или онлайн-валидатором, посмотрите ответ сервера в приватном окне и сверьте несколько позиций с корзиной.

Частая ошибка: принять ответ HTTP 200 с HTML-страницей за валидный YML или обновлять по крону только атрибут date без обновления цен.

Как загрузить фид в Яндекс Товары и проверить результат

Базовый сервис Яндекс Товаров бесплатный для магазинов (о сервисе, проверено 07.11.2026). Работа с ним через LidFly входит в MCP-пакет без отдельной доплаты за канал (документация Яндекс Товаров); сам тариф LidFly и рекламный бюджет Директа оплачиваются отдельно. Нужен собственный сайт: сценарий Яндекса для продавцов без сайта через Яндекс KIT LidFly не подключает. Подключение Яндекс Товаров в LidFly отдельное, доступ к Директу его не заменяет. Домен сайта на LidFly доступен Товарам без дополнительной настройки, но проверки на стороне Яндекса это не отменяет.

Типовой сценарий 1, часть 2: загрузка в Яндекс Товары (продолжение условного примера). Профиль https://lamp-example.ru/feeds/yandex-products.xml проверен. Владелец отправляет команду:

Загрузи проверенный фид https://lamp-example.ru/feeds/yandex-products.xml магазина lamp-example.ru в Яндекс Товары для Москвы и области.
Сначала покажи, есть ли этот источник и что будет добавлено.
Запускай загрузку только после моего подтверждения, затем проверь статус.

Что происходит после команды:

  1. Сначала LidFly читает профиль фида, результат проверки файла и список источников домена в Товарах.
  2. Затем ИИ показывает план: домен, публичный HTTPS URL, название, регионы, что проверено локально и что проверит Яндекс.
  3. Владелец отдельным текстовым сообщением подтверждает отправку. Публикация файла на сайте и отправка в Яндекс подтверждаются по отдельности, а не одним действием.
  4. Сервис запускает загрузку через merchants_start_feed_upload и сохраняет requestId.
  5. По requestId вызывается merchants_get_feed_upload_status, а затем сервис перечитывает список фидов домена для сверки регионов. При статусе IN_PROGRESS повторяют чтение статуса, а не саму загрузку.
  6. Статус processStatus=OK означает завершённую загрузку файла (справка API, проверено 07.11.2026). Причины отказа по товарам API не возвращает - модерацию смотрят в кабинете (по справке загрузки проверка занимает до 5 рабочих дней).

Ручной маршрут в кабинете Яндекс Товаров: «Товары → Источники данных → Фиды → Добавить → Указать ссылку на файл», укажите название, регионы и URL, а после обработки откройте «Ошибки и рекомендации».

Как добавить фид в Директ и не спутать его с запуском рекламы

Ссылка из Яндекс Товаров не появляется автоматически в кабинете Директа - там своя библиотека фидов и отдельная привязка к кампаниям.

Типовой сценарий 2: внешняя CMS и регистрация фида в Директе (пример условный). Разработчик магазина на внешней CMS передал директологу ссылку https://svet-example.ru/export/direct.xml. К базе CMS LidFly не подключается, но проверяет и регистрирует URL в рекламном кабинете:

В кабинете [логин] проверь фид https://svet-example.ru/export/direct.xml для розничных товаров.
Покажи, зарегистрирован ли он, как обработан и с какими кампаниями связан.
Если его нет, предложи добавление с типом RETAIL. Не запускай рекламу.
  1. Через inspect_feed_usage LidFly проверяет URL в кабинете и возвращает статус (NEW, UPDATING, DONE, ERROR), число товаров в фиде, доступные поля фильтрации и связанные кампании.
  2. Если источника нет, ИИ формирует план add_feed для розничной торговли (RETAIL), при необходимости с удалением UTM-меток из ссылок фида, и ждёт текстового подтверждения директолога. Для смены адреса существующего фида готовится план обновления его настроек.
  3. После подтверждения сервис выполняет запись и перечитывает фид через inspect_feed_usage, показывая итоговый статус и число товаров в фиде.

Статус DONE подтверждает приём файла в библиотеку, но не запускает показы. Как дальше выстроить кампании и аналитику, описано в руководстве план рекламы интернет-магазина, а ограничения видимости товарных форматов разобраны в статье почему товарная кампания может быть не видна через API.

Без LidFly откройте в Директе «Библиотека → Фиды → Добавить фид», выберите «Розничная торговля» и загрузку по ссылке (добавление фида, проверено 07.11.2026): файл с компьютера не обновляется автоматически, а ссылку робот опрашивает по расписанию.

Фид не принят или товаров нет: где искать причину

Чините тот слой, где есть свидетельство сбоя. Если причины нет в API, откройте кабинет и передайте текст ошибки в чат.

Симптом Где проверить Следующее действие Признак исправления
Файл не скачивается / отдаёт HTML HTTP-ответ, Content-Type, открытие URL Исправить доступ на сайте. В Товарах повторно отправить фид на проверку можно до шести раз: если он шесть раз подряд не пройдёт контроль качества, магазин не допустят к размещению в Поиске и потребуется обращение в поддержку (справка, проверено 07.11.2026) - не запускайте перепроверку, пока не исправили причину По адресу отдаётся именно XML
Ошибка структуры или тега Парсер и отчёт платформы Исправить шаблон экспорта, экранирование &amp; и обязательные поля (ошибки, проверено 07.11.2026) Повторная проверка не показывает ошибку
Цена или наличие расходятся Фид, карточка, корзина, отчёт качества Синхронизировать выгрузку с сайтом и проверить свежий date (советы, проверено 07.11.2026) Данные совпали; итог перепроверки виден в кабинете
В Товарах OK, итог модерации неизвестен Кабинет Товаров → «Ошибки и рекомендации» Открыть фактический статус в кабинете и передать текст ошибки ИИ Подтверждён конкретный статус в кабинете
В Директе ERROR или мало товаров Проверка фида в Директе через LidFly или «Библиотека → Фиды» Проверить формат, уникальность ID и состав выгрузки Статус DONE, число товаров в фиде сходится с каталогом
Фид принят, показов нет Условия показа и кампании отдельно от фида Проверить кампанию по чек-листу что проверить, если в Директе нет показов Устранена причина остановки в самой кампании

Для быстрых правок между выгрузками LidFly поддерживает обновление цен и скрытие предложений в Яндекс Товарах через API без редактирования XML (см. документацию), но цену на самом сайте всё равно нужно синхронизировать.

Типовой сценарий 3: короткий агентский аудит (пример условный). Специалист агентства проверяет фиды нескольких клиентских магазинов одним чтением:

По доступным доменам [список] собери таблицу фидов: URL, источник, время проверки, статус загрузки, что неизвестно.
Данные клиентов не смешивай. Ничего не меняй.

LidFly читает данные каждого проекта и кабинета по отдельности и сводит их в общую таблицу. По ней специалист выбирает магазин, с которого начать правку по сценарию 1 или 2. Для работы вручную сохраните шаблон паспорта фида:

Паспорт фида: домен → источник и ответственный → назначение и URL → дата в yml_catalog → проверка состава и цен → статус загрузки (OK / DONE) → статус модерации в кабинете → следующий шаг.

Частые вопросы

Что такое YML-файл и чем он отличается от XML?

YML (Yandex Market Language) - это стандарт описания товарного каталога на базе синтаксиса XML с фиксированными тегами (yml_catalog, shop, categories, offers, offer). Не путайте его с конфигурационным форматом YAML (.yml для Docker) и не переименовывайте таблицы Excel в .yml: без XML-разметки парсер такой файл отклонит.

Как создать YML-файл для своего магазина?

Используйте источник, который обновляется синхронно с ценами и остатками: штатный экспорт вашей CMS (1С-Битрикс, Tilda, WooCommerce, OpenCart) или профиль фида в конструкторе LidFly Commerce. Ручной файл подходит для изучения структуры и небольшого каталога, который редко меняется, но каждое изменение цены в нём кто-то должен вносить вручную.

Как проверить фид Яндекса перед загрузкой?

Проверьте четыре слоя: синтаксис XML и стабильность offer id, прямой доступ по HTTPS без HTML-заглушек, совпадение цен и наличия с карточкой и корзиной сайта, а также соответствие тегов и формата даты целевому сервису (Товары или Директ). Онлайн-валидатор находит незакрытые теги, но не заменяет модерацию Яндекса.

Можно ли использовать один фид для Яндекс Товаров и Директа?

Один каталог может питать оба канала, но перед отправкой одной ссылки сверьте требования обоих сервисов (особенно формат атрибута date и набор тегов) или выгрузите два отдельных профиля. Регистрировать URL в Яндекс Товарах и в библиотеке фидов Директа в любом случае нужно отдельно.

Почему фид загружен, но товары не появились?

Статус загрузки файла (processStatus=OK в API Яндекс Товаров или DONE в Директе) подтверждает только технический разбор XML. Товары не показываются, если магазин ещё проходит модерацию качества, цены разошлись с корзиной сайта или в Директе не запущена активная кампания по этому фиду.

Начните с проверки своего фида: отправьте стартовую команду из начала статьи в чат LidFly по Яндекс Товарам - ИИ проверит профили и зарегистрированные источники домена, отделит подтверждённые шаги от неизвестных и подготовит план действий. Справочник команд - в документации по фидам Яндекс Товаров.