Обновление цен и остатков через XML-фид
Для успешной торговли важно поддерживать актуальную информацию о товарах. Это помогает покупателям в выборе.
В статье расскажем, что такое XML-фид, и как обновлять остатки (кроме схемы FBO) и цены с помощью него.
Функция доступна продавцам, зарегистрированным после 21.04.2025. Если в вашем магазине её нет, воспользуйтесь другим способом.
XML-файл (фид) разработан для описания товарных предложений. С помощью него можно обновлять цены и остатки.
Содержание XML-фида
1. Фид необходимо разместить на сайте с протоколом HTTPS (начинаться с https://).
2. В названии фида нельзя использовать .. / \ \\ : * ? < >|$ % & ; символы.
3. Максимальный объём файла — 500 МБ.
Структура фида
1. Корневой элемент <yml_catalog date="2025-02-13 08:30">
Должен быть в любом XML-файле. Содержит данные о товарах. В атрибуте укажите дату и время, на которые актуальны данные в файле. Дату и время нужно отметить, согласно стандарту RFC 3339. Обязательно указывайте часовой пояс. Он отсчитывается от Всемирного координированного времени (UTC).
Наличие в файле необязательно.
Повторяться не может.
2. Shop
Элемент, содержащий данные о магазине.
Наличие в файле обязательно.
Повторяться не может в рамках одного фида.
3. Offers
Список товаров магазина. Может присутствовать только в единственном экземпляре. Каждый товар описывается отдельным элементом offer.
Наличие в файле обязательно.
Повторяться не может в рамках одного фида.
4. Offer
Содержит информацию о цене и остатке товара.
Наличие в файле обязательно.
Повторяться может.
Элементы, входящие в Offer:
offer id
Код товара в системе учёта заказов продавца. Товары, у которых несколько цветов, размеров и других отличий, записываются с разным id.
Тип данных: длина до 35 символов включительно.
Наличие в файле обязательно.
<offer id="158">
price
Цена товара. Действует для всех ваших активных складов.
Чтобы продавать товар с разных складов по разным ценам, укажите отдельную цену для каждого склада - в элементе <outlet>.
Тип данных: целое число от 1 до 99 999 999 включительно.
Наличие в файле обязательно.
<price>100</price>
oldprice
Стоимость до скидки. Зачёркнута как старая цена. Не применится без элемента <price>.
Элемент <oldprice> должен быть больше <price>.
Тип данных: целое число от 1 до 99 999 999 включительно.
Наличие в файле необязательно.
<oldprice>150</oldprice>
vat
Содержит значение ставки НДС для товара.
Наличие в файле обязательно.
Тип данных:
Значение | ставка НДС при этом значении |
---|---|
VAT_20 | 20% |
VAT_10 | 10% |
VAT_7 | 7% |
VAT_5 | 5% |
NO_VAT | Без НДС |
<vat>VAT_20</vat>
4. Outlets
Данные по остатку и цене товара из склада.
Наличие в файле необязательно.
Повторяться может в рамках одного offer id.
Элементы, входящие в outlet:
outlet idИдентификатор склада. Можно найти в зависимости от схемы работы:
указан в разделе Логистика → Склад и доставка → поле «ID склада». Для схемы FBO: если вы находитесь на этапе регистрации, ID склада можно найти на шаге «Настройте доставку» или в Базе знаний. Наличие в файле обязательно, если есть <outlets>. Повторяться не может. | outlet instockКоличество товара на складе в шт. Тип данных: целое число от 0 до 99 999 999 включительно. Наличие в файле необязательно. Повторяться не может в рамках одного склада. |
outlet priceСтоимость товара для конкретного склада. Если укажете цену только по одному складу, для остальных применится цена из <price>. Тип данных: целое число от 1 до 99 999 999 включительно. Наличие в файле необязательно. Повторяться не может. | outlet oldpriceСтоимость до скидки для конкретного склада. Зачеркнута на витрине как старая цена. Не применится без элемента <outlet price>. Элемент <outlet oldprice> должен быть больше <outlet price>. Тип данных: целое число от 1 до 99 999 999 включительно. Наличие в файле необязательно. Повторяться не может. |
<outlets> <outlet id="1" instock="50" price="15458" oldprice="500000"/> </outlets>
Пример заполненного XML-фида
<yml_catalog date="2025-02-13 08:30"> <shop> <offers> <offer id="158"> <price>100</price> <oldprice>150</oldprice> <vat>VAT_20</vat> <outlets> <outlet id="1" instock="50" price="100" oldprice="200"/> <outlet id="3" instock="650" price="100" oldprice="200"/> </outlets> </offer> </offers> </shop> </yml_catalog>
Как загрузить файл с изменениями
Обновление затронет только те позиции, которые указаны в XML-файле. Информация о ценах и остатках по остальным товарам не изменится.
1. Если файла ещё нет, загрузите его на свой сервер.
2. Перейдите в раздел Управление товарами.
3. Нажмите на Обновить цены и остатки и выберите XML-фид.
4. Оставьте ссылку на XML-файл. Если он защищён логином и паролем, обязательно укажите их.
5. Нажмите Сохранить.
Готово. Файл появится на этой же странице. Рядом с ним будут указаны:
- дата последнего обновления;
- сколько товаров в файле;
- у скольких товаров обнаружены ошибки (если есть);
статус обновления.
Каждые 1-2 часа система проверяет, есть ли обновления в последнем загруженном фиде.
Передать разные цены для одного товара
Пригодится, если, например, на один и тот же товар вы решили устроить распродажу с одного из своих складов, а с другого продавать по своей обычной цене.
Представим, что мы продаём товар с трёх складов:
- id 1;
- id 2;
- id 3.
Мы продаём товар за 100 руб. Значит, в фиде укажем:
<yml_catalog date="2025-02-13 08:30"> <shop> <offers> <offer id="158"> <price>100</price> <oldprice>150</old_price> <vat>VAT_20</vat> <outlets> <outlet id="1" instock="50"/> <outlet id="3" instock="65"/> </outlets> </offer> </offers> </shop> </yml_catalog>
Если мы захотим продавать со склада id 1 по другой стоимости, отметим в фиде так:
<yml_catalog date="2025-02-13 08:30"> <shop> <offers> <offer id="158"> <price>100</price> <oldprice>150</oldprice> <vat>VAT_20</vat> <outlets > <outlet id="1" instock="50" price ="1050" oldprice ="2000"/> </outlets > </offer> </offers> </shop> </yml_catalog>
Таким образом мы установим цену по складам с id 2 и id 3 в размере 100 руб, а по id 1 — 1050 руб.
Как посмотреть ошибки в фиде
Если в файле будут недочёты, система отметит его соответствующим статусом. Справа нажмите на значок меню и кликните на Скачать файл с ошибками.
Вы получите файл формата Excel. В нём будет:
- код товара продавца, то есть offer id;
- номер строки, на которой находится ошибка;
описание ошибки.
Исправьте и загрузите фид повторно в личный кабинет.