Подготовили магазин автозапчастей для торговли на Яндекс.Маркете
Клиент
Компания — дистрибьютор автозапчастей в России и СНГ.
Задача
Компания обратилась к нам с запросом выполнить интеграцию с Яндекс Маркетом, загрузить товары из прайс-листа поставщика и спарсить характеристики товара, настроить получение остатков и цен поставщиков.
Выяснилось, что ранее компания работала с готовым облачным решением, но оно не устраивало из-за высокой ежемесячной платы и невозможности настроить программу под нужды компании.
Мы предложили начать с чистой 1С:УНФ 3.0 и последовательно реализовать нужный функционал:
- Загрузка новой номенклатуры из прайс-листа поставщика, с доработкой карточки номенклатуры под специфику торговли автозапчастями. Выполнять вручную, так как клиент хочет самостоятельно выбирать, какие категории товара ему нужны в первую очередь.
- Автоматический парсинг свойств и картинок с сайта поставщика для создания новых карточек товара.
- Автоматическое обновление цен и остатков по API поставщика.
- Рассчитываются розничные цены для Яндекс Маркета через калькулятор цен, учитывающий все комиссии Маркета.
- Настройка обмена с Яндекс Маркетом.
Результат
Загрузка файлов парсинга
Настроили создание нового товара из прайс-листа поставщика. После загрузки товара автоматическое задание начинает парсинг сайта поставщика и загружает в 1С свойства и фотографии товара.
Также каждый час запускается задание на обновление цен и остатков с сайта поставщиков через REST API.
Для контроля за корректностью выполнения фоновых загрузок и расчетов добавили журнал выполнения заданий:
Расчёт цен для Яндекс Маркета
После каждого обновления цен запускается пересчет розничных цен для Яндекс Маркета по заданным формулам.
Интеграция с Яндекс Маркетом на основе стандартного модуля
Для интеграции с Яндекс Маркетом за основу взяли стандартное бесплатное расширение для интеграции. Доработали его:
- Расширили выгрузку полей товаров.
- Сделали возможность выгрузки нескольких картинок для одного товара.
- Настроили передачу квантов продаж.
- Изменили механизм передачи остатков товара: берется сумма остатков, хранящихся на складе и остатка на складе поставщика.
- Доработан механизм подтверждения заказа: наличие проверяется как по собственному остатку, так и по остатку поставщика.
Сейчас заказчик расширяет ассортимент товара, дозаполняет существующие карточки товара и начинает торговлю через Яндекс Маркет.
Ход работ и результаты
Разработка велась поэтапно.
На каждом этапе были свои сложности и подводные камни.
Изначально планировали сделать парсинг сайта поставщика через парсинг HTML страниц, однако оказалось, что поставщик использует недокументированный API к своему серверу, и с помощью него можно получать структурированные данные о товаре. Это ускорило разработку. Кроме того, такая схема стабильнее, чем разбор HTML страниц: вёрстка сайта может поменяться через какое-то время.
На этапе настройки модуля Яндекс Маркета выяснилось, что данные по картинкам передаются неверно: выгружается только основное изображение. Не выгружались кванты продаж и артикул поставщика. Соответственно, объём работ увеличился.
Выполнение работы затянулось из-за сбоя в сервисе аренды 1С, где была размещена база клиента.
Запустили проект за 1 месяц.