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

Требования к YML-файлу (фиду)

YML-файл (Yandex Market Language, «Язык Яндекс.Маркета») — это документ с данными о товарах, которые планируется размещать на Яндекс Маркете. Он создаётся с помощью собственного языка разметки Яндекса на базе стандарта XML.

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

Пример YML-файла для умного поиска​

<?xml version="1.0" encoding="UTF-8"?>
<yml_catalog date="2025-01-01T09:31:59+00:00">
<shop>
<categories>
<category
id="{идентификатор категории}"
url="{ссылка на страницу категории}"
image="{ссылка на изображение категории}"
>
Название категории
</category>
<category
id="{уникальный идентификатор категории}"
parentId="{идентификатор родительской категории}"
url="{ссылка на страницу категории}"
image="{ссылка на изображение категории}"
>
Название подкатегории
</category>
</categories>
<brands>
<brand
url="{ссылка на страницу с брендом}"
image="{ссылка на изображение бренда}"
>
Название бренда
</brand>
</brands>
<offers>
<offer id="{уникальный артикул товарного предложения}" available="true" group_id="{id группы вариантов}">
<url>{ссылка на страницу с товаром}</url>
<price>{цена товара}</price>
<oldprice>{старая цена товара}</oldprice>
<categoryId>{идентификатор категории}</categoryId>
<picture>{ссылка на изображение товара}</picture>
<vendor>{производитель}</vendor>
<vendorCode>{артикул товара от производителя}</vendorCode>
<name>{название товара}</name>
<description>{описание товара}</description>
<rating>{рейтинг товара}</rating>
<param name="{название характеристики}">{значение характеристики}</param>
<badges>
<badge id="{идентификатор бейджа}">{название бейджа}</badge>
</badges>
</offer>
</offers>
</shop>
</yml_catalog>

Поля товара (<offer>)​

Элемент / атрибутОбязательныйОписание
id (атрибут)Дауникальный артикул товарного предложения в вашем магазине
available (атрибут)НетДоступность товара: true или false. По умолчанию true
group_id (атрибут)НетID группы вариантов товара (например, один товар в разных размерах)
<url>ДаСсылка на страницу товара
<name>ДаНазвание товара. Если <name> отсутствует, берётся значение из <model>
<price>ДаАктуальная цена товара
<oldprice>НетСтарая (зачёркнутая) цена товара
<categoryId>ДаИдентификатор категории товара
<picture>НетСсылка на изображение товара. Несколько изображений указываются через запятую
<vendor>НетПроизводитель (бренд) товара
<vendorCode>НетАртикул товара от производителя
<description>НетОписание товара
<rating>НетРейтинг товара — положительное число (например, 4.7). Отображается в карточке товара
<param name="...">НетХарактеристика товара. Несколько характеристик задаются несколькими элементами <param>
<badges>НетСписок бейджей товара. Каждый бейдж задаётся элементом <badge id="...">Текст</badge>

Поля категории (<category>)​

Элемент / атрибутОбязательныйОписание
id (атрибут)ДаУникальный идентификатор категории в вашем магазине
parentId (атрибут)НетИдентификатор родительской категории. Указывается для подкатегорий
url (атрибут)НетСсылка на страницу категории. Без url категория не попадает в результаты поиска
image (атрибут)НетСсылка на изображение категории. Без image категория отображается без картинки
Текст элементаДаНазвание категории

Поля бренда (<brand>)​

Элемент / атрибутОбязательныйОписание
url (атрибут)НетСсылка на страницу бренда
image (атрибут)НетСсылка на изображение (логотип) бренда
Текст элементаДаНазвание бренда

Дополнительные возможности​

Умный поиск поддерживает дополнительные элементы YML, которые не предусмотрены стандартом Яндекса. Они позволяют расширить возможности поиска и улучшить отображение товаров в результатах.

Привязка товара к нескольким категориям​

По умолчанию товар привязывается к одной категории через элемент <categoryId>. Чтобы привязать товар к нескольким категориям одновременно, используйте вложенный элемент <categories>:

<offer id="123">
...
<categories>
<categoryId>10</categoryId>
<categoryId>25</categoryId>
</categories>
</offer>

Рейтинг товара​

Рейтинг указывается в элементе <rating> и отображается в карточке товара в результатах поиска. Значение должно быть положительным числом. Допускается как точка, так и запятая в качестве разделителя дробной части. Значение округляется до одного знака после запятой.

<offer id="123">
...
<rating>4.7</rating>
</offer>

Цены по регионам​

Если цена товара зависит от региона покупателя, добавьте внутри <offer> элемент <regionalPrices> со списком <region>. У каждого <region> обязателен атрибут id (идентификатор региона) и вложенный элемент <price> (цена для этого региона) — без них весь фид не пройдёт валидацию.

<offer id="123">
...
<regionalPrices>
<region id="77">
<price>1490</price>
</region>
<region id="78">
<price>1590</price>
</region>
</regionalPrices>
</offer>

Чтобы поиск и виджет показали цену для региона посетителя, магазин должен сам определить регион на своей стороне и добавить его идентификатор параметром regionId к адресу src в коде активации (Установка кода) — например, .../script.js?regionId=77. Идентификатор должен совпадать со значением атрибута id у соответствующего <region> в фиде.

Бейджи товара​

Бейджи — это метки на карточке товара (например, «Хит», «Новинка», «Распродажа»). Задаются через элемент <badges> внутри <offer>. Атрибут id — уникальный идентификатор типа бейджа, текст внутри элемента — отображаемое название.

<offer id="123">
...
<badges>
<badge id="bestseller">Хит продаж</badge>
<badge id="new">Новинка</badge>
</badges>
</offer>

Характеристики товара​

Характеристики товара передаются через элементы <param>. Атрибут name — название характеристики, текст внутри — её значение. Используются для фильтрации и отображения в карточке товара.

<offer id="123">
...
<param name="Цвет">Красный</param>
<param name="Размер">XL</param>
<param name="Материал">Хлопок</param>
</offer>
Поиск по артикулу из характеристик

В настройках личного кабинета можно указать, какие характеристики использовать как дополнительные источники артикула при поиске. Например, если артикул производителя хранится в характеристике, а не в стандартном поле <vendorCode>:

<offer id="123">
...
<param name="Артикул производителя">ABC-12345</param>
</offer>

После добавления Артикул производителя в список источников артикула в настройках поиска — покупатели смогут находить товар по этому значению.

Артикул товара​

Наш умный поиск одинаково хорошо ищет по артикулам товаров, указанных в полях id, vendorCode и характеристиках <param>.

Это означает, что покупатель найдёт нужный товар независимо от того, в каком поле хранится артикул — внутренний идентификатор магазина, код производителя или значение из произвольной характеристики. В настройках личного кабинета можно указать, какие именно <param>-характеристики использовать как дополнительные источники артикула.