Пример YML-файла

Пример YML-файла

📘

Поддержка регионов (стоков)

Обратите внимание, что пример YML-файла содержит несколько вкладок - с поддержкой регионов (стоков) и без.

<?xml version="1.0" encoding="UTF-8"?>
<yml_catalog date="2022-01-01 17:22">
  <shop>
    <categories>
      <category id="1278">Электроника</category>
      <category id="1293" parentId="1278">Смартфоны</category>
      <category id="1345" parentId="1278">Телефоны</category>
      <category id="3761" parentId="1278">Телевизоры</category>
      <category id="1553" parentId="3761">Медиа-плееры</category>
      <category id="3798">Бытовая техника</category>     
    </categories>
    <offers>
      <offer id="1637" available="true">
        <url>http://example.com/product/id1637</url>
        <price>226.50</price>
        <oldprice>250</oldprice>
        <categoryId>1293</categoryId>
        <categoryId>1345</categoryId>
        <picture>http://example.com/images/1637_1.jpg</picture>
        <name>Товар 1</name>
        <typePrefix>Тип изделия</typePrefix>
        <param name="Диагональ">6</param>
        <description>Описание товара 1637</description>
        <vendor>Название производителя</vendor>
      </offer>
      <offer id="1638" available="false">
        <url>http://example.com/product/id1638</url>
        <price>545.30</price>
        <categoryId>1293</categoryId>
        <categoryId>1345</categoryId>
        <picture>http://example.com/images/1638_1.jpg</picture>
        <name>Товар 2</name>
        <typePrefix>Тип изделия</typePrefix>
        <param name="Цвет">Белый</param>
        <description>Описание товара 1638</description>
        <vendor>Название производителя</vendor>
      </offer>
    </offers>
  </shop>
</yml_catalog>
<?xml version="1.0" encoding="UTF-8"?>
<yml_catalog date="2022-01-01 17:22">
  <shop>
    <categories>
      <category id="1278">Электроника</category>
      <category id="1293" parentId="1278">Смартфоны</category>
      <category id="1345" parentId="1278">Телефоны</category>
      <category id="3761" parentId="1278">Телевизоры</category>
      <category id="1553" parentId="3761">Медиа-плееры</category>
      <category id="3798">Бытовая техника</category>     
    </categories>
    <offers>
      <offer id="1637" available="false">
        <url>http://example.com/product/id1637</url>
        <price>226.50</price>
        <oldprice>250</oldprice>
        <categoryId>1293</categoryId>
        <categoryId>1345</categoryId>
        <picture>http://example.com/images/1637_1.jpg</picture>
        <name>Товар 1</name>
        <param name="Диагональ">6</param>
        <description>Описание товара 1637</description>
        <vendor>Название производителя</vendor>
        <stock id="Москва">
          <available>true</available>
          <price>230.30</price>
          <oldprice>252</oldprice>
          <url>http://example.com/product/id1637</url>
          <picture>http://example.com/images/1637_2.jpg</picture>
        </stock>
        <stock id="Екатеринбург">
          <available>false</available>
          <price>235</price>
          <oldprice>251.60</oldprice>
          <url>http://example.com/product/id1637</url>
          <picture>http://example.com/images/1637_2.jpg</picture>
        </stock>
      </offer>
      <offer id="1638" available="false">
        <url>http://example.com/product/id1638</url>
        <price>545.30</price>
        <categoryId>1293</categoryId>
        <categoryId>1345</categoryId>
        <picture>http://example.com/images/1638_1.jpg</picture>
        <name>Товар 2</name>
        <param name="Цвет">Белый</param>
        <description>Описание товара 1638</description>
        <vendor>Название производителя</vendor>
        <stock id="Москва">
          <available>true</available>
          <price>500</price>
          <oldprice>550</oldprice>
          <url>http://example.com/product/id1638</url>
          <picture>http://example.com/images/1638_2.jpg</picture>
        </stock>
        <stock id="Екатеринбург">
          <available>true</available>
          <price>540.50</price>
          <oldprice>600</oldprice>
          <url>http://example.com/product/id1638</url>
          <picture>http://example.com/images/1638_3.jpg</picture>
        </stock>
      </offer>
    </offers>
  </shop>
