Интеграция сайта с Ozon и Wildberries: цены, остатки и заказы
Как связать свой интернет-магазин с маркетплейсами, чтобы не вести каталог дважды: что именно синхронизировать, где источник правды, чем отличаются FBO и FBS и на чём обычно ломается обмен. Отдельно — короткий раздел про службы доставки, с которыми маркетплейсы часто путают.

Типичная картина у продавца, который торгует и на своём сайте, и на маркетплейсах: появился новый товар — карточку заводят три раза, изменилась цена — правят руками в трёх местах, закончился 42-й размер — на сайте он ещё висит, и покупатель оформляет заказ на то, чего нет. Интеграция нужна, чтобы эту работу делала программа, а не менеджер по вечерам.
Ниже — как это устроено, без привязки к конкретной CMS. А в конце — что можно взять готовым.
Что именно синхронизировать
«Связать сайт с Ozon и Wildberries» — это на самом деле четыре разных потока данных, и у каждого своё направление:
- Карточки товаров — название, описание, фото, бренд, характеристики, штрихкоды, габариты. Обычно заводятся в одном месте и уходят в остальные. Самая трудоёмкая часть: у каждой площадки свои категории и свой список обязательных характеристик.
- Цены — почти всегда разные: на маркетплейсе есть комиссия и логистика, поэтому цену туда считают по правилу (наценка в процентах или рублях), а не копируют с сайта.
- Остатки — самый чувствительный поток. Если остаток не обновился вовремя, вы продаёте товар, которого нет, а площадка штрафует за отменённые заказы.
- Заказы и статусы — заказы с площадок приходят к вам, а статусы «собран», «передан в доставку» уходят обратно.
Где источник правды
Главное решение, которое нужно принять до начала работ: какая система главная для каждого потока. Если остатки одновременно правят на сайте, в 1С и в кабинете Wildberries, никакая интеграция не спасёт — данные будут перезаписывать друг друга.
Рабочие варианты:
- Учёт в 1С или МойСклад. Оттуда цены и остатки идут на сайт и на площадки, заказы со всех каналов возвращаются в учёт. Это самый надёжный вариант для магазина со складом.
- Каталог на сайте. Сайт — главная база товаров, площадки получают карточки и остатки из него. Подходит, если учётной программы нет.
- Каталог уже на маркетплейсе. Если вы начинали с Wildberries и только теперь делаете сайт, логично один раз забрать карточки оттуда, а дальше решить, кто главный.
FBO, FBS и что это меняет
Схема работы с маркетплейсом прямо влияет на то, что нужно синхронизировать:
- FBO (у Яндекс Маркета — FBY) — товар лежит на складе маркетплейса. Остаток там свой, отдельный от вашего склада, и синхронизировать его с сайтом не нужно: это две разные партии товара. Нужны карточки и цены.
- FBS — товар лежит у вас, площадка присылает заказ, вы собираете и сдаёте его. Здесь общий остаток критичен: одна и та же коробка продаётся на сайте и на площадке, и продажа в одном канале должна сразу уменьшать остаток в другом.
- DBS — товар у вас, и доставляете его тоже вы. Для обмена это похоже на FBS, плюс статусы доставки.
Если у вас смешанная схема — часть товара на складе Ozon, часть у себя — это нужно учесть в настройках, иначе остатки будут считаться дважды.
Как это подключается технически
У всех крупных площадок есть официальный API — программный доступ к кабинету продавца:
- Wildberries — токен создаётся в личном кабинете продавца в разделе доступа к API, при создании отмечаются нужные категории (контент, цены, маркетплейс и другие).
- Ozon — Client-Id и API-ключ из настроек кабинета продавца.
- Яндекс Маркет — API партнёра, доступ выдаётся в кабинете магазина.
Дальше на сайте работает обмен по расписанию: раз в несколько минут отправляет остатки, раз в час — цены, по мере появления — забирает заказы. У каждого API есть ограничения на число запросов, поэтому большой каталог выгружают порциями через очередь, а не одним рывком.
На чём обычно ломается обмен
- Нет общего идентификатора. Товары сайта и площадки нужно сопоставить по артикулу или штрихкоду. Если артикулы заводили вручную по-разному, первая неделя уходит на их приведение в порядок.
- Размеры и варианты. На Wildberries у одной карточки несколько размеров со своими остатками, а на сайте это может быть один товар с общим остатком. Если не развести остатки по размерам, вы продадите 46-й, которого нет.
- Характеристики по категории. Площадка отклоняет карточку без обязательных характеристик. Их нужно один раз сопоставить: «Цвет» на сайте → «Цвет» на площадке, значения — со словарём площадки.
- Затирание ручных правок. Обмен, который при каждом запуске перезаписывает всё, сотрёт ваши SEO-тексты, ссылки и ручные скидки на сайте. Нужно явно указать, какие поля синхронизируются, а какие остаются за вами.
- Тихие ошибки. Обмен упал ночью, а узнали об этом через неделю по отменённым заказам. У нормальной интеграции есть журнал и уведомление при сбое.
А при чём тут доставка
Маркетплейсы часто путают со службами доставки, хотя это разные задачи. Ozon и Wildberries — площадки, где вы продаёте. СДЭК, Почта России, Boxberry, Яндекс Доставка, 5Post — службы, которые везут заказы с вашего собственного сайта.
Интеграция сайта со службой доставки — это:
- карта пунктов выдачи прямо при оформлении заказа, с ценой и сроком для конкретной корзины;
- создание отправления в кабинете службы из карточки заказа, без ручного переноса адреса и веса;
- трек-номер и статус, которые сами подтягиваются в заказ и в письмо покупателю.
Подключается так же — по API и вашему договору со службой.
Что можно взять готовым
- Для OpenCart 3 я сделал модуль Wildberries Sync. Он забирает из Wildberries в магазин карточки с фото и характеристиками, цены (цена со скидкой становится акцией), остатки по каждому размеру, заказы FBS и отзывы. Можно подключить несколько кабинетов WB к одному магазину, а выборочное обновление не трогает ваши SEO-настройки и ручные скидки.
- В 100300 CMS обмен с площадками и доставкой — это модули: «Маркетплейсы» (Яндекс Маркет, Ozon, Wildberries: карточки, цены по правилам, единый остаток, заказы и статусы), «Доставка Pro» (СДЭК, Boxberry, Яндекс Доставка, 5Post на одной карте, отправления и трекинг) и обмен с МойСклад.
Если у вас другая система или нестандартная схема — например, часть товара по FBO, часть по FBS, а учёт в 1С — такую связку я собираю под задачу в рамках услуги интеграции. Про обмен с учётной программой подробнее — в статье об интеграции сайта с 1С.
Чек-лист перед стартом
- Решите, какая система главная для карточек, цен и остатков.
- Определите схему по каждой площадке: FBO, FBS или DBS.
- Проверьте, что у товаров есть единый артикул или штрихкод во всех системах.
- Сформулируйте правила цен для каждой площадки: наценка, округление, минимальная цена.
- Выпустите токены API с нужными правами и не передавайте подрядчику пароль от кабинета — токена достаточно.
- Договоритесь, кто и как узнаёт об ошибках обмена.
Вопросы и ответы
Нужно ли синхронизировать остатки, если я работаю с Wildberries по FBO?
Можно ли поставить на маркетплейсе другую цену, чем на сайте?
Что нужно передать разработчику для подключения?
Чем интеграция с маркетплейсом отличается от интеграции со службой доставки?
Не затрёт ли обмен мои правки на сайте?
Читайте также
Автообновление цен и остатков на сайте через API
Как сделать, чтобы цены и остатки на сайте обновлялись сами — из прайса поставщика, 1С или МойСклад. Откуда брать данные, как сопоставить товары, как часто обновлять и какие страховки поставить, чтобы один кривой файл не обнулил весь каталог.
Интеграция сайта с 1С: сроки, этапы и подводные камни
Как на практике устроен обмен сайта с 1С: протокол CommerceML, что передаётся в каждую сторону — каталог, цены, остатки, заказы, — сколько это занимает, что подготовить в 1С до старта и на чём обмен чаще всего ломается.
Telegram-бот для интернет-магазина: функции и интеграция
Что Telegram-бот может делать для магазина: уведомлять команду о заказах, присылать покупателю статусы, показывать каталог и принимать оплату. Как связать его с сайтом на OpenCart и что в бота переносить не стоит.
Беру новые проекты
Обсудим вашу задачу?
Расскажите о проекте — перезвоню в течение рабочего дня, задам пару вопросов и назову цену и срок.
Отвечаю в течение рабочего дня