Сергей Сорокин Обсудить задачу
← Все статьи

· Обмен с маркетплейсами

Как связать Ozon и Wildberries с сайтом на Битриксе и 1С

Обновлено

В интеграции магазина одежды с Wildberries я добавил поиск заданий, которых уже нет в списке новых. Если сотрудник взял заказ в сборку до очередного обмена, из этого списка он исчезает. Чтобы записать его на сайте и передать в 1С, интеграция дополнительно просматривает задания за последние 3 дня.

Каталог и остатки поступают из 1С на сайт. Сайт отправляет количество на площадки. Заказы поступают с площадок на сайт, затем передаются в 1С.
Направления обмена в описанном проекте. Получение заказа в 1С проверяют отдельно.

Какую работу берет на себя сайт

У этого магазина я связал с Битриксом обе площадки, Ozon и Wildberries (WB). Товар хранится у продавца, сотрудники собирают его и передают в доставку площадки. Это схема FBS. Моя интеграция отправляет количество на площадки и записывает их заказы на сайте.

Каталог и остатки уже передавались из 1С в Битрикс. Созданные на сайте заказы площадок включены в существующий обмен с 1С. Наличие заказа в Битриксе еще не подтверждает, что 1С его получила: этот этап проверяется отдельно.

Такая схема подходит не каждому магазину. Если площадки уже связаны прямо с 1С или другой программой, сначала нужно определить, кто загружает заказы и кто меняет остатки. Иначе 2 программы могут перезаписывать количество или создавать один заказ повторно.

Интеграция сайта с 1С и сервисами: порядок работы и условия

Как передаются остатки и заказы
  1. 1С → сайтКаталог и остатки поступают в Битрикс через существующий обмен.
  2. Сайт → Ozon и WBИнтеграция сопоставляет товары и передает количество для продажи со склада продавца.
  3. Ozon и WB → сайтНовые отправления и сборочные задания записываются как заказы Битрикса.
  4. Сайт → 1ССозданные заказы включены в существующий обмен с 1С.

Сначала нужно сопоставить товары

В каталоге одежды каждая пара цвета и размера имеет отдельный вариант товара. Для WB я использовал штрихкод этого варианта. Название модели не определяет, какой размер добавить в заказ. Перед подключением нужно проверить, что у каждого варианта свой штрихкод. Интеграция выбирает найденный вариант и отдельно не проверяет, есть ли другие варианты с тем же штрихкодом.

Для Ozon я сделал таблицу соответствий. Карточки, созданные через сайт, связываются по идентификатору варианта, записанному в артикуле Ozon. Для остальных карточек связь ищется по штрихкоду. Когда артикул в кабинете меняется, таблицу приходится обновлять; в коде предусмотрено обновление при незнакомом артикуле отправления.

Если штрихкод встречается у нескольких карточек Ozon и прямой связи по идентификатору нет, интеграция пропускает выгрузку количества по этой связи и отмечает ее в отчете. Пропуск не обнуляет прежние остатки этих карточек на Ozon. Сотруднику нужно исправить соответствия и проверить количество в кабинете, иначе несколько карточек могут продолжать продавать один запас.

Как заказ проходит до 1С

Одно отправление Ozon может содержать несколько товаров и количество больше 1. Если хотя бы одна позиция не найдена в каталоге сайта, интеграция пропускает отправление целиком и записывает причину. Частичный заказ не создается. После исправления связи нужно повторно обработать отправление и проверить весь состав.

На сайте сохраняется номер сборочного задания WB или отправления Ozon. Перед созданием заказа интеграция ищет этот номер среди уже записанных заказов. Это проверка для повторного запуска, а не гарантия отсутствия дублей при одновременной работе нескольких процессов.

Для каждой площадки используется своя служебная учетная запись. Источник и номер добавлены в комментарий заказа для 1С. Сотрудник склада может отличить заказ площадки от обычного заказа сайта.

