Как конвертировать каталог в YML

Общая инструкция по конвертации XML, JSON, CSV, XLS и XLSX в YML: выбор пресета площадки, XML-снапшот, боковая подсказка, категории и проверка результата.

YML — это XML-формат товарного фида. Формат входа не важен: источником в Eofferix может быть XML, YML, JSON, CSV, XLS, XLSX, файл по ссылке или FTP/SFTP, вложение из почты, архив либо подготовленная выгрузка другого сервиса. После выбора YML сервис создаёт рабочий XML-снапшот: в нём вы настраиваете итоговую структуру и правила преобразования, а для специализированного сценария боковая панель помогает проверить требования выбранной площадки.

Порядок настройки экспорта в YML

  1. Откройте «Интерпретатор» и нажмите «Новый профиль».
    Кнопка «Новый профиль» в Интерпретаторе Eofferix
    Красной рамкой выделена кнопка «Новый профиль».
  2. Выберите источник данных: загрузите новый файл или выберите существующий источник.
    Выбор источника данных для профиля в Eofferix
    Красной рамкой выделены варианты выбора источника данных.
  3. В формате выгрузки выберите YML.
    Выбор YML как формата выгрузки в Eofferix
    Красной рамкой выделен формат YML.
  4. Если нужен не универсальный файл, выберите площадку или сценарий. По умолчанию используется Универсальный YML.
    Выбор площадки или сценария YML в Eofferix
    Красной рамкой выделено поле выбора площадки или сценария YML.
  5. Прокрутите страницу профиля вниз и нажмите Продолжить. Сервис сохранит профиль и откроет XML-снапшот с узлами источника и созданной YML-структурой. Знаком ! отмечены узлы, обязательные для выбранной площадки.
    Кнопка «Продолжить» в нижней панели профиля Eofferix
    Кнопка «Продолжить» находится в правом нижнем углу страницы профиля.
  6. Кликайте по подсказкам в правой панели, чтобы применить найденные переименования или создать недостающие узлы. Сложные правила необходимо настраивать вручную.
  7. Сохраните шаблон и запустите выгрузку.

Как обновлять YML автоматически

Для регулярного фида не нужно каждый раз загружать исходный файл и запускать конвертацию вручную. Подключите источник, который Eofferix может проверять автоматически: прямую ссылку, FTP/FTPS, вложение из почты, Google Таблицы или Яндекс Таблицы, облачный диск. Как создать и проверить профиль, описано в статье «Первый запуск профиля», а получение новых версий исходника — в статье «Периодичность загрузки источника».

  1. Источник получает свежий прайс или каталог по своему расписанию.
  2. После успешного обновления профиль запускается по событию, применяет сохранённые сопоставления, преобразования и выбранный пресет YML.
  3. Готовый файл публикуется по постоянной ссылке, которую можно передать площадке: при каждом успешном запуске содержимое по этой ссылке обновляется.

Последовательность «обновить источник → сформировать YML» настраивается по статье «Планировщик профилей и источников». Постоянная ссылка и отправка результата описаны в статье «Доставка результата после преобразований».

Как работать с боковой панелью

Для выбранной площадки редактор показывает справа проверку текущего шаблона. Требования разделены на каркас, обязательные, условно обязательные, рекомендуемые, неподдерживаемые и обработанные свойства. Зелёная галка означает, что пункт выполнен; знак ! требует внимания; значок информации объясняет рекомендацию и сам по себе ничего не меняет.

Панель не применяет предложенные исправления молча. Кнопки действий срабатывают только после клика. Наведите на иконку, чтобы увидеть подсказку.

Что делать со свойствами, которые не поддерживаются площадкой

Здесь собраны свойства исходного каталога, которых нет в требованиях выбранной площадки. Для каждого простого свойства доступны действия:

  • Удалить — не передавать свойство при выгрузке;
  • Конвертировать — преобразовать его в <param name="название_свойства">значение</param>. Иконка показывается только для площадок, формат которых поддерживает param.

После удаления или конвертации строка исчезает из списка требующих внимания и переходит в свёрнутый раздел «Обработанные поля». У каждого обработанного свойства есть собственная иконка отмены: можно вернуть именно это действие, не сбрасывая остальные настройки.

Удаление или преобразование неподдерживаемого площадкой свойства в параметр YML
Красным кругом выделена волшебная палочка: она преобразует свойство в param. Корзина рядом исключает свойство из выгрузки.

Работа с категориями