</yml_catalog>
<?xml version="1.0" encoding="UTF-8"?>
<yml_catalog date="2018-09-25 17:22">
  <shop>
    <categories>
      <category id="1278">Электроника</category>
      <category id="1293" parentId="1278">Смартфоны</category>
      <category id="1345" parentId="1278">Телефоны</category>
      <category id="3761" parentId="1278">Телевизоры</category>
      <category id="1553" parentId="3761">Медиа-плееры</category>
      <category id="3798">Бытовая техника</category>     
    </categories>
    <offers>
      <offer id="1637" available="true" group_id="12345">
        <url>http://example.com/product/id1637</url>
        <price>226.50</price>
        <oldprice>250</oldprice>
        <categoryId>1293</categoryId>
        <categoryId>1345</categoryId>
        <picture>http://example.com/images/1637_1.jpg</picture>
        <name>Товар 1</name>
        <param name="Цвет">Чёрный</param>
        <description>Описание товара 1637</description>
        <vendor>Название производителя</vendor>
        <model>Модель товарного предложения</model>
      </offer>
      <offer id="1638" available="false" group_id="12345">
        <url>http://example.com/product/id1638</url>
        <price>545.30</price>
        <categoryId>1293</categoryId>
        <categoryId>1345</categoryId>
        <picture>http://example.com/images/1638_1.jpg</picture>
        <name>Товар 2</name>
        <param name="Цвет">Белый</param>
        <description>Описание товара 1638</description>
        <vendor>Название производителя</vendor>
        <model>Модель товарного предложения</model>
      </offer>
    </offers>
  </shop>
</yml_catalog>
<?xml version="1.0" encoding="UTF-8"?>
<yml_catalog date="2018-09-25 17:22">
  <shop>
    <categories>
      <category id="1278">Электроника</category>
      <category id="1293" parentId="1278">Смартфоны</category>
      <category id="1345" parentId="1278">Телефоны</category>
      <category id="3761" parentId="1278">Телевизоры</category>
      <category id="1553" parentId="3761">Медиа-плееры</category>
      <category id="3798">Бытовая техника</category>     
    </categories>
    <offers>
      <offer id="1637" available="false" group_id="12345">
        <url>http://example.com/product/id1637</url>
        <price>226.50</price>
        <oldprice>250</oldprice>
        <categoryId>1293</categoryId>
        <categoryId>1345</categoryId>
        <picture>http://example.com/images/1637_1.jpg</picture>
        <name>Товар 1</name>
        <param name="Цвет">Чёрный</param>
        <description>Описание товара 1637</description>
        <vendor>Название производителя</vendor>
        <model>Модель товарного предложения</model>
        <stock id="Москва">
          <available>true</available>
          <price>230.30</price>
          <oldprice>252</oldprice>
          <url>http://example.com/product/id1637</url>
          <picture>http://example.com/images/1637_2.jpg</picture>
        </stock>
        <stock id="Екатеринбург">
          <available>false</available>
          <price>235</price>
          <oldprice>251.60</oldprice>
          <url>http://example.com/product/id1637</url>
          <picture>http://example.com/images/1637_2.jpg</picture>
        </stock>
      </offer>
      <offer id="1638" available="false" group_id="12345">
        <url>http://example.com/product/id1638</url>
        <price>545.30</price>
        <categoryId>1293</categoryId>
        <categoryId>1345</categoryId>
        <picture>http://example.com/images/1638_1.jpg</picture>
        <name>Товар 2</name>
        <param name="Цвет">Белый</param>
        <description>Описание товара 1638</description>
        <vendor>Название производителя</vendor>
        <model>Модель товарного предложения</model>
        <stock id="Москва">
          <available>true</available>
          <price>500</price>
          <oldprice>550</oldprice>
          <url>http://example.com/product/id1638</url>
          <picture>http://example.com/images/1638_2.jpg</picture>
        </stock>
        <stock id="Екатеринбург">
          <available>true</available>
          <price>540.50</price>
          <oldprice>600</oldprice>
          <url>http://example.com/product/id1638</url>
          <picture>http://example.com/images/1638_3.jpg</picture>
        </stock>
      </offer>
    </offers>
  </shop>
</yml_catalog>

Обратите внимание, что при использовании региональности (стоков), параметр "available" в каждом offer должен иметь значение "false".
Актуальное наличие указывается отдельным тэгом <available> внутри каждого <stock>.

<offer id="1638" available="false">
----------другие параметры----------
	<stock id="Москва">
          <available>true</available>
----------другие параметры----------
	</stock>
</offer>

Обязательные элементы YML

ЭлементОписание
xml headerСтандартный XML-заголовок. Должен начинаться с первой строки, с нулевого символа.
yml_catalogЛюбой XML-документ может содержать только один корневой элемент. Формат YML в качестве корневого использует элемент <yml_catalog> с атрибутом date. В атрибуте необходимо указать дату и время момента, на который актуальны данные в файле. Дата должна иметь формат YYYY-MM-DD hh:mm.
shopВ элементе shop содержатся:

- Элементы categories с информацией о категориях: названием, иерархией, идентификаторами;

- Элемент offers со списком предложений магазина. В этот элемент нужно вставить по одному элементу offer для каждого предложения;
categoriesВключает в себя объявление всех категорий магазина.

Структура категорий (иерархия) в XML-файле должна соответствовать основному меню веб-сайта.
categoryОбъявление одной категории магазина. Атрибуты элемента:
"id" - число, идентификатор категории;
"parentId" - идентификатор родительской категории (создаёт вложенность).
Примечание: Уровень вложенности категорий имеет лимит, не может быть более 15 вложенных категорий;
offersВключает в себя объявление всех товарных предложений.
offerОбъявление товарного предложения с описанием. Атрибуты элемента:
"id" - число, идентификатор товарного предложения;
"available" - указывает наличие (отсутствие) товарного предложения в продаже. Может принимать значения true или false;

При поддержке групповых товаров:
"group_id" - число, идентификатор группы товаров. Объединяет все предложения, которые являются вариациями одной модели. Должен иметь одинаковое значение. Значение должно быть целым числом. Если товар не является групповым предложением, то в параметр нужно передавать идентификатор товарного предложения.
nameНазвание товарного предложения.
urlСсылка на товарное предложение. Указывается полностью, начиная с http или https.
pictureСсылка на изображение товарного предложения, указывается полностью, начиная с http или https. Изображения могут быть разрешением до 400x400px или размером до 1 МБ. Формат изображений JPEG или PNG, webp не поддерживается. Рекомендуем указывать ссылку на изображение со страницы категории. Эти изображения будут использованы для отображения в блоках рекомендаций и письмах.
priceЦена товарного предложения, без пробелов, дробная часть указывается через точку.
categoryIdЧисло, идентификатор категории, где находится товарное предложение, можно указывать несколько. В одном параметре указывается только один id категории.

Если продукт находится в нескольких категориях, можно указать несколько параметров <categoryId>.
Если параметров несколько - первым нужно указывать основную категорию продукта.
descriptionОписание товарного предложения. В описании можно использовать html вёрстку. Для этого необходимо "обернуть" описание в CDATA. Обратите внимание, что описание не должно превышать 200 символов.

Дополнительные параметры

ЭлементОписание
oldpriceСтарая цена товарного предложения, без пробелов, дробная часть указывается через точку.
vendorПроизводитель или бренд
modelМодель товарного предложения.
param nameВместе с каждым товарным предложением можно передавать до 40 дополнительных параметров. Обычно это объём, тип материала, размер диагонали, размер скидки и другие. Дополнительные параметры учитываются в расчёте рекомендаций и могут выводиться в письмах и виджетах. Максимальная длина текстовой части параметра - 300 символов.
Пример:

1. Параметр addedDate используется для отображения новинок на сайте:
<param name="addedDate">2022-04-28</param>
В его значение нужно передавать дату добавления товара в формате YYYY-MM-DD
2. Параметр Размер используется для персонализации выдачи с учетом размера, интересующего пользователя:
<param name="Размер">S</param>
typePrefixТип изделия