Автоматизация

Конвертер прайс-листов поставщиков в формат InSales для 4 магазинов. Преобразование 5 прайс-листов, сравнение ассортимента, контроль остатков, автоматическое создание SEO-тегов.

Задача

Четыре магазина на InSales закупались у разных поставщиков, и каждый поставщик присылал прайс-лист по-своему. Один отдавал выгрузку в Excel, другой — в CSV, третий — в XML. Совпадений между этими файлами почти не было: в одном прайсе колонка с ценой называлась «Цена», в другом — «Опт», в третьем цена вообще делилась на розничную и закупочную. Артикулы, названия товаров, единицы измерения, признак наличия — всё оформлялось по-разному. Привести пять таких файлов к единому виду руками означало каждый раз заново разбираться в чужой структуре.

При этом речь шла не о десятках позиций, а примерно о 20 000 товаров суммарно по всем магазинам. Поставщики обновляют прайсы регулярно: меняются цены, что-то уходит с остатков, появляются новые позиции. Обновлять каталог вручную под такой объём нереально — к моменту, когда менеджер закончил бы правки, данные уже устарели бы. Нужен был инструмент, который сам разбирает любой из пяти прайсов, приводит его к формату выгрузки InSales и обновляет каталоги без ручной сверки строка за строкой.

Что делает конвертер

Конвертер обрабатывает пять независимых прайс-листов от разных поставщиков. Для каждого поставщика заданы свои правила чтения файла — какие колонки считать ценой, артикулом, остатком, названием, — поэтому разница в форматах Excel, CSV и XML перестаёт быть проблемой: на выходе всегда получается единая структура, совместимая с выгрузкой InSales. Прежде чем что-то отправлять в магазин, конвертер сравнивает свежий прайс с текущим ассортиментом и раскладывает изменения по категориям, чтобы было видно, что именно поменялось у поставщика:

  • Новые товары у поставщика
  • Удаленные товары (нет в наличии)
  • Изменения цен
  • Изменения остатков

Реализация

В основе — база данных, где хранятся сами прайс-листы и история их изменений. Благодаря этому конвертер сравнивает не «файл с магазином», а новую версию прайса с предыдущей и понимает, что реально изменилось с прошлой загрузки. Управление вынесено в отдельный веб-интерфейс на Bootstrap: загрузка прайсов, просмотр различий и запуск обновления происходят через страницу, а не через ручную правку выгрузок. Обновление каталогов идёт через API InSales, настроенный под магазины проекта. Маппинг колонок каждого поставщика в поля InSales, контроль остатков и генерация SEO-тегов собраны в один проход:

  • База данных — структура для хранения прайс-листов и истории изменений
  • Интерфейс на Bootstrap — веб-страница для управления конвертером
  • API InSales — настройка для 3 магазинов
  • Контроль остатков — автоматическое изменение статуса склада
  • SEO-теги — автоматическое создание Title и Description для товаров

Контроль остатков работает как реакция на данные прайса: если позиции больше нет у поставщика, товар в магазине переводится в статус «Нет в наличии», а не удаляется, — карточка и её история сохраняются на случай возврата позиции. Для новых товаров конвертер сразу генерирует SEO-теги: Title и Description формируются автоматически, чтобы свежие карточки не уходили в каталог пустыми и были готовы к индексации без ручного заполнения по каждой из тысяч позиций.

Пример работы

Поставщик отправляет прайс-лист. Конвертер видит новый товар — добавляет в магазин. Видит, что товара больше нет на складе — меняет статус на "Нет в наличии". Цена изменилась — обновляет в каталоге.

Результат

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

  • Автоматическое обновление каталогов из прайсов поставщиков
  • Преобразование 5 форматов в единый формат InSales
  • Сравнение ассортимента и отметка изменений
  • Контроль остатков и автоматическое изменение статуса
  • Генерация SEO-тегов для новых товаров
  • Веб-интерфейс для управления

Наш конвертер прайс-листов сам поймет структуру файла поставщика, исправит ошибки и подготовит фид для InSales, Bitrix, OpenCart, Shopify, других CMS или маркетплейсов. Умный маппинг цен и артикулов , текстовые/логические/математические операторы, автоматическое обновление по расписанию по API.

Технологии

InSales API интеграция Прайс-листы База данных Bootstrap Автоматизация E-commerce