Продажи на маркетплейсах: как интернет-магазину интегрироваться с Ozon и Яндекс Маркетом
Игорь Бахарев
Выход на маркетплейсы — один из трендов в развитии интернет-магазинов. Мы часто помогаем клиентам интегрировать внутренние системы с популярными маркетплейсами. В статье поделимся и опытом и расскажем о подводных камнях.
Маркетплейсы — один из наиболее востребованных каналов продаж для многих компаний. Поэтому процесс интеграции с ними является важным шагом для роста и развития бизнеса.
Мы рассмотрим основные аспекты интеграции с Ozon и Яндекс Маркетом по модели FBS. Расскажем, как можно организовать бизнес-процессы для интеграции, как объединить информацию из различных систем учёта и маркетплейсов, а также настроить автоматический обмен данных.
Статья будет полезна для всех, кто рассматривает возможность интеграции с маркетплейсами или уже столкнулся с этой задачей. Наш опыт может помочь учесть несколько важных нюансов при организации бизнес-процессов.
FBS — это модель, при которой продавец хранит товары на своём складе, сам принимает, обрабатывает заказы с маркетплейса и доставляет их в пункты приёма.
Модель работы с маркетплейсами FBS чаще более выгодна для продавцов, чем FBO. FBO — схема, при которой товары хранятся на складе маркетплейса и доставляются им же.
При работе по модели FBS будет ниже комиссия, выше уровень безопасности, больше возможностей для защиты от мошеннической деятельности и больше выбор товаров и услуг, поэтому её выбирают чаще. FBO может ограничивать выбор только конкретными товарами или услугами.
Сложности, с которыми чаще всего сталкиваются при интеграции с маркетплейсами
1. Требования к каталогу товаров
У каждого маркетплейса есть законодательные (например, маркировка) и собственные требования к каталогу товаров. Например, Ozon требует наличия уникальных идентификаторов для каждого товара, а также набор характеристик: правильное описание товара для площадки и его название, особые правила указания типа и категории товаров и другое. Посмотреть требования к данным о товарах на Ozon можно тут.
У Яндекс Маркета есть свой набор требований к описанию товаров. Характеристики товара бывают двух типов:
-
общие для всех магазинов. Например, один и тот же товар во всех магазинах называется одинаково и имеет один и тот же вес.
-
определяющие условия продажи, могут отличаться в разных магазинах. Например, в каждом магазине своя цена или режим поставок.
Подробнее изучить требования к данным о товарах на Яндекс Маркете можно тут.
Перед интеграцией необходимо подготовить каталог товаров с учётом требований каждого маркетплейса.
Важный нюанс — передаваемый каталог должен соответствовать структуре разделов маркетплейса. Часто категории товаров в интернет-магазине могут не совпадать с категориями маркетплейса. Такого быть не должно. Адаптация категорий под структуру каталога маркетплейса может быть весьма ресурсозатратной и не всегда решается на стороне разработчика. Например, когда нужно рассортировать несколько десятков тысяч товаров по новым категориям.
2. Управление заказами и доставкой
Для работы с заказами используют личный кабинет поставщика. Для его корректной работы нужно настроить процессы обработки заказов, отслеживания статусов и управление доставкой. Это может оказаться сложной задачей для компаний, у которых нет опыта в работе с маркетплейсами.
Например, один из подводных камней — возвраты и замены. Часто есть требование, что они должны обрабатываться вручную. Контур возвратов у обоих маркетплейсов не интегрируется, поэтому важно знать, что под эти процессы нужно будет выстраивать отдельные механизмы работы и не терять их из вида.
3. Тайминг заказа
У маркетплейсов довольно строгие правила по срокам обработки заказов. На каждый этап обработки выделяется определенное количество минут, часов или дней. Доступность сервиса для обмена данных проверяется раз в несколько минут. Если сроки этапа будут нарушены или сервис не будет доступен, то можно получить временное отключение магазина или штраф.
Выход на маркетплейс — это не просто сделать выгрузку товаров и работать в привычном ритме. Нужно быть готовым к изменениям контура работы с заказами. Маркетплейсы требуют оперативно обновлять все данные. Например, заказ Яндекса должны принять в течение 15 минут. Что для этого надо? Не должно быть отмен, пересортицы (ситуация, когда возникает избыток определенного вида товара одной категории при недостатке другого вида товара той же категории) и т.д. Товар должен быть в наличии в текущий момент времени без риска внезапно закончиться на складе продавца. Для этого можно реализовать такую фичу: если количество товара меньше Х и его могут купить в любую минуту в другом месте, то он снимается с маркетплейса. Также мы добавили временные лимиты на подтверждение и отгрузку заказов. Часть функциональности у заказчика отвечает за то, чтобы критически важные статусы всегда приходили вовремя. Дополнительно Яндекс Маркет на этапе оформления заказа опрашивает CMS с целью уточнения актуальности данных по товарному набору, в том числе соответствие остатков в корзине покупателя и на складе.
Для бизнеса такие нюансы очень критичны, а они не всегда лежат на поверхности инструкций.
Пример интеграции
Заказчик решил работать с Ozon и Яндекс Маркетом по модели FBS (fulfillment by seller). Для эффективной торговли со своего склада требуется правильная и надёжная интеграция интернет-магазина с API.
Мы провели несколько предварительных встреч с заказчиком, проработали необходимые изменения в бизнес-процессах, обозначили и зафиксировали все этапы и задачи, запустили процесс интеграции.
Этапы интеграции
1. Аналитика и формулирование требований. Команда Creonit при участии специалистов заказчика составила ТЗ, в котором описала, как будет проходить интеграция, спрогнозировала сроки реализации проекта. Прорешали организационные вопросы на всех этапах взаимодействия с заказом в несколько итераций. Мы с заказчиком прорисовали схемы бизнес-процессов для этого контура заказов: кто, когда и какие действия должен выполнять. Далее составляли ТЗ на то, что делает сервис: где нужно доработать административную панель заказов, интеграций и в целом все детали передачи данных между нами, сервисами клиента и маркетплейсами.
2. Интеграция. Интегрировали системы заказчика с маркетплейсами. Сначала клиент вносил необходимые изменения по итогу протокола интеграции изменения. Интеграция была двойной: наш сервис получает и отдаёт данные в системы клиента и наш сервис получает и отдаёт данные в маркетплейс.
3. Отладка. Тестирование и исправление багов. Приемка функциональности самим маркетплейсом: проверка каталога, проверка работы заказа и другое.
4. Приёмка проекта. Запустили функциональность в продакшн, провели тестирование после релиза.
Мы интегрировали интернет-магазин заказчика с маркетплейсами по очереди: сначала с Яндекс Маркетом, а затем с Ozon.
Как наладить/организовать/реализовать обмен данными между системами учёта и маркетплейсами
Есть сущность обмена:
-
товарные карточки: их нужно заполнять и привязывать к категориям.
-
остатки: их нужно передавать и актуализировать раз в несколько минут.
-
заказы: получать их и обрабатывать нужно согласно регламенту маркетплейса.
Мы настроили обмен данных с помощью кастомной CMS. У Ozon и Яндекс Маркета всегда должна быть актуальная информация о количестве доступных товаров заказчика. Для передачи этой информации, API Ozon и API Яндекс Маркета объединяют ее из внутренних систем заказчика с процессами в личном кабинете Ozon и Яндекс Маркета.
Мы синхронизировали данные заказчика и маркетплейсов с помощью CMS, которая выступает в качестве агрегатора данных по товарам и системы для работы с заказами. Заказчик использует несколько сервисов:
-
SAP — ERP-система. Формирует список товаров, доступных для реализации на Ozon и Яндекс Маркете, с ценами и базовыми характеристиками.
-
Infor — система управления заказами (склад). С её помощью сотрудники набирают, упаковывают, маркируют товары и заказы, отгружают их.
-
Art-Trade — система автоматизации розничной торговли. Передаёт в CMS расширенную информацию о товаре: название, изображения, описание, характеристики.
CMS отвечает за взаимодействие сотрудников и систем учёта заказчика и маркетплейсов. Она автоматизирует загрузку товаров и обновление информации об остатках, агрегирует данные из всех вышеперечисленных систем и отправляет их в Ozon и Яндекс Маркет. Обновляются изменяемые данные очень часто, поэтому маркетплейсы вовремя получают данные о товарах, их характеристиках, изменениях цен, товарных остатках, статусах заказов (в реальном времени, изменился статус – мгновенное обновление), поэтому информация на витринах маркетплейсов всегда актуальна.
Данные сразу попадают в базу данных, так как CMS агрегирует их из других систем продавца и валидация данных происходит там.
Благодаря интеграции по API:
1. Не нужно менять цены вручную в личном кабинете Ozon или Яндекс Маркета и контролировать их. Данные об изменениях цен автоматически подтягиваются из систем учёта заказчика и транслируются покупателям на маркетплейсе.
2. Не нужно вручную контролировать количество остатков, поскольку системы обмениваются данными, актуализируют информацию и отражают её в личном кабинете продавца и для покупателей на маркетплейсах.
3. Информация о том, какой заказ нужно собрать на складе маркетплейса, поступает сотрудникам автоматически. При сборке заказа сотрудники склада заказчика делают отметку «Собран» — и данные сразу отправляются в маркетплейс. Это очень удобно.
Процесс интеграции с Ozon
Реализацию проекта начали со сложных консультаций и обсуждений. Нужно было модернизировать ряд процессов, так как возникли проблемы, о которых сейчас расскажем подробнее.
Разные товарные категории
У заказчика много товаров и нужно точно определять для них категории. У Ozon свой список категорий, который лишь частично совпадает с категориями товаров заказчика. Неудобство в том, что товар из CMS нужно повторно прикреплять к категории вручную. И нужен человек, чтобы определять верные категории товаров в Ozon.
Товар нужно было самостоятельно привязывать к конкретному идентификатору (автоматически сейчас Ozon так делать не может). Для решения этой проблемы мы выгрузили весь список категорий и храним его на стороне CMS. Оператор дополнительно проверяет информацию о категориях товаров.
Нанесение этикеток отправлений на коробки
Для работы с заказами из Ozon склад заказчика изменил алгоритм нанесения этикеток. Заказы сначала упаковывают, затем информируют CMS, которая запрашивает у Ozon этикетку для каждой коробки, получают этикетку и передают её в Infor. Таким образом, появился дополнительный этап после упаковки заказа — передача данных и получение этикетки от Ozon. Только после этого заказ считается готовым к передаче в сортировочный пункт маркетплейса.
Для интеграции с Ozon настроили:
-
Экспорт карточек товаров в Ozon;
-
Отслеживание статуса модерации товаров;
-
Обновление остатков;
-
Получение новых заказов;
-
Упаковку заказов;
-
Отгрузку заказов;
-
Завершение/отмену заказов;
-
Перенос возвратов из Ozon в CMS заказчика;
-
Подтверждение возвратов в CMS;
-
Формирование маршрутных листов;
-
Получение этикеток для отправлений.
Информация о заказах
На момент составления ТЗ не было возможности автоматически получать информацию о новых заказах через вебхуки Ozon. Для получения информации о заказах, возвратах, модерации товаров и прочего, мы реализовали дополнительный набор команд, которые опрашивают необходимые методы с определённым интервалом. Сейчас уже появились пуш-уведомления — это огромный плюс, можно просто обрабатывать их и получать информацию.
Обязательные атрибуты
Обязательные атрибуты задаются через словарь и описывают свойства товаров: цвет, размер, бренд, материал и т.д. Нужно выполнять большое количество запросов, чтобы получить все возможные варианты заполнения атрибутов. Чтобы этого избежать, реализовали дополнительный набор команд, который получает обязательные атрибуты и варианты заполнения для них в CMS заказчика. В Ozon есть лимиты на количество запросов, поэтому их нужно растягивать во времени.
Обновление информации о товаре
Невозможно было автоматически обновлять часть полей карточки товара — нужно отправлять в Ozon всю информацию о товаре при каждом обновлении. Заказчику было удобно, чтобы общая информация (картинки, описание, цены) подтягивалась из CMS, а часть полей (характеристики, размеры) выгружалась из шаблона. Но то, что загружалось через API, переписывалось тем, что выгружается из шаблона, и наоборот. Полную информацию о товаре из двух источников подтягивать было нельзя. Поэтому мы реализовали дополнительную функциональность и сделали так, что запрос Ozon с целью получения информации о товаре (той, которую заказчик загрузил из шаблона) агрегируется и уже полную информацию о товаре мы выгружаем в Ozon.
Интеграция с Яндекс Маркетом
Главной задачей было совместить текущие бизнес-процессы онлайн-продаж с новым направлением работы — торговлей на Яндекс Маркете. Для этого мы с заказчиком проработали отдельный бизнес-процесс под схему продаж на маркетплейсе по модели FBS.
CMS выступает в качестве связующего звена с несколькими системами учёта: SAP, Infor, ART-TRADE. Всё взаимодействие этих трех компонентов с CMS происходит через обмен электронными документами по FTP.
Интеграция с этими системами уже была, мы частично переиспользовали ранее реализованную функциональность для настройки выделенного под маркетплейс контура.
Это работает так: SAP присылает каталог, автоматически из ART-TRADE подтягиваются описания и картинки товаров, из SAP с нового склада для Яндекс Маркета подтягиваем количество остатков и отдаём эту информацию в систему отгрузки по заказам Яндекса.
Дополнительно для заказов из Яндекс Маркета мы сделали отдельный модуль в админке для операторов этого направления. Он позволяет операторам работать в привычной им экосистеме с заказами из Яндекс Маркета.
CMS выступает центральным узлом для обмена данными между Яндексом, системой управления заказами и системами учёта.
Триггеры
При интеграции с маркетплейсами по API, триггеры являются важным инструментом для автоматизации процессов и управления данными. Триггеры позволяют запускать определенные действия автоматически, когда происходят определенные события.
Например, при получении нового заказа на маркетплейсе через API, триггер может автоматически создать соответствующий заказ в системе управления заказами. Это позволяет сократить время на обработку заказов и снизить вероятность ошибок.
Также, триггеры могут быть использованы для автоматического обновления товаров на маркетплейсе. Например, при изменении цены или описания товара в системе управления товаром, триггер может автоматически обновить соответствующий товар на маркетплейсе через API.
Триггеры в Ozon
При подключении API к внутренним системам заказчика, команда Creonit создала в их CMS несколько триггеров, на которых построены события. Если произошло событие А, запускается цепочка событий B. Расскажем, как работают два наиболее сложных из них.
Создание нового отправления в Ozon.
Когда команда заказчика запрашивает информацию о необработанных отправлениях, то:
1. происходит проверка остатков;
2. создаётся корзина заказа в CMS;
3. создаётся заказ в CMS;
4. фиксируются данные получателя, даты отгрузки и доставки;
5. создаётся отгрузка в CMS;
6. происходит формирование уведомления для Infor.
Упаковка заказа.
Когда пользователь заказывает товар на OZON, заказчик получает информацию об этом заказе и приступает к упаковке заказа.
1. получение от Infor документа об упаковке заказа;
2. проверка товаров для отгрузки (все ли товары упакованы);
3. разделение товаров на коробки;
4. проверка маркировок товаров (если есть);
5. передача команды «Собрать заказ» в Ozon с перечнем упакованных товаров;
6. фиксация количества отправлений;
7. изменение статуса отгрузки в CMS;
8. запрос этикетки для каждого отправления;
9. передача этикетки в Infor;
10. получение от Infor документа об упаковке заказа;
Триггеры в Яндекс Маркете
К основным триггерам можно отнести изменение товара, упаковку заказа, подтверждение заказа складом и другие.
1) При изменении информации о товаре (изображения, характеристики, описания, цены) со стороны SAP или ART-TRADE, товар попадает в очередь на обновление товара в маркете. По техническому заданию такое обновление происходит раз в сутки.
2) При получении уведомления от Infor об упаковке заказа, происходит операция завершения сборки заказа. Если в заказе есть маркированные товары, то в маркет передается маркировка. Товары некоторых категорий в России отслеживаются с помощью системы «Честный знак». Производитель или импортер закрепляет на каждой единице товара индивидуальный код — маркировку. Она фиксируется на всех этапах и печатается на покупательском чеке.
Какие проблемы решает интеграция и какие процессы помогает упростить
Для заказчика мы интегрировались через API Яндекс Маркета. Интеграция помогла автоматизировать работу с заказами, товарами и остатками.
-
Объединение данных. Интеграция с Яндекс Маркетом происходит из одного места (CMS), а не из нескольких систем учёта (SAP, Infor, ART-TRADE).
-
Товарный ассортимент. Мы настроили всё так, что товары для Яндекс Маркета сформированы в отдельный каталог, а данные по ним обновляются автоматически.
-
Товарные остатки. CMS агрегирует информацию по данным остатков из Infor, SAP, из резервов и продаж в интернет-магазине. Яндекс получает актуальные данные от заказчика раз в сутки и при оформлении заказов.
-
Заказ. Infor работает с заказом из маркетплейса, как с обычным заказом интернет-магазина. Склад и работники у магазина одни, их не нужно переучивать под работу личного кабинета в Яндекс Маркете. Операторы проводят у себя заказ как любой другой, а система отправляет в Яндекс Маркет все обновления самостоятельно.
-
Маршрутные листы, информация по заказам. Всё работает по аналогии с привычным процессом работы с заказами компании. Для этого мы сделали копию модуля заказов и модифицировали его под бизнес-процесс работы с маркетплейсом: убрали лишнее, добавили то, что нужно клиенту для работы с заказами оттуда.
Итого
Интегрировались с Яндекс Маркетом и Ozon и проработали схему бизнес-процессов заказчика под интеграции. Провалидировали их работу со всеми системами, планировали доработки, которые потребовались на стороне CMS для корректной работы с точки зрения гайдлайнов Яндекс Маркета и Ozon. Помогли объединить информацию в единой CMS, которая обменивается данными с маркетплейсами и сразу тремя системами учёта. Благодаря этому передача заказов с маркетплейсов, оформление всех сопутствующих документов и пересчёт остатков происходит автоматически. Благодаря API удалось оптимизировать работу с заказами, обновление остатков и цен, загрузку товаров в личный кабинет продавца на Ozon, что важно для управления широким ассортиментом.
Рекомендации для тех, кто планирует интегрироваться с маркетплейсами. Что стоит учесть при подготовке к интеграции интернет-магазина с маркетплейсами.
-
Требования к каталогу. У маркетплейсов есть законодательные и собственные требования к каталогу товаров. Перед интеграцией нужно подготовить каталог товаров с учётом требований.
-
Управление заказами и доставкой. Для корректной работы с личным кабинетом поставщика нужно настроить процессы обработки заказов, отслеживания статусов и управление доставкой. Возвраты и замены могут потребовать ручной обработки, так как контур возвратов не интегрируется с маркетплейсами. Важно помнить, что для этих процессов нужно разработать отдельные механизмы работы.
-
Тайминг заказа. На каждый этап обработки заказа выделяется определенное количество минут, часов или дней. Доступность сервиса для обмена данных проверяется раз в несколько минут. Если сроки этапа будут нарушены или сервис не будет доступен, то можно получить временное отключение магазина или штраф.
-
Обновление информации о товаре. Нельзя автоматически обновить часть полей карточки товаров. При наличии обновлений нужно передавать в маркетплейс полную информацию из карточки.
-
Обязательные атрибуты. Чтобы не выполнять большое количество запросов, для получения всех возможных вариантов заполнения атрибутов, можно реализовать дополнительный набор команд. Он будет получать обязательные атрибуты и варианты заполнения для них в CMS. В Ozon есть лимиты на количество запросов, поэтому их нужно растягивать по времени.
-
Разные товарные категории. На маркетплейсах свой список категорий, который лишь частично совпадает с категориями товаров интернет-магазинов. Товар нужно вручную привязывать к конкретному идентификатору. Для решения этой проблемы можно выгрузить весь список категорий и хранить его на стороне CMS.
-
Нанесение этикеток отправлений на коробки. Для работы с заказами из Ozon склад заказчика изменил алгоритм нанесения этикеток. Заказы сначала упаковывают, затем информируют CMS, которая запрашивает у Ozon этикетку для каждой коробки, получают этикетку и передают её в Infor. Таким образом, появился дополнительный этап после упаковки заказа — передача данных и получение этикетки от Ozon. Только после этого заказ считается готовым к передаче в сортировочный пункт маркетплейса.
-
Триггеры. Триггеры позволяют запускать определенные действия автоматически, когда происходят определенные события. Их можно и нужно использовать для автоматического обновления товаров на маркетплейсе. Например, при изменении цены или описания товара в системе управления товаром, триггер может автоматически обновить соответствующий товар на маркетплейсе.
Подписаться на новости
Прочитаете,
когда вам будет удобно
Свежий дайджест из мира
eCommerce у вас в почте