Обмен данными · Руководства
Обмен заказами
Создание заказа интернет-магазина, защита от дубликатов, постраничная выгрузка и получение изменившихся заказов.
Через API можно передавать заказы из интернет-магазина в SelSup и получать изменения заказов. Номер заказа во внешней системе передаётся в externalOrderId.
Интернет-магазины, OMS и службы доставки1
Создание заказа с сайта
Передайте данные заказа и список товаров методом POST /api/order/. В externalOrderId укажите номер заказа на сайте. По нему можно проверить, загружен ли заказ, прежде чем отправлять его повторно.
Если в аккаунте несколько организаций, обязательно передайте organizationId.
Предварительно сопоставьте товары сайта с товарами SelSup. Для этого загрузите их через /api/product/find и сохраните идентификаторы. В каждой позиции заказа передайте productId, количество quantity и цену price.
Перед повторным запросом найдите заказ по externalOrderId. Первый запрос мог сохраниться, даже если соединение оборвалось до получения ответа.
{
"type": "RETAIL",
"organizationId": 1,
"externalOrderId": "SHOP-12345",
"products": [
{
"productId": 1422585,
"quantity": 2,
"price": 1000
}
]
}
2
Получение списка заказов
Используйте /api/order/find. Параметр limit задаёт размер страницы, page — её номер. Для загрузки всего списка последовательно увеличивайте page.
Параметр count отвечает за подсчёт общего количества заказов по запросу. Не включайте его, если общее количество не нужно: подсчёт большого списка может занять время.
- 1
Сохраните время начала загрузки
Оно понадобится, чтобы после загрузки списка получить заказы, которые изменились за это время.
- 2
Загрузите все страницы
Сохраняйте id заказа SelSup и externalOrderId вместе с данными заказа.
- 3
Получите изменения
После загрузки списка запросите заказы с modifiedDate начиная с сохранённого времени.
Связанные методы API
GET/api/order/findНайти заказы
3
Получение изменений заказов
В ответе заказа есть поле modifiedDate — время последнего изменения. Передайте дату в одноимённом фильтре /api/order/find, чтобы получить заказы, изменившиеся начиная с этой даты.
У заказа могут измениться статус, состав товаров и другие параметры. Обновляйте сохранённые данные по id заказа SelSup.
Сохраняйте время следующей проверки только после обработки всех полученных страниц. Можно запрашивать небольшой период повторно и обновлять уже загруженные заказы по id, чтобы учесть изменения, которые произошли во время загрузки.
Передавайте дату с часовым поясом, например 2026-08-09T10:00:00Z. Буква Z означает UTC.
GET /api/order/find?modifiedDate=2026-08-09T10:00:00Z&page=1&limit=100
Authorization: YOUR_API_TOKEN
4
Обработка ошибок
- 1
Проверьте обязательные поля
Проверьте organizationId и тип заказа. В каждой позиции должны быть productId, quantity и price. Для заказов маркетплейса также проверьте service и warehouseId, если он требуется для выбранного типа.
- 2
Разделяйте временные и постоянные ошибки
Исправьте ошибочные параметры перед повторной отправкой. После сетевого сбоя сначала проверьте, сохранился ли заказ.
- 3
Выполняйте сверку
Периодически сравнивайте статусы и состав заказов в вашей системе и SelSup, чтобы найти пропущенные изменения.
Для обработки в программе используйте error. Сообщение localMessage предназначено для пользователя и зависит от его языка.