Назначение

Веб-сервис предназначен для автоматизации обмена данными между складской системой БетаПро и учетной системой партнёра.

Термины

Заказчик - интегрируемый партнер БетаПро

Исполнитель - БетаПро

Документ заказчика - задание Заказчика на выполнение каких-либо работ с заказами и/или товарами

Документ исполнителя - отчет Исполнителя о выполнении работ с заказами и/или товарами по заданию Заказчика или по возникновению внешнего события

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

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

Принцип работы

Веб-сервис работает в пассивном режиме, то есть он отвечает только на запросы Заказчика, сам при этом никогда не инициируя обмен данными.

Обмен данными с веб-сервисом происходит POST-запросами в формате XML на адрес веб-сервиса. В ответ на запросы приходит пакет в формате XML, содержащий флаг успешного выполнения запроса и запрошенные данные, либо флаг ошибки и описание произошедшей ошибки.

Рекомендуемая схема работы с веб-сервисом

  1. Только для работы по схеме фулфилмент. Перед началом работы с заказами необходимо оприходовать товары на складе Исполнителя. Для этого Заказчик запросом 101 загружает документ заказчика «1 Задание на оприходование товаров», после чего фактически привозит товары на склад Исполнителя. ВАЖНО: документ заказчика на оприходование должен быть загружен в систему ДО фактического привоза товаров!
  2. Для отгрузки заказа Запросом 101 загружается документ заказчика «5 Задание на отгрузку клиентом»
  3. Периодически (рекомендуем раз в 1 час) получается список незаблокированных документов исполнителя (запрос 104 с параметром locked="0")
    Для каждого полученного этим запросом документа исполнителя необходимо:
    1. Установить блокировку данного документа исполнителя (запрос 106)
    2. Получить данные по этому документу исполнителя (запрос 105)
    3. В зависимости от типа полученного документа (документ отгрузки, документ возврата и т.п.) проставить в своей учетной системе соответствующие состояния заказов, перечисленных в документе исполнителя.
  4. При получении информации о том, что заказ был отгружен (то есть был получен документ исполнителя «6 Отгрузка клиентам», в котором упомянут заказ), можно отслеживать статусы его доставки запросом 550. До получения такого документа по заказу использовать запрос 550 для его отслеживания бессмысленно (всегда будет возвращаться state_code="0").
    При получении запросом отслеживания конечного статуса по заказу (это статусы «4 Вручение», «6 Возврат» и «7 Частичный возврат»), дальнейшее получение статусов заказа запросом 550 нужно прекратить.