Сводный каталог: первая загрузка и базовая настройка

Как загрузить данные в сводный каталог Eofferix, настроить снапшот, назначить поля, создать характеристики и разложить цены и остатки по группам.

Сводный каталог — это единая товарная база внутри Eofferix. В нее можно собрать данные разных поставщиков, привести их к одной структуре, поправить карточки вручную и дальше использовать каталог как источник для выгрузок, интеграций и витрин.

Данные можно загрузить разовым файлом или создать источник, который будет обновляться автоматически: по ссылке, из 1С, из FTP/FTPS, таблиц, облачного диска, email-вложения и других поддерживаемых каналов. После загрузки Eofferix строит снапшот исходной структуры, а в нем настраиваются роли узлов, поля каталога, характеристики, преобразования, цены и остатки.

Сводный каталог Eofferix с товарами, предложениями, разделами и поиском
Сводный каталог показывает товары, предложения, разделы, цены, остатки и источник данных.

Откуда можно загрузить данные

Источник описывает, откуда Eofferix получает исходный файл или поток данных. Один и тот же каталог может наполняться несколькими источниками: например, каждый поставщик присылает свой прайс, а сервис приводит их к общей модели.

  • Файл с компьютера. Разовая загрузка XML, YML, CSV, JSON, XLS, XLSX или архива.
  • Ссылка. Получение файла по прямому URL или по ссылке с авторизацией.
  • FTP / FTPS. Автоматическое получение файла из папки поставщика.
  • Таблицы и диски. Google Sheets, Яндекс Таблицы, Google Drive и Яндекс Диск.
  • Email. Получение файла из вложения письма через IMAP.
  • 1С / CommerceML. Прием файлов обмена import.xml, offers.xml, price.xml, rests.xml и архивов.
Создание источника данных для сводного каталога
В источнике выбирается канал получения данных: файл, ссылка, FTP/FTPS, таблицы, диски, email или 1С.

Для 1С создается отдельный источник с URL обмена, логином и паролем. Эти данные указываются в настройках обмена 1С, после чего Eofferix принимает CommerceML-файлы и собирает из них рабочий источник.

Настройки источника 1С CommerceML в Eofferix
Источник 1С принимает документы каталога, предложений, цен, остатков и архивы CommerceML.

Товар, предложение и раздел

Перед настройкой важно разделять три сущности каталога. Это помогает не смешивать карточку товара, конкретное предложение поставщика и дерево категорий.

  • Товар — основная карточка: название, бренд, описание, изображения и общие характеристики. Один товар может иметь несколько предложений.
  • Предложение — строка, которую можно реально продать: конкретный артикул, цвет, размер, цена и остаток. У одного товара Футболка может быть несколько предложений:
    АртикулЦветРазмерЦенаОстаток
    11-11КрасныйM100012
    11-12СинийM90018
    11-13КрасныйXL11003
  • Раздел — ветка каталога. Отдельный узел разделов указывают, когда в исходном файле есть отдельный список категорий, например sections/section. Если путь раздела уже лежит внутри товара, например product/category, обычно проще построить дерево разделов по этому свойству и не назначать отдельный узел раздела.

Снапшот и сопоставление полей

После загрузки исходного файла Eofferix анализирует его и превращает в короткий снапшот с уникальными узлами и примерами значений. Если в документе тысяча товаров, в снапшоте будет показан один типовой повторяющийся элемент, а не тысяча одинаковых веток. На первом примере структура плоская: сразу идет товар с артикулом, названием, цветом, размером, ценой и остатком.

Простой XML-снапшот товара для настройки загрузки в сводный каталог
Простой XML-снапшот без лишних атрибутов и пометок: только типовой товар и его значения.

Роли узлов

На повторяющихся узлах задается роль: Раздел, Товар или Торговое предложение. На втором примере в исходнике разделы идут отдельным списком, товары — отдельным списком, а предложения вложены в товар. В такой структуре sections/section можно назначить разделами, products/product — товарами, а offers/offer — предложениями.

XML-снапшот со списком разделов, товаров и предложений
Когда разделы, товары и предложения находятся в разных узлах, роли задаются на соответствующих повторяющихся элементах.

Как назначить значение полю каталога

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

Анимация назначения значения sku полю артикула в сводном каталоге
В анимации значение sku назначается полю артикула, затем привязка удаляется и действие повторяется.

Характеристики вручную и пакетно

Характеристики можно создавать прямо из снапшота. Это нужно, когда поставщик присылает материал, цвет, размер, страну производства или любые другие свойства товара.

  • Вручную. Кликните нужное значение и выберите существующую характеристику или создайте новую, например Материал.
    Создание характеристики вручную из значения снапшота
    Если нужной характеристики еще нет, ее можно создать прямо из окна выбора свойства.
  • Пакетно. Если свойства приходят списком вида attributes[].name + attributes[].value, включите создание новых характеристик из источника. Тогда Eofferix сможет создавать свойства по названиям из файла.
    Анимация включения пакетного создания характеристик из источника
    Клик по кнопке характеристик открывает настройки узла, где включается создание характеристик из повторяющихся свойств.

Если поставщик не делает отдельные поля Материал, Цвет, Размер, а присылает пары «название свойства / значение», пакетное создание помогает не заводить каждую характеристику руками.

Преобразования перед загрузкой

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

Последовательные преобразования значения цены перед загрузкой в каталог
Пример правил: удалить пробелы, заменить разделитель и округлить цену перед импортом.

Что обычно делают правила:

  1. Очищают значения: удаляют пробелы, лишние символы, валютные подписи и HTML.
  2. Приводят числа к нужному формату: заменяют разделитель дробной части, округляют цену, считают наценку или скидку.
  3. Фильтруют данные: не загружают предложения без артикула, без цены, без остатка или с неподходящим брендом.
  4. Используют другие узлы: например, если brand = TestBrand, умножают цену на коэффициент, а если остаток меньше порога — не загружают предложение.

Группы цен и складов

Желательно для каждого поставщика создавать свою отдельную группу цен и группу остатков.

Группы цен в сводном каталоге Eofferix
Кнопка создания новой группы цен открывает форму для отдельной группы поставщика.

Группа остатков работает так же: обычно одна группа соответствует поставщику или складу поставщика, а внутри нее может быть несколько значений — доступно, резерв, витрина, в пути или общий остаток.

Группы остатков в сводном каталоге Eofferix
В одной группе остатков может быть несколько значений с разными кодами и приоритетами.
  • Если один поставщик присылает несколько цен, держите их в одной группе поставщика, а не создавайте отдельную группу на каждую колонку.
  • Если у поставщика несколько складов, их можно хранить как несколько значений в одной группе остатков.
  • Правила итоговой цены и итогового остатка позже выбирают, какое значение использовать в каталоге и с каким приоритетом.

Простой пример настройки

Допустим, поставщик присылает JSON с товарами, ценами, остатками и списком свойств. Для первой загрузки достаточно пройти короткий путь.

  1. Создайте источник: загрузите файл вручную или выберите канал автоматического получения данных.
  2. Откройте снапшот и назначьте массив товаров ролью Товар. Если в структуре есть отдельный массив торговых вариантов, назначьте ему роль Торговое предложение.
  3. Кликните значение sku и назначьте его артикулу поставщика. Кликните name и назначьте его названию товара.
  4. Для цены добавьте преобразования: удалить пробелы, заменить разделитель, округлить значение. При необходимости добавьте условия по бренду, остатку или активности товара.
  5. Создайте для поставщика отдельную группу цен и отдельную группу остатков.
  6. Запустите импорт и проверьте в сводном каталоге товары, предложения, разделы, цены и остатки.