Одна единица продана дважды
На двух площадках товар показан как доступный, покупатели оформили заказ одновременно, а на складе лежит одна штука.
Выберите тему — соберём контекст
Один каталог, один остаток — сколько бы площадок у вас ни было
Пока площадка одна, хватает ручной выгрузки. Со второй начинается путаница, а с третьей — продажи товара, которого нет на складе. Строим отдельный слой обмена: каталог и остаток живут в учётной системе, а каждая площадка получает данные по своим правилам и возвращает заказы в общую очередь.
Первая площадка обычно живёт на ручной выгрузке. Проблема не в объёме работы, а в том, что остаток перестаёт быть единой величиной.
На двух площадках товар показан как доступный, покупатели оформили заказ одновременно, а на складе лежит одна штука.
Выгрузка идёт раз в сутки или запускается руками. Между двумя выгрузками площадки продают то, чего уже нет.
Описание и характеристики правят на каждой площадке отдельно. Через месяц одинаковый товар описан тремя разными способами.
Комиссии и возвраты не разложены по площадкам, поэтому непонятно, какой канал зарабатывает, а какой работает в убыток.
Ключевая строка здесь — остаток: он ходит из склада во все каналы сразу и именно на нём держится защита от продажи отсутствующего товара.
Отдельный слой обмена нужен именно для того, чтобы добавление площадки было настройкой правил, а не новым проектом.
Это не одна проверка, а набор механизмов: остаток уменьшается в момент заказа, спорные случаи разбираются явно, а не задним числом.
Разница между «скриптами под каждую площадку» и слоем обмена видна при подключении третьего канала: в первом случае пишется новая интеграция, во втором — описываются правила.
Для каждой площадки описывается, какие поля обязательны, какие единицы измерения нужны и как называются категории. Учётная система при этом не меняется.
Номенклатура, склады, контрагенты и статусы сопоставляются один раз и переиспользуются всеми каналами. Новый канал не требует повторного сопоставления.
Запросы к площадкам идут через очередь с учётом ограничений по частоте. Медленная или недоступная площадка не тормозит остальные каналы.
Видно, что ушло на какую площадку, что вернулось и что не прошло. Неудачную операцию можно повторить по конкретному каналу, не затрагивая остальные.
Порядок работ для любого нового канала. Первый шаг не требует разработки, но именно он определяет, сколько её понадобится дальше.
Какие сущности обмениваются, какие поля обязательны, чем площадка отличается от уже подключённых. Это работа на стороне каталога и учёта, а не разработка с нуля.
Номенклатура и склады связываются с идентификаторами площадки. Отдельный каталог под неё не заводится.
Обмен включается на нескольких десятках позиций: цены, остатки, заказы, статусы. Так ошибки видны до того, как канал заработает на весь ассортимент.
После проверки обмен работает по общему регламенту: очередь, повторные попытки, журнал и оповещения — как у остальных площадок.
Начинаем с инвентаризации каналов и склада: где сейчас лежит товар, чем сопоставляются позиции и как считается остаток. Схема обмена описывается до разработки — иначе расхождения закладываются в саму архитектуру.
Разбираем системы, сущности и потоки. Фиксируем, что считается источником правды и где сейчас расходятся данные.
Описываем поля, форматы, частоту и правила сопоставления справочников. Согласуем до начала разработки.
Проверяем обмен на реальных данных в ограниченном объёме: несколько десятков записей в обе стороны.
Включаем полный обмен с очередью, повторными попытками, журналом и защитой от дублей.
Мониторинг, сверка расхождений, обновление коннекторов при изменениях API на стороне сервиса.
Площадок несколько, и любая из них может изменить требования или перестать отвечать. Остальные каналы при этом должны продолжать работать.
Повторная доставка одного и того же события не создаёт вторую сделку, второй заказ или второй платёж.
Если внешняя система недоступна, операция ждёт и повторяется по расписанию, а не теряется.
Видно, что и когда ушло, что вернулось и что не прошло. Неудачную операцию можно повторить вручную.
Учитываем ограничения по частоте запросов, чтобы не получить блокировку со стороны сервиса.
Регулярная сверка ключевых сущностей между системами: расхождение видно в отчёте, а не в конце квартала.
При остановке обмена приходит уведомление ответственным, а не выясняется из жалобы клиента.
Часто эти интеграции внедряются вместе — например, CRM и телефония, или магазин и маркетплейсы.
Остатки и цены совпадают с вашим складом
Интеграция с Wildberries: выгрузка карточек, синхронизация остатков и цен, сбор заказов и статусов поставок.
ПодробнееЗаказы площадки попадают в учёт сразу
Интеграция с Ozon: товары, цены, остатки, заказы, отгрузки и отчёты по реализации.
ПодробнееКаталог и заказы в вашем контуре
Интеграция с Яндекс Маркет: каталог, цены, остатки, заказы и работа со схемами доставки.
ПодробнееЭкспортные продажи без двойного учёта
Интеграция с AliExpress: выгрузка товаров, обработка заказов, логистика и статусы отправлений.
ПодробнееМагазин и учёт показывают одно и то же
Интеграция с e-commerce платформами: товары, цены, остатки, заказы, оплаты и доставка.
ПодробнееОбмен редко ограничивается одной категорией: магазин обычно связан и со складом, и с платежами, и с маркетплейсами.
Если вашего вопроса здесь нет — задайте его в форме ниже.
Расскажите, сколько каналов уже подключено, где ведётся каталог и как сейчас считается остаток. Предложим схему единого обмена и порядок подключения.
За 3 рабочих дня разберём: где вы теряете заявки, какие каналы недооценены, и что даст рост в первые 30 дней.
Без обязательств. С конкретными цифрами.
Cookie и аналитика
Мы используем необходимые cookie для работы сайта и форм. Аналитические cookie (Яндекс.Метрика, включая запись сессий) подключаем только с вашего согласия — от него можно отказаться. Подробнее: Политика использования cookie и обработка персональных данных.