Категории нужны не каждой площадке. Если выбранный сценарий их не требует, раздел категорий можно пропустить. Если требует, редактор поддерживает разные варианты исходных данных:

  • в каталоге уже есть идентификаторы категорий и отдельный справочник — сохраните связь между categories/category/@id и offer/categoryId, а панель проверит её;
  • в каждом товаре есть только название или путь категории — выберите это свойство в «Категориях товаров», и Eofferix создаст числовые ID, соберёт справочник categories и заполнит categoryId автоматически;
  • категории находятся в другом месте, вложены иначе или площадке нужна другая структура — создайте, перенесите или укажите нужные узлы вручную.

Категория в исходнике может находиться внутри товара или отдельно от него; итоговую структуру определяют требования выбранной площадки.

Полная проверка не запускается после каждой правки. Нажмите «Проверить все товары», когда настройка готова. После изменений используйте «Перепроверить», а если длинная проверка была прервана — «Продолжить проверку». Поэтому даже большой каталог не приходится перепроверять после каждого действия.

Разные сценарии настройки и ручной запуск проверки категорий в редакторе YML
Красным кругом выделена кнопка проверки категорий. Полная проверка запускается только по вашей команде.

Профильные пресеты YML

Пресет не заменяет официальные правила площадки. Он помогает быстрее собрать стартовую структуру и увидеть, чего не хватает в конкретном профиле. Актуальные перечни параметров всегда проверяйте в документации сервиса, куда загружаете файл.

Подготовка YML для Яндекс.Маркет

Сценарий для кабинета продавца Маркета. Панель проверяет корень yml_catalog, дату, shop, валюты, категории, список offers и узел одного товара offer. Для Маркета обязательность полей зависит от задачи файла: карточки товаров, цены, остатки или управление размещением. В Eofferix url не считается безусловно обязательным для этого пресета, а показывается как условно важное поле. См. документация Яндекс.Маркета по YML.

Подготовка YML для Яндекс Товары / Поиск

Сценарий для товарного фида, который помогает товарам попасть в Яндекс Поиск и связанные поверхности Яндекса. Панель требует id, name, url, price, currencyId, categoryId, picture и description внутри каждого offer. См. документация Яндекс Товаров по товарному фиду.

Подготовка YML для Яндекс.Директ

Сценарий для рекламных фидов. Важны ссылка на товар, цена, валюта, категория и изображение. Если используется атрибут available, передавайте логическое значение true или false, а не число. Для типа vendor.model дополнительно проверяются vendor и model. См. требования Яндекс.Директа к YML-фиду.

Подготовка YML для Товары и услуги Яндекс.Бизнес

Сценарий для прайс-листа компании в Яндекс.Бизнесе: товары и услуги могут отображаться в карточке компании. В этом пресете не требуется магазинный shop/url как ссылка на карточку товара; важнее раздел, название, цена, валюта, категория и поставщик/бренд, если он нужен в вашем прайсе. См. прайс-лист компании в Яндекс.Бизнесе.

Подготовка YML для 2ГИС

2ГИС принимает товары и услуги из файла или по ссылке в формате YML/CSV. Пресет собирает типовой YML-каркас с товарами, ценами, валютой и категориями, а также рекомендует ссылку, изображение и описание. Публичная справка 2ГИС описывает способ загрузки, а точный шаблон лучше сверять в личном кабинете 2ГИС. См. справка 2ГИС по товарам и ценам.

Подготовка YML для Ozon: цены и остатки

Этот сценарий не заменяет Seller API Ozon. Он нужен, когда требуется отдать файл для обновления цен и остатков по идентификатору товара. Категории здесь не обязательны: важнее id, price, currencyId и stock. См. статья Ozon про обновление через фид.

Универсальный YML

Используйте универсальный YML, если получатель просто просит файл YML без собственного набора требований. В этом режиме боковая панель специализированных требований не показывается: вы сами задаете структуру, названия узлов, атрибуты и правила преобразования.

Что проверить перед запуском

  • корень называется yml_catalog, если этого требует получатель;
  • дата каталога задана в формате RFC 3339 с часовым поясом, если сценарий требует дату;
  • shop, currencies, categories, offers и offer лежат на ожидаемых уровнях вложенности;
  • offer/@id уникален и не пустой;
  • price является числом, а currencyId совпадает с валютой в блоке currencies;
  • если получателю нужны категории, categoryId должен быть числовым и ссылаться на существующий categories/category/@id;
  • ссылки url и picture доступны снаружи, если площадка их требует;
  • available передается как true или false, если вы используете это поле;
  • тестовый файл проходит загрузчик выбранной площадки без критических ошибок.
Важно
Требования внешних сервисов меняются. В Eofferix панель помогает собрать файл и подсветить типовые ошибки, но финальная проверка всегда выполняется в кабинете площадки, которая принимает YML.