Получение заказа на доставку
/delivery/order
Метод получает данные о ранее созданном заказе на доставку по его идентификатору.
Параметр | Тип | Описание |
---|---|---|
key | string | Ключ доступа |
service | string |
Код службы доставки.
Доступны значения: sdek, dpd, iml, kit, zde, ozon, pecom, postrf, baikal, delline, vozovoz, boxberry, energija, fivepost, pickpoint, sberlogistics. |
action | string | Значение: get |
order_id | string | Идентификатор заказа в системе транспортной компании |
Параметры, отмеченные , - обязательны.
curl --request POST 'https://api.esplc.ru/delivery/order' \
--header 'Content-Type: application/json' \
--data-raw '{ "key": "a2275ee6a7f268682fb553db39ff16d6", "service":"sdek", "order_id":"xxxxxxxx", "action": "get" }'
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.esplc.ru/delivery/order',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => ['key' => 'a22752e6a73238684fb753db39ff16b6', 'service' => 'sdek', 'order_id' => 'xxxxxxxx', 'action' => 'get'],
]);
$response = curl_exec($curl);
curl_close($curl);
print_r(json_decode($response,1));
При успешном запросе значение http_status
будет равно 200.
В ответе будут массивы с данными заказа order
и его состояния state
.
Именно на значение state.status
нужно ориентироваться как на статус заказа. Используется список статусов, принятый у нас в качестве базового (списко указан ниже).
Если заказ создан без ошибок, то массив state будет содержать:
state.number
- номер заказаstate.cost
- стоимость доставкиstate.tracking
- ссылка на отслеживание (если возможно для выбранной ТК)state.print
- ссылка на этикетки (если возможно для выбранной ТК)
Также в ответе присутствует state.service_status
- это статус заказа, присвоенный непосредственно внутри транспортной компании.
Его можно использовать для уточнения данных о движении груза или вместо базового статуса.
Базовые статусы заказа объединяют в небольшой список все возможные варианты всех транспортных компаний.
Возможные базовые статусы заказа:
В случае неудачи, код ответа будет 4XX (например - 422); в ответе будет массив errors
, содержащий описание ошибок.
{
"http_status": 200,
"http_status_message": "",
"data": {
"order": {
"uuid": "72753031-a860-4044-95c7-81f9735e2678",
"type": 1,
"number": "12345",
"tariff_code": 2,
"comment": "Комментарий",
// ...
},
"state": {
"status": {
"code": "created",
"description": "Загружен в ЛК перевозчика"
},
"service_status": {
"code": "CREATED",
"description": "Заказ создан в информационной системе СДЭК и прошел необходимые валидации"
},
"number": "1378315065",
"cost": 8409.80,
"tracking": "https://..."
}
}
}