Перейти к содержанию

Примеры интеграции с 1С

Раздел содержит типовые рекомендации для интеграции 1С с CARGO.RUN Загрузки.


1. Типовой обмен

1С может быть источником заказов или получателем заказов из CARGO.RUN.

1С создает заказы

  1. Пользователь создает заказ в 1С.
  2. 1С отправляет заказ в CARGO.RUN через POST /api/Orders/Apply.
  3. CARGO.RUN публикует заказ перевозчикам.
  4. 1С получает отклики через GET /api/Orders/GetInfo.
  5. После выбора перевозчика 1С получает исполнителя и дальнейшие статусы.

CARGO.RUN создает заказы

  1. Пользователь создает заказ в CARGO.RUN.
  2. 1С получает новые и измененные заказы через GET /api/Orders/GetIntegrationList.
  3. 1С сохраняет ID заказа CARGO.RUN у себя.
  4. 1С периодически обновляет статус и результат выполнения.

2. Хранение идентификаторов

В 1С рекомендуется хранить:

Поле Назначение
cargorunOrderId ID заказа в CARGO.RUN
externalId ID заказа в 1С
updatedAt Дата последней синхронизации
status Последний полученный статус заказа
bidStatus Последний полученный статус заявки

3. Обработка ошибок

В журнале обмена рекомендуется хранить:

  • метод API;
  • тело запроса;
  • тело ответа;
  • HTTP-код;
  • ID заказа;
  • дату и время.

Для ошибок 400 тело ответа нужно показывать администратору интеграции: обычно там указана причина, например неверное значение enum или отсутствующее обязательное поле.


4. Рекомендации

  • Не получать новый токен перед каждым запросом.
  • Использовать RefreshToken.
  • Делать polling по updatedAt.
  • Ограничивать размер страницы через $top.
  • Проверять справочники перед созданием заказа.
  • Для адресов использовать GET /api/Map/ReverseSearchAddresses.