По решению клиента от 3 сентября 2026 года в заказ записывается цена сайта, которая используется как оптовая в 1С. Если ее нет, берется цена площадки и пишется предупреждение. Цена продажи покупателю может быть другой. Сайт не меняет цены в кабинетах, а правила учета продажи и документов в 1С согласуются со специалистом клиента.

При отмене на площадке код отменяет связанный заказ Битрикса, если он еще не завершен и не отменен. Для этого используются штатные средства сайта. При проверке нужно убедиться, что резерв снят и отмена передана в 1С. Возврат оплаты проверяется отдельно.

Почему последнюю единицу могут купить дважды

В этой реализации на площадки передается количество из каталога Битрикса. Скрипты отдельно не вычитают из него резервы сайта и площадок. До запуска нужно выяснить, что именно приходит из 1С и как настройки Битрикса учитывают резерв. Само создание заказа не доказывает, что следующее обновление отправит свободный остаток.

В коде предусмотрен порог: если количество ниже настроенного значения, на площадку передается 0. Неактивные и недоступные варианты тоже обнуляются. Перед запуском нужно проверить порог в настройках магазина.

Между продажей и обновлением другой витрины остается задержка. Даже с порогом и резервированием площадки могут принять заказы на один запас. При нехватке товара интеграция все равно пытается создать заказ и поставить резерв. Если резерв поставить не удалось, она записывает предупреждение, но заказ может быть создан. Сотруднику нужно решить, как выполнить или отменить продажу.

Как найти заказ, которого нет на сайте

Кроме списка новых, интеграция с WB читает общий список за последние 3 дня и ищет задания с измененным статусом, которых еще нет на сайте. Отмененные задания пропускаются. После более долгого перерыва нужны отдельная сверка и восстановление пропущенного периода.

У Ozon была другая причина задержки. Запрос списка отправлений упирался в ограничение API, которым пользовалась и другая программа того же кабинета. Для получения списка отправлений интеграция использует другой запрос. Текущую работу обмена с этим кабинетом я не проверял.

При разборе начинаем с номера задания или отправления и времени появления. Нужно проверить, вернула ли площадка запись, нашлись ли товары, создался ли заказ Битрикса и получил ли его обмен с 1С. Отдельный отчет сверки показывает товары без карточки и неоднозначные штрихкоды. Повтор запроса не исправляет эти связи.

При выгрузке остатков Ozon может принять часть позиций и вернуть ошибки для остальных. Скрипт записывает ошибки отдельных позиций, но может завершиться без общей ошибки. Поэтому нужно проверять результат по позиции; завершение скрипта не подтверждает, что все количество обновлено.

Если сотрудник перенес заказ в 1С вручную во время сбоя, это нужно сообщить до восстановления обмена. Проверка номера на сайте не найдет запись, созданную только в 1С. Иначе после повторной загрузки в учетной системе может появиться второй заказ.

Что происходит с заявкой, если обмен сайта с 1С прервался

Что остается сотрудникам магазина

В этом проекте сотрудники управляют ценами в кабинетах, собирают заказы, печатают этикетки и подтверждают отгрузку. Сайт эти действия не выполняет. Работа с товарами на складах Ozon по схеме FBO в задачу не входила.

Для оценки вашей интеграции понадобятся такие сведения:

  • Склады и схемы продаж, источник количества и порядок учета резервов.
  • Связь вариантов товара с карточками площадок и программы, которые уже работают с кабинетами.
  • Путь заказа и отмены до 1С, цена для учета и сведения, нужные складу.
  • Кто исправляет связи карточек, ищет пропущенные заказы и решает вопросы при нехватке товара.

Начнем с вашей задачи

Расскажите,
что нужно сделать.

Перейти к форме

Если сайт уже работает, пришлите ссылку и опишите задачу. Для нового проекта расскажите, кто будет им пользоваться и что он должен делать.

Сергей Сорокин

Сергей СорокинВы напишете лично мне.

Удобнее связаться напрямую?

Адрес, на который можно ответить.
От 10 до 5000 символов. Ссылку на сайт можно добавить здесь.