Каталог модулей

Интеграция интернет-магазина со складом: что и когда синхронизировать

Интеграция интернет-магазина со складом: что и когда синхронизировать

Интеграция интернет-магазина со складом должна связывать не две таблицы, а весь цикл заказа: публикацию товара, проверку доступности, резерв, комплектацию, отгрузку, отмену и возврат. Если передавать только общий остаток раз в сутки, сайт продолжит продавать товар, который уже зарезервирован менеджером или находится в проблемной поставке.

Рабочая схема начинается с определения владельца каждого вида данных. Складская система отвечает за физический и доступный остаток, сайт — за действия покупателя и состав корзины, а единый контур заказов — за резерв и статус исполнения. Интеграция передаёт изменения между ними и подтверждает, что каждое изменение принято.

Сначала разделите остаток на понятные состояния

Число «на складе 12» недостаточно. Две единицы могут быть повреждены, четыре — зарезервированы под оформленные заказы, одна — ожидать решения по возврату. Для сайта доступно только то количество, которое действительно можно пообещать новому покупателю.

ПоказательЧто означаетГде используется
Физический остатокФактически находится в местах храненияИнвентаризация и складские операции
РезервВыделен под принятые заказыЗащита от повторной продажи
Недоступный остатокБрак, карантин, возврат на проверкеНе публикуется как доступный
Доступно к продажеФизический остаток минус резервы и ограниченияВитрина и проверка корзины

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

Определите единственный источник для каждого поля

Конфликты появляются, когда цену, название или остаток можно независимо изменить и на сайте, и в учётной системе. Последнее сохранение случайно перезаписывает корректные данные. Для каждого поля нужен мастер-источник и разрешённое направление передачи.

ДанныеРекомендуемый источникНаправление
SKU, единица измерения, базовое названиеКаталог или ERPВ интернет-магазин
Описание, SEO, контент витриныИнтернет-магазинОбычно не возвращается в учёт
Цена и правила скидокУтверждённый ценовой контурВ каналы продаж
Доступный остатокСкладской контурВ интернет-магазин
Заказ и контакты покупателяИнтернет-магазинВ контур исполнения
Резерв, комплектация, отгрузкаСкладской контурНа сайт и менеджеру

Не ждите ночной полной выгрузки

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

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

Что должно происходить при оформлении заказа

  1. Сайт повторно проверяет цену и доступность перед подтверждением.
  2. Создаёт заказ с уникальным внешним идентификатором.
  3. Складская система принимает заказ один раз, даже если запрос повторился.
  4. Товар резервируется, а сайт получает подтверждение резерва.
  5. Комплектация и отгрузка меняют статус заказа и уменьшают физический остаток.
  6. Отмена освобождает резерв; возврат не становится доступным до проверки.

Уникальный идентификатор и идемпотентность защищают от дублей. Если сайт не получил ответ и повторил запрос, система должна вернуть результат уже созданного заказа, а не создать второй.

Сопоставьте статусы, а не копируйте их названия

На сайте может быть статус «обрабатывается», а на складе — «ожидает комплектации», «собирается» и «проверен». Покупателю не нужны все внутренние этапы, но каждому внешнему статусу должно соответствовать определённое состояние исполнения.

СобытиеДействие со складомЧто видит канал продаж
Заказ принятСоздан резервЗаказ подтверждён
Комплектация начатаЗадание назначено сотрудникуЗаказ обрабатывается
Отгрузка подтвержденаТовар списан из места храненияПередан в доставку
Заказ отменёнРезерв снятОтменён
Возврат принят и проверенОстаток возвращён либо помещён в карантинВозврат обработан

Контролируйте ошибки как бизнес-события

Запись «обмен завершён с ошибкой» бесполезна без ответа на четыре вопроса: какой объект не передан, на каком этапе, можно ли повторить операцию и кто должен вмешаться. Ошибки цены, неизвестного SKU, отсутствия склада и недоступного товара требуют разных действий.

Для контроля нужны журнал обмена, очередь повторов, уведомление ответственному и сверка контрольных показателей: число заказов за период, сумма, количество резервов и отгрузок. Успешный HTTP-ответ ещё не доказывает, что бизнес-операция выполнена корректно.

Проверка перед запуском

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

Интеграция считается готовой не тогда, когда данные однажды успешно передались, а когда процесс выдерживает повторы, задержки, отмены и частичные сбои без ручного восстановления каждой операции. В контуре каталога Business Reactor связь товара, доступности и исполнения заказа может использоваться как единая основа для каналов продаж; до подключения важно зафиксировать правила обмена и ответственности.

интеграция интернет-магазина, склад, остатки, резервы, заказы, Business Reactor

0
26
Комментарии
Похожие статьи