Подключение по схеме DBS

Пошаговое руководство для мерчанта - от получения токена до боевого трафика.

DBS (Delivery by Seller) — схема, при которой продавец сам управляет логистикой: держит склады, задаёт зоны доставки, собирает и везёт заказ покупателю.

Что нужно сделать, чтобы подключиться

Подключение. Первый шаг нельзя пропустить: без доступов и согласованных правил витрины остальные шаги не выполняются.

ШагЧто делает мерчантМетоды
0Получает хост и токен, согласует правила и ограничения витрины—
1Создаёт склады и точки выдачиlocation/create, location/list
2Создаёт полигоны доставки и привязывает их к складамpolygon/create, polygon/bind, polygon/list
3Заводит карточки в ЛКП витрины и сверяет соответствия артикуловproduct/mapping/list
4Загружает цены и остаткиproduct/price/update, product/stock/update
5Получает новые заказыorder/dbs/list
6Ведёт заказ по статусам до DELIVEREDorder/dbs/status/update и методы ветки
7Обрабатывает отмены и возвратыcancellation/*, return/*

Шаги 1–4 делаются один раз при подключении, дальше — по мере изменений. Шаги 5–7 в повторяющемся цикле: периодически запрашивает новые заказы, обновляет их статусы, обрабатывает отмены и возвраты.

Что важно понять до первого запроса

Хост и токен выдаёт каждая витрина отдельно. В контракте стоит заглушка api.example.com. Один токен работает с одной витриной: для второй витрины нужна вторая пара «хост + токен» и отдельная запись в конфиге.

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

Webhook в API нет. Новые заказы, смены статусов, заявки на отмену и возврат мерчант опрашивает сам списками.

Один заказ DBS — один товар. В заказе нет массива позиций (это не корзина): product_id, offer_id, product_name, prices лежат в рамках 1 заказа. Отгрузок и грузомест в DBS нет — они только в FBS и FBO.

Участники

КтоРоль
МерчантПродавец. Держит склад, собирает заказ и доставляет покупателю курьером, в пункт выдачи заказов (ПВЗ), через внешнюю службу доставки (СД) или выдаёт на своей точке
ВитринаБэкенд маркетплейса. Принимает заказы, назначает склад (location_id), передаёт адрес и тип доставки, модерирует локации и полигоны
APIDBS Seller API — REST поверх HTTPS. Все методы POST, тело и ответ JSON
ПокупательОформляет заказ на витрине и там же выбирает слот доставки из интервалов полигона (time_slots)

Ветки доставки

Тип доставки приходит в заказе в поле delivery.delivery_type и определяет, по какой цепочке статусов вести заказ.

delivery_typeЧто этоЦепочка после PACKEDИнструкция
COURIERКурьер до адреса покупателяDELIVERING → DELIVEREDКурьерка
EXPRESSСрочная курьерская доставкаDELIVERING → DELIVERED + trackingExpress
PICKUP_POINTДоставка в пункт выдачиREADY_FOR_PICKUP → DELIVEREDПВЗ
CLICK_AND_COLLECTСамовывоз с точки продавцаREADY_FOR_PICKUP → DELIVEREDC&C

Отдельно стоит доставка внешней службой доставки: это не отдельный delivery_type, а способ исполнения ветки COURIER или PICKUP_POINT силами СДЭК, Boxberry и подобных — см. Внешняя СД.

Константы примеров

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

ЧтоЗначение
Склад DBSlocation_id: "wh-msk-dbs-01"
Точка самовывозаlocation_id: "cnc-msk-tverskaya-01"
Полигонpolygon_id: "poly-msk-center-01" — курьерская зона по центру Москвы
Товарoffer_id: "PHONE-001", product_id: "PRD-PHONE-01"
Дата доставки2026-06-15, слот 10:00–14:00 (выбран покупателем на витрине)
ЗаказыORD-DBS-2026-301 (смартфон, курьер), ORD-DBS-2026-302 (чайник, ПВЗ), ORD-DBS-2026-303 (наушники, C&C)

Полный справочник методов

Все методы DBS с детальными параметрами и ответами — в разделе API Reference DBS.