v2.order.get_package_detail
GET/api/v2/order/get_package_detailGọi qua 360: GET https://partner.quantri360.com/v1/shopee/api/v2/order/get_package_detail
Mô tả API
Chi tiết gói hàng: trạng thái xử lý fulfillment_status (chờ / đã giao / giao thất bại), hạn gửi, mã vận đơn, dòng hàng trong gói và khả năng hủy / tách đơn.
- Mốc "đã giao / giao thất bại" của Shopee nằm ở fulfillment_status của gói, không phải order_status của đơn.
Request
Địa chỉ
GET https://partner.quantri360.com/v1/shopee/api/v2/order/get_package_detail
Xác thực & gian hàng
| Tên | Vị trí | Kiểu | Mẫu | Mô tả |
|---|---|---|---|---|
| Authorization | header | header | Bearer q360_live_ab12cd34_… | Khóa API của brand (tạo ở mục API key). Bắt buộc với mọi request. Brand suy từ key — không truyền mã brand. |
| platform_shop_id | query | string | 100001 | Gian hàng (lấy ở GET /v1/platforms → shops[].platform_shop_id). BẮT BUỘC khi brand có > 1 gian hàng trên nền tảng; 360 bỏ tham số này trước khi chuyển tiếp. |
Tham số request
| Tên | Vị trí | Kiểu | Bắt buộc | Mẫu | Mô tả |
|---|---|---|---|---|---|
| package_number_list | query | string | Có | OFG2464280000002,OFG2465060000003 | Tối đa 50 package_number (từ get_order_detail → package_list, hoặc get_shipment_list), cách nhau dấu phẩy. |
Ví dụ request
curl -s "https://partner.quantri360.com/v1/shopee/api/v2/order/get_package_detail?package_number_list=OFG2464280000002%2COFG2465060000003" \ -H "Authorization: Bearer $KEY"
Python
import requests
KEY = "q360_live_..." # khóa API của brand
r = requests.get(
"https://partner.quantri360.com/v1/shopee/api/v2/order/get_package_detail",
params={
"package_number_list": "OFG2464280000002,OFG2465060000003"
},
headers={"Authorization": f"Bearer {KEY}"},
timeout=60,
)
print(r.status_code)
print(r.json())Node.js
const KEY = 'q360_live_...'; // khóa API của brand
const url = new URL('https://partner.quantri360.com/v1/shopee/api/v2/order/get_package_detail');
for (const [k, v] of Object.entries({"package_number_list":"OFG2464280000002,OFG2465060000003"})) url.searchParams.set(k, typeof v === 'object' ? JSON.stringify(v) : String(v));
const r = await fetch(url, {
method: 'GET',
headers: { Authorization: `Bearer ${KEY}` },
});
console.log(r.status, await r.json());PHP
<?php $key = 'q360_live_...'; // khóa API của brand $url = 'https://partner.quantri360.com/v1/shopee/api/v2/order/get_package_detail' . '?' . http_build_query(['package_number_list' => 'OFG2464280000002,OFG2465060000003']); $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer ' . $key]); $res = curl_exec($ch); $status = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); echo $status, "\n", $res;
Response
Tham số phản hồi (nguyên của Shopee)
| Tên | Kiểu | Mẫu | Mô tả |
|---|---|---|---|
| request_id | string | d52ca43b277a4f9292fb8be658bfd33d | Mã request của Shopee để tra lỗi. |
| error | string | Mã lỗi Shopee; rỗng = thành công. | |
| message | string | Mô tả lỗi. | |
| response | object | Dữ liệu. | |
| package_list | object[] | Gói hàng. | |
| package_number | string | OFG2464280000002 | Mã gói. |
| order_sn | string | 2610230ABCDE03 | Mã đơn. |
| fulfillment_status | string | LOGISTICS_READY | Trạng thái gói: LOGISTICS_NOT_START · LOGISTICS_READY (chờ gửi) · LOGISTICS_REQUEST_CREATED · LOGISTICS_PICKUP_DONE (đã lấy) · LOGISTICS_DELIVERY_DONE (đã giao) · LOGISTICS_DELIVERY_FAILED (giao thất bại) · LOGISTICS_INVALID / LOGISTICS_REQUEST_CANCELED / LOGISTICS_PICKUP_FAILED… |
| update_time | timestamp | 1792807743 | Lần đổi trạng thái gần nhất — dùng làm thời điểm giao khi fulfillment_status = LOGISTICS_DELIVERY_DONE. |
| tracking_number | string | Mã vận đơn (rỗng khi chưa xác nhận gửi). | |
| shipping_carrier | string | SPX Express | ĐVVC. |
| logistics_channel_id | int | 50021 | Kênh vận chuyển. |
| ship_by_date | timestamp | 1792861199 | Hạn phải gửi hàng. |
| days_to_ship | int | 2 | Số ngày chuẩn bị hàng. |
| recipient_address | object | Người nhận — Shopee che (****) khi gian hàng không còn được xem. | |
| name | string | **** | |
| phone | string | **** | |
| full_address | string | **** | |
| item_list | object[] | Dòng hàng trong gói. | |
| item_id | int | 10000000124 | |
| model_id | int | 10000000125 | |
| item_sku | string | SDPBD3063 | SKU cha. |
| model_sku | string | SDPBD3063-Màu 1-S | SKU biến thể. |
| model_quantity | int | 1 | Số lượng. |
| product_location_id | string | VNZ | Kho xuất. |
| is_shipment_arranged | bool | false | Đã xác nhận gửi. |
| allow_self_design_awb | bool | true | Cho phép tự in phiếu gửi (xem get_shipping_document_data_info). |
| can_full_cancel_order | bool | true | Người bán còn hủy được cả đơn. |
| can_split_order | bool | false | Có thể tách gói. |
| is_pre_order | bool | false | Đơn đặt trước. |
Mẫu phản hồi
{
"error": "",
"message": "",
"response": {
"package_list": [
{
"order_sn": "2610230ABCDE03",
"package_number": "OFG2464280000002",
"fulfillment_status": "LOGISTICS_READY",
"update_time": 1792807743,
"tracking_number": "",
"days_to_ship": 2,
"ship_by_date": 1792861199,
"logistics_channel_id": 50021,
"shipping_carrier": "SPX Express",
"recipient_address": {
"name": "****",
"phone": "****",
"full_address": "****"
},
"item_list": [
{
"item_id": 10000000124,
"model_id": 10000000125,
"item_sku": "SDPBD3063",
"model_sku": "SDPBD3063-Màu 1-S",
"model_quantity": 1,
"product_location_id": "VNZ"
}
],
"allow_self_design_awb": true,
"is_shipment_arranged": false,
"can_full_cancel_order": true,
"can_split_order": false,
"is_pre_order": false
}
]
},
"request_id": "e3e3e7f35e8f7034…"
}
Mã lỗi của Shopee (11)
Bấm để xem
| Mã | Ý nghĩa |
|---|---|
| error_not_found | Không tìm thấy đơn / gói / yêu cầu theo mã đã gửi. |
| error_param | Tham số sai / thiếu / sai kiểu — xem `message` để biết tham số nào. |
| error_permission | Gian hàng không có quyền xem dữ liệu này (vd yêu cầu trả / đơn không thuộc gian hàng). |
| error_server | Lỗi hệ thống Shopee — thử lại sau ít phút. |
| error_data | Dữ liệu không tồn tại hoặc không hợp lệ cho thao tác (vd mã không có, loại yêu cầu không cho phép). |
| error_shop | Gian hàng không hợp lệ — kiểm tra platform_shop_id. |
| error_auth | Ủy quyền gian hàng cho 360 đã hết hạn hoặc bị thu hồi (360 đã tự làm mới token một lần) — chủ gian hàng kết nối lại Shopee trong Partner. |
| error_limit | Chạm hạn mức gọi Shopee trong ngày của kết nối — 360 trả kèm thời điểm thử lại; giảm tần suất gọi. |
| error_rate_limit | Gọi quá nhanh — chờ vài giây rồi gọi lại (360 cũng giới hạn theo key: 429 + Retry-After). |
| shop_banned | Gian hàng đang bị Shopee khóa — mọi API tạm ngưng tới khi gỡ khóa. |
| error_kyc_auth | Gian hàng chưa hoàn tất đăng ký người bán trên Kênh Người Bán. |
Bắt đầu dùng
- Đăng ký tài khoản Partner
- Mở loại dữ liệu thuộc nhóm Đơn hàng ở trang nền tảng
- Tạo API key (tick kênh Shopee)
- Gọi theo ví dụ ở trên