FBS-заказы
Задания загружаются через актуальный Marketplace API, а статус каждой страницы подтверждается отдельным пакетным запросом. Заказ без точного статуса не попадает в операционный журнал и не создаёт ложное действие менеджеру.
Oborot соединяет операционные API Wildberries в один рабочий экран. Команда видит точные статусы заданий, остатки по складам и размерам, финансовые отчёты, заявки на возврат и готовность FBS-поставки.
Контракт проверен 28 августа 2026 года
Задания загружаются через актуальный Marketplace API, а статус каждой страницы подтверждается отдельным пакетным запросом. Заказ без точного статуса не попадает в операционный журнал и не создаёт ложное действие менеджеру.
Oborot создаёт FBS-поставку, добавляет совместимые задания, проверяет обязательные metadata и передаёт её в доставку. После закрытия менеджер получает проверенный PNG QR-кода площадки.
Карточка хранит chrtId каждого размера и штрихкоды. Запись использует конкретный склад продавца и выбранный вариант. При нескольких размерах система требует точный externalStockId и блокирует двусмысленную команду.
Текущий Finance API загружает продажи, удержания и возвраты с точными внешними ID. Заявки покупателей на возврат связываются по srid, а чувствительные ссылки на фото, видео и значения идентификаторов в metadata не сохраняются.
Wildberries использует несколько API-хостов и отдельные разрешения для заказов, контента, аналитики, финансов, поставок и отзывов. Oborot проверяет токен через официальный endpoint и публикует только подтверждённые capabilities. Сотрудник сразу видит, какой поток доступен, когда он обновлялся и какой безопасный код получила последняя ошибка.
Секрет хранится в IntegrationSecret и никогда не записывается в настройки подключения. Повторный validate обновляет capability-профиль после расширения прав или новой версии Core. Ранее загруженные данные сохраняются. Ошибка авторизации переводит соединение в auth_expired, а временная недоступность отдельного API оставляет остальные магазины и ресурсы рабочими.
Операционные FBS-заказы приходят из текущего `/api/v3/orders`. Этот ответ сам по себе не содержит статус задания, поэтому адаптер запрашивает статусы отдельной пачкой. Страница принимается только при полном соответствии ID. Сумма `convertedFinalPrice` переводится из минимальных единиц валюты, а полный адрес покупателя в доменной модели не сохраняется.
Отмена разрешена только для допустимых статусов. Перед PATCH адаптер читает актуальное состояние, после команды проверяет итоговый cancel. Повтор отменённого задания завершается идемпотентно. PNG-стикер доступен для подготовленного задания, а cross-border PDF может ждать трек-номер. Такой ответ получает retryable code, поэтому worker повторяет загрузку после управляемой паузы.
В одну поставку входят задания одного магазина с одинаковыми warehouseId, cargoType и crossBorderType. Объекты, уже назначенные в поставку, отклоняются до вызова Wildberries. Создание получает короткое имя с хешем idempotency key. Повтор находит ровно одну такую поставку, добавляет только отсутствующие задания и сверяет итоговый список ID.
Перед deliver Oborot читает metaDetails всех заданий. Решение filled или optional разрешает передачу. required, pending, error и неизвестное значение блокируют команду. UIN, IMEI, GTIN, SGTIN, срок годности и номер таможенной декларации проходят typed-валидацию. Retry сначала сравнивает значения площадки и не выполняет повторный PUT для уже сохранённой маркировки.
Аналитический отчёт остатков сохраняет точный warehouseId, регион и chrtId размера. Склад продавца для FBS задаётся отдельно, потому что идентификатор из аналитики может относиться к складу Wildberries. Обновление остатка передаёт целое amount для конкретного варианта. Это предотвращает запись в первый найденный размер и случайное обнуление соседнего предложения.
Финансовый поток использует актуальный detailed sales report и фиксированное окно. Операция получает знак продажи или возврата, reportId, rrdId и связь с заказом по srid. Повторная страница поглощается по детерминированному внешнему ID. Прибыль Oborot добавляет себестоимость и распределённый рекламный расход, сохраняя отдельный сигнал для строки без маппинга или payout.
Wildberries меняет версии и сроки отключения методов. Runtime Oborot использует текущие endpoints, а release notes и provider-контракты входят в обязательную проверку перед rollout. Отключённые методы остатков и финансов в рабочем адаптере отсутствуют.
Операции записи зависят от категории токена, статуса задания, склада, размера и требований маркировки. Массовая команда остаётся набором отдельных durable jobs. Ошибка одной позиции сохраняет результат остальных и не раскрывает сырой ответ или токен сотруднику.
Telegram подтвердит личность. Для новой компании Oborot запросит название и адрес, создаст отдельное рабочее пространство и откроет подключение магазина. Токен площадки хранится в зашифрованном хранилище.