Документация / Прайс-лист и наполнение / Форматы прайсов и фидов: спецификация

Форматы прайсов и фидов: спецификация

Точные форматы для подготовки прайса: структурный Excel, фид цен/наличия (YML), фид «в пути» (YML), произвольный прайс.

Техническая спецификация для подготовки прайса в любом из поддерживаемых форматов. Пригодится тому, кто настраивает выгрузку (1С, учётная система, программист).

Поддерживаются четыре способа:

  1. Структурный прайс — Excel по шаблону (разовая/периодическая загрузка вручную).
  2. Фид «Цены и наличие» — YML по ссылке (автообновление цены/остатка).
  3. Фид «Поставки в пути» — YML по ссылке (что заказано и едет).
  4. Произвольный прайс — Excel в любом виде или YML-фид через мастер «Загрузить прайс».

Ключ сопоставления — уникальный код поставщика

Это главное поле во всех форматах. По нему Liftway находит вашу позицию в прайсе.

  • В прайсе Liftway это поле «Уникальный код поставщика» (в списке — колонка «Артикул / ID»), обычно ваш внутренний артикул/код номенклатуры (напр. M00189).
  • В Excel-шаблоне — колонка ID. В YML-фидах — атрибут <offer id="…"> (если пусто — берём <vendorCode>).

Правило: используйте один и тот же код позиции везде — в Excel, в обоих YML-фидах. Если код не совпадает, позиция не найдётся (в статистике — «пропущено»).


1. Структурный прайс (Excel по шаблону)

Кабинет → Прайс-лист → «Импорт из Excel». Файл .xls/.xlsx, до 12 МБ, заголовки в первой строке. Кнопка «Скачать шаблон .xlsx» даёт готовый образец.

Колонка Что это Обязательно
ID уникальный код позиции (ключ сопоставления) да
Name наименование да
Price цена да (для продажи)
Extendet-name расширенное (полное) наименование нет
Unit узел — сборочный узел лифта (напр. «Кабина лифта»); не единица измерения нет
Type тип / категория позиции нет
Brands марка / бренд нет
Articul артикул производителя нет
Formfactor типоразмер / форм-фактор нет
Weight вес единицы, кг (нужен для расчёта доставки) желательно
Count количество в наличии нет
Photo фото (ссылка или файл) нет
State служебная, сейчас игнорируется
  • По совпадению ID обновляются существующие позиции; новые ID заводятся как новые (на модерацию).
  • Единица измерения (шт./м/кг/л) в Excel не задаётся — её выбирают в форме карточки («Единица продажи»). Колонка Unit — это узел, а не единица.

2. Фид «Цены и наличие» (YML)

Формат YML (Yandex Market Language) — стандартный XML-фид. Обновляет только цену и наличие уже заведённых позиций; карточка (название, фото) не меняется.

Структура

<?xml version="1.0" encoding="UTF-8"?>
<yml_catalog date="2026-08-27 10:00">
  <shop>
    <offers>
      <offer id="M00189" available="true">
        <price>1234.50</price>
        <count>5</count>
      </offer>
    </offers>
  </shop>
</yml_catalog>

Поля offer

Данные Откуда берём Примечание
Код позиции атрибут id (или <vendorCode>) обязателен
Цена <price> точка или запятая; пробелы игнорируются
Наличие теги <count>, <quantity_in_stock>, <stock>, <quantity>; либо <param name> = «Наличие»/«Остаток»/«Кол-во»/«Количество»; либо атрибут available целое число
— если количества нет атрибут available available="false" → наличие 0; available="true" без числа → наличие не меняем
Актуальность цены атрибут price_actual или <param name="ЦенаАктуальна"> / <param name="ЦенаНеактуальна"> см. ниже
Срок под заказ <param name="СрокПоставки"> (также «СрокПоставкиДней», «СрокПодЗаказ», lead_time, lead_time_days) целое дней; ставится независимо от наличия

Скидка от розничной цены

