Классическая ситуация селлера: один физический склад, товар выставлен и на Ozon, и на Wildberries. Утром на WB заказали последние три единицы, а днём те же три единицы купили на Ozon. Итог — отмена заказа, падение метрик и недовольный покупатель. Разбираем, как синхронизировать остатки и не наступать на эти грабли.
Чем опасен overselling
Overselling — продажа товара, которого физически нет на складе. Последствия на обеих площадках неприятные:
- Отмены заказов по вине продавца ухудшают рейтинг карточки и магазина. На Wildberries высокий процент отмен напрямую влияет на видимость и может привести к ограничениям. На Ozon отмена сборки бьёт по метрикам продавца и позициям в выдаче.
- Штрафные механики. Маркетплейсы периодически пересматривают правила и вводят санкции за систематические отмены — уточняйте актуальные условия в документации площадок.
- Негативные отзывы. Даже после отмены покупатель может оставить отзыв о неудачном опыте.
Почему остатки «разъезжаются»
Даже если вы добросовестно обновляете остатки, без автоматизации рассинхрон неизбежен:
- Разные схемы работы. FBO, FBS, DBS, «Склад продавца» — у каждой схемы своя логика списания и резервирования. На Ozon товар резервируется под заказ, на WB — по-своему, и эти резервы не видят друг друга.
- Задержки обновления. Вы обновили остаток на WB в 12:00, а заказ на Ozon пришёл в 12:03 по старым данным.
- Возвраты и брак. Возвращённый товар снова становится доступным, и его легко «потерять» в ручном учёте.
- Несколько складов. Если вы отгружаете на несколько складов маркетплейсов, остаток дробится, и суммарная картина без сводной таблицы теряется.
| Причина рассинхрона | Как проявляется | Что делать |
|---|---|---|
| Разные схемы FBO / FBS / DBS | Резервы под заказы одной площадки не видны другой | Вести единый учёт и вычитать резервы обеих площадок из доступного остатка |
| Задержки ручного обновления | Заказ приходит «по старым» остаткам между обновлениями | Автоматическая синхронизация каждые 15–60 минут |
| Возвраты и брак | Возвращённый товар теряется или продаётся дважды | Включать возвраты в расчёт доступного остатка |
| Несколько складов | Остаток дробится, суммарная картина теряется | Сводная таблица остатков по всем складам |
Как устроена синхронизация через API
Общая схема выглядит так:
- Источник истины. Единая точка, где лежит реальный остаток: учётная система (1С, МойСклад), Google-таблица или ваш собственный складской учёт.
- Расчёт доступного остатка. Из физического остатка вычитаются резервы под неотгруженные заказы на обеих площадках.
- Обновление на маркетплейсах. Полученное число отправляется через Ozon Seller API (методы обновления остатков на складах FBS) и WB API (Prices & Discounts / Statistics endpoints для остатков FBS) на каждую площадку.
- Повтор по расписанию. Цикл запускается каждые 15–60 минут в зависимости от оборота.
В recards.ru синхронизация остатков между Ozon и WB реализована именно по этой схеме: сервис опрашивает обе площадки, считает доступный остаток и расставляет его автоматически.

Практические рекомендации
- Держите страховой буфер. Если оборот высокий, выставляйте на площадках остаток минус 1–2 единицы — это дешёвая страховка от гонки заказов между циклами синхронизации.
- Синхронизируйте чаще при распродажах. В пиковые периоды (11.11, Чёрная пятница, предновогодний сезон) интервал стоит сократить до минимально разумного.
- Не забывайте про FBO. На складах маркетплейса остатком управляет сама площадка — синхронизация нужна в первую очередь для FBS/DBS. Но сводный учёт должен видеть обе картины.
- Обрабатывайте нули корректно. Когда товар закончился, ставьте ноль, а не удаляйте карточку — продажи возобновятся после поставки, и история карточки сохранится.
- Логируйте расхождения. Если система регулярно показывает разницу между учётным и фактическим остатком — ищите причину: несписанные возвраты, пересорт, потери на складе.
- Проводите сверку. Раз в неделю-две сравнивайте остатки в учёте с фактическими на складе и с тем, что видят площадки. Регулярная сверка ловит накопившиеся ошибки до того, как они превратятся в отменённые заказы.
Важно: закончившийся товар — это остаток «0», а не удалённая карточка. Удалённую карточку придётся создавать заново и раскручивать с нуля, а карточка с нулевым остатком сохраняет историю продаж, отзывы и позиции в выдаче.
Итог
Синхронизация остатков — вопрос не удобства, а выживания магазина на двух площадках. Ручное обновление работает только при минимальных оборотах. Как только заказов становится больше нескольких в день на каждой площадке, автоматическая синхронизация через API окупается первым же предотвращённым срывом заказа.