1.1 Товарный фид

Описание фида XML

Мегамаркет XML - это формат данных, разработанный для описания товарных предложений мерчанта. Основан на формате Yandex Market XML (YML). Содержит как информацию о товарах, их свойствах, характеристиках, ценах, так и информацию о доступных для заказа остатках.

XML-документ с описанием товаров ("XML-фид") должен быть размещён на веб-сервере мерчанта. Система Мегамаркета будет периодически загружать из него информацию.

Если на стороне продавца для товарного фида дополнительно установлена авторизация по логину и паролю, то пароль необходимо использовать без спецсимволов &, %, ^ и т.п

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

При возникновении ошибок, связанных с обработкой фидов, весь ассортимент продавца будет снят с продажи на макетплейсе megamarket.ruВАЖНО!

Размещение фида

Товарный фид должен быть размещен на отдельной странице http/https сайта продавца или на любом другом стороннем хосте.
Фид не должен находиться:

  1. в облачных хранилищах (Яндекс.Диск, Google.Диск)
  2. на ftp/sftp сервере

Общие требования

  • Максимальный объем файла Мегамаркет XML составляет 500 МБ
  • Файл Мегамаркет XML должен быть представлен в кодировке UTF-8 или Windows-1251
  • Файл Мегамаркет XML должен соответствовать общим требованиям стандарта XML.
  • XML-заголовок файла <?xml> должен начинаться с первой строки, с нулевого символа
  • Все атрибуты элементов файла должны быть указаны в двойных кавычках
  • Стандарт Мегамаркет XML не допускает использования непечатаемых символов с ASCII-кодами от 0 до 31 (за исключением символов с кодами 9, 10, 13 — табуляция, перевод строки, возврат каретки)
  • Символы ", &, >, <, ' нужно заменять на эквивалентные коды:


Символ в текстеКод для Мегамаркет XML-файла
"&quot;
&&amp;
>&gt;
<&lt;
'&apos;

Требования к элементам файла Мегамаркет XML


Название
элемента
ОписаниеНаличие в
файле
Тип данных
xml headerСтандартный XML-заголовок. Должен начинаться с первой строки, с нулевого символа. Может присутствовать только в единственном экземпляреОбязательноЛатиница, цифры
yml_catalogКорневой XML-элемент, описывающий структуру каталога офферов. Может присутствовать только в единственном экземпляре. Атрибут date элемента должен соответствовать дате и времени генерации YML-файла на стороне магазина. Дата должна иметь формат YYYY-MM-DD hh:mm (формат времени - 24 часа)ОбязательноЛатиница, цифры
Элементы, входящие в yml_catalog
shopСодержит описание магазина и его офферов. Может присутствовать только в единственном экземпляреОбязательноЛатиница
Элементы, входящие в shop
nameНазвание магазина. Может присутствовать только в единственном экземпляреЖелательноЛатиница, кириллица,
цифры
companyНазвание компании, владеющей магазином. Может присутствовать только в единственном экземпляреЖелательноЛатиница, кириллица, цифры
urlURL главной страницы магазина. Может присутствовать только в единственном экземпляре. Максимальная длина – 512 символовЖелательноТолько латиница и цифры.  Кириллические символы и пробелы недопустимы
currenciesЭлемент с описанием валют, используемых в магазине. Каждая валюта описывается в
отдельном элементе currency. У currency могут быть следующие атрибуты:
● id – содержит код валюты (rur, usd, eur и т.д.)
● rate – курс обмена текущей валюты на рубли Блок может присутствовать только в единственном экземпляре.
Желательно

id – латиница
rate – цифры. В качестве разделителя используется точка

categories

Элемент с описанием категорий офферов. Может присутствовать только в единственном экземпляре. Каждая категория описывается в отдельном
элементе category. У category могут быть следующие атрибуты:

● id – обязательный атрибут. Должен быть представлен уникальным значением в рамках всех категорий.
● Parentid – id родительской категории. Используется в том случае, если
категории делятся на подкатегории. Не является обязательным

Обязательноcategory – латиница, кириллица, цифры
id – целочисленное значение больше нуля
parentid – целочисленное значение больше нуля
shipment-optionsЭлемент с описанием параметров отгрузки офферов продавцом. Эти параметры
будут применены ко всему ассортименту товаров. Содержит единственный элемент option. У option могут быть следующие атрибуты:
● order-before – время в часах, 24-часовой формат; час, до которого в этот день принимаются заказы для доставки за days дней
● days – число в днях, количество рабочих дней для доставки заказа
● id склада, с которого будет осуществлена отгрузка
ЖелательноOrder-before – целочисленное значение от 1 до 24
Days – целочисленное значение большее или равное нулю
offersСписок офферов магазина. Может присутствовать только в единственном экземпляре. Каждый оффер описывается в отдельном элементе offer.ОбязательноЛатиница
Атрибуты элемента offer
idДолжен соответствовать артикулу оффера в системе учёта заказов мерчанта. Не
должен содержать пробелов
Обязательно

Строка
Допустима латиница, цифры, знаки "-" и "_"
Максимальная длина - 20 символов
Пробелы недопустимы