Если в фиде розничная цена — в настройках фида задайте «Скидка от цены фида, %». Ваша цена = цена фида × (1 − %/100). 0 = берём цену как есть.

Актуальность цены (снятие с продажи)

Если цена устарела — не убирайте позицию из фида (это неотличимо от «позиции нет в прайсе»). Пометьте цену неактуальной — Liftway снимет позицию с продажи, а при возврате актуальной цены вернёт автоматически.

Трактуется как «цена НЕактуальна»:

  • <param name="ЦенаАктуальна"> = нет / false / 0 / no
  • <param name="ЦенаНеактуальна"> = да / true / 1
  • атрибут price_actual = false / 0 / no / нет
  • отсутствие любого флага = цена актуальна

Как показывается покупателю

Наличие ЦенаАктуальна СрокПоставки Витрина
count > 0 да В наличии N шт
нет да X Под заказ, срок X дн.
нет да Под заказ (срок уточняется)
любое нет Снято с продажи («Цена по запросу»)

3. Фид «Поставки в пути» (YML)

Отдельный YML-фид — что заказано и едет к вам. На витрине такие позиции — «В пути · прибудет ДД.ММ», даже если сейчас их нет в наличии. Фид — это снапшот: позиции нет в фиде → статус «в пути» снимается автоматически.

Структура

<?xml version="1.0" encoding="UTF-8"?>
<yml_catalog>
  <shop>
    <offers>
      <offer id="M00189">
        <count>10</count>
        <param name="ДатаПоступления">2026-09-15</param>
      </offer>
    </offers>
  </shop>
</yml_catalog>

Поля offer

Данные Откуда берём Обязательно
Код позиции атрибут id (или <vendorCode>) да
Сколько едет теги <count>, <quantity_in_stock>, <quantity>, <stock>; либо <param name> = «Количество»/«Кол-во» да — без количества позиция пропускается
Дата поступления теги <date>, <delivery-date>, <arrival>, <eta>; либо <param name> = «ДатаПоступления»/«Дата»/«ETA»/«Срок»/«СрокПоставки»/«Поступление» нет — если нет, берём «Срок доставки по умолчанию» из настроек фида

4. Произвольный прайс (мастер «Загрузить прайс»)

Кабинет → Загрузить прайс. Если формат вашего прайса не совпадает с шаблоном — загрузите файл как есть (Excel любого вида) или YML-фид по ссылке. Мастер сам распознаёт структуру и сопоставляет позиции с каталогом по OEM-коду. Подробно — Загрузить прайс: мастер импорта.

Что мастер извлекает из YML-фида по каждому offer:

  • Код поставщика — атрибут id.
  • OEM-артикул (для матча с каталогом) — <param name> вида «OEM / кросс-номера», «Артикул бренда», «Артикул производителя»; иначе <model>; иначе <vendorCode>.
  • Наименование<name> (расш. название — <name_en>), марка<vendor>, категория<param name="Категория">, страна<param name="Страна">, вес<param name="Вес, кг">, габариты<param name="Габарит A/B/C">, цена<price>, наличие — как в фиде цен, срок — «СрокПоставки».
  • Можно задать скидку от цены файла (%). Совпавшие по OEM позиции добавляются сразу; без совпадения — заводятся карточкой (на модерацию).

Для произвольного фида важнее всего OEM-артикул (по нему идёт матч) и код поставщика (по нему потом работает автообновление).


Частые ошибки

  • Много «пропущено» — коды в фиде не совпадают с кодами позиций в прайсе. Проверьте, что <offer id> = ваш «Уникальный код поставщика».
  • Цена не обновилась — проверьте флаг актуальности (не помечена ли цена неактуальной) и что <price> — число.
  • Позиция не показывается «под заказ» — для показа под заказ цена должна быть актуальной; неактуальная цена скрывает оффер целиком.
  • Файл не разобрался — не тот формат (не YML/не Excel) или повреждён; для YML проверьте кодировку UTF-8 и корректность XML.

Операционные вопросы (подключение фида, расписание, статусы прогона) — в разделе Интеграция: автообновление прайса.