xml
Описание формата
Умеем обновлять товарную номенклатуру из yml-файлов раз в несколько часов. YML (Yandex Market Language) — это стандарт, разработанный Яндексом для принятия и размещения информации в базе данных Яндекс.Маркета. YML основан на стандарте XML. Подробнее о формате можно прочитать здесь
Особенности
- Алгоритмы товарных рекомендаций могут работать не более чем с 5 000 000 офферов.
- Категоризация на сайте должна совпадать с категоризацией в yml.
- Идентификаторы товаров и категорий из yml должны совпадать с идентификаторами товаров и категорий в заказах, действиях с продуктами и действиях с категориями.
- Необходимо выгружать всю товарную номенклатуру - товары в наличии и товары не в наличии, передавать с этими статусами нужно в одном фиде.
- Если ранее заполненное в фиде поле не передается при новой загрузке, оно затрется для всех системных полей, кроме названия продукта (
name). - Если товарная номенклатура в рознице и на сайте отличается - нужно в yml добавить товары из розницы.
- Если цены и доступности в регионах различаются, для каждого региона необходим свой yml-фид.
- В региональных фидах не обрабатываются поля: vendorCode (артикул), shelfLife (срок годности в днях), categories (внешние идентификаторы категорий продукта), groupId (идентификатор группы продуктов).
- Дополнительные поля к продукту добавляются в узлы
<param name="название дополнительного поля">значение дополнительного поля</param>или<customField>значение дополнительного поля</customField>, гдеcustomField- системное имя дополнительного поля. - Один продукт может принадлежать к нескольким категориям.
- В случае sku в узле
<offer id="321" type="vendor.model" available="true" group_id="22">id— идентификатор sku,group_id— идентификатор родительского продукта. - Поле
offer idне больше 200 символов. - Поле
descriptionдолжно содержать не более 10 000 символов. Если символов больше, продукт не будет добавлен на проект. - Множественные значения передаются через | . Например,
<param name="Пример признака">Вечерние|Коктейльные</param>. - Максимальный размер файла 1,5гб.
- Фид должен быть доступен по прямой ссылке, без использования редиректов.
- Доступны только стандартные протоколы http/https и порты 80/443. Если файл защищен авторизацией, обязательно должен использоваться протокол https.
- Поддерживается формат GZIP. Для этого веб-сервер должен вернуть либо заголовки
Content-Encoding: gzipиContent-Type: text/xml, либо заголовокContent-Type: application/x-gzip. - В заголовке
Content-Typeпараметрcharsetдолжен быть задан согласно стандарту. Например, utf-8 вместо utf8.
Виды offer'ов
Существует несколько видов offer'ов в yml. Выделяем упрощенный (1), произвольный (2) и другие (3):
-
Для упрощенного offer'а атрибут
<type>не передается. Название продукта берется из узла<name>. -
Для произвольного offer'а атрибут
type="vendor.model". Название составляется из узлов<vendor>,<model>,<typePrefix>,< VendorCode >, например:<typePrefix>Смартфон</typePrefix><vendor>Apple</vendor><model>iPhone 6s 128gb розовое золото</model>В результате в имени отображается:Смартфон Apple iPhone 6s 128gb розовое золото. Если после импорта название продукта не соответствует<name>, скорее всего, это произвольный offer, который передается сtype="vendor.model". Чтобы это исправить, нужно убратьtype="vendor.model"из yml-фида. -
Mindbox поддерживает и другие типы offer'ов: book, audiobook, medicine, event-ticket, tour. Принимаем его как упрощенный (1) и берем имя из
<name>. Подробнее о типах offer.
Пример файла
Code
Полезные материалы
Bitrix - Подключаемся к Яндекс Маркету