availableПоказывает доступность конкретного оффера. Может быть true или falseОбязательноTrue или false
Элементы, входящие в offer
urlСсылка на страницу оффера в магазине партнераЖелательноТолько латиница и цифры.  Кириллические символы и пробелы
недопустимы
nameНазвание оффера. Может присутствовать только в единственном экземпляреОбязательноЛатиница, кириллица, цифры
priceЦена оффера. Может присутствовать только в единственном экземпляреОбязательноЦелочисленное значение больше нуля. (не
целочисленное значение будет автоматически
округлено в меньшую сторону, разделитель -
точка.)
oldpriceСтарая цена оффера

Желательно*

*-обязательно для мерчантов категории Fashion

Целочисленное значение больше нуля. Главное требование к параметру oldprice - он должен быть минимум на 5% больше цены продажи. Например: если вы продаете футболку за 1000 рублей, то старая цена должна быть минимум 1050 рублей.
categoryIdid категории продавца, в которую входит данный оффер. Может присутствовать только в
единственном экземпляре
ОбязательноЦелочисленное значение. Должно быть больше нуля
pictureСсылка на изображение оффера. Можно передавать несколько изображений, основным на витрине будет первое изображение.ЖелательноТолько латиница и цифры. Кириллические
символы и пробелы недопустимы
vat

Элемент содержит значение ставки НДС для товара:

Обязательно  для плательщиков
НДС

Только перечисленные возможные
значения.

shipment-optionsЭлемент с описанием параметров отгрузки данного оффера. Содержит единственный элемент option. У option должны быть следующие атрибуты:
● order-before – время окончания операционного дня (обязательный параметр)
● days – число в днях, количество рабочих дней для отгрузки заказа
ЖелательноOrder-before – целочисленное значение от 0 до 24
Days – целочисленное значение больше или равное нулю
Store-id – целочисленное значение больше
нуля
vendorПроизводительЖелательноЛатиница, кириллица, цифры
vendorCodeКод производителяЖелательноЦелочисленное значение больше нуля
model

Модель.

Для объедения, товаров разного размера и цвета/принта необходимо корректно указать Модель (одинаковая числовая/буквенная часть артикула без указания размера/цвета/материала)

Желательно*

*-обязательно для мерчантов категории Fashion

Латиница, кириллица, цифры
descriptionОписание. Описание. Используется при создании новых карточек товаров.ЖелательноЛатиница, кириллица, цифры
barcodeШтрих-код в формате EAN. Представлен с помощью цифр, имеет 8, 12 или 13 символов.  Должен находиться за пределами диапазона 20xxxxxxxxxxxx (первые 2 цифры не должны быть равны 20 в случае 13 цифрового баркода)ОбязательноЦелочисленное значение больше нуля
outletsЭлемент с данными по остатку оффера. Содержит вложенный элемент outlet. У outlet должны быть следующие атрибуты:
● id – код склада (идентификатор), который вы указали в ЛКМ, раздел “Настройки” -“Доставка” / "Склад"
● instock – количество товара на складе (шт.)
Желательноid – целочисленное значение
instock – целочисленное значение большее
или равное нулю
paramЭлемент со значением характеристики данного товара. Содержит атрибут name с наименованием данной
характеристики.
Желательно*

*-обязательно для мерчантов категории Fashion

Латиница, кириллица, цифры

Пример фида XML


Фид XML
<?xml version="1.0" encoding="UTF-8"?>
<yml_catalog date="2016-02-05 17:22">
   <shop>
      <name>ABC</name>
      <company>ABC inc.</company>
      <url>http://www.abc.ru/</url>
      <currencies>
         <currency id="RUR" rate="1" />
         <currency id="USD" rate="80" />
      </currencies>
      <categories>
         <category id="1278">Электроника</category>
         <category id="3761" parentId="1278">Телевизоры</category>
         <category id="1553" parentId="3761">Медиаплееры</category>
         <category id="3798">Бытовая техника</category>
         <category id="1293" parentId="3798">Холодильники</category>
      </categories>
      <shipment-options>
         <option days="2" order-before="21"/>
      </shipment-options>
      <offers>
         <offer id="158" available="true">
            <url>http://www.abc.ru/158.html</url>
            <name>Холодильник Indesit SB 185</name>
            <price>1000</price>
			<oldprice>1050</oldprice>		
            <categoryId>1293</categoryId>
            <picture>http://www.abc.ru/1580-1.jpg</picture>
			<picture>http://www.abc.ru/1580-2.jpg</picture>
			<picture>http://www.abc.ru/1580-3.jpg</picture>
            <vat>VAT_20_120</vat>
            <shipment-options>
               <option days="1" order-before="15"/>
            </shipment-options>
            <outlets>
               <outlet id="1" instock="50"/>
            </outlets>
            <vendor>Indesit</vendor>
            <vendorCode>12345678</vendorCode>
            <model>Indesit SB 185</model>
            <description>Холодильник Indesit SB 185</description>
            <param name="Weight">120</param>
            <param name="Width">70</param>
            <param name="Length">250</param>
            <param name="Height">180</param>
            <param name="Габариты">10,5 x 6,5 x 1</param>
            <param name="Бренд">Chatte</param>
            <param name="Материал">Натуральнаякожа</param>
            <param name="Странаизготовитель">Италия</param>
            <barcode>7564756475648</barcode>
         </offer>
      </offers>
   </shop>
</yml_catalog>