VI | EN
Nhắn Messenger
Dành cho developer

Dữ liệu tự in phiếu (booking) — API Shopee

v2.logistics.get_booking_shipping_document_data_info · gọi qua Quantri360 bằng một API key cho chính tài khoản / tài sản bạn đã kết nối và ủy quyền — 360 lo việc ký request và làm mới phiên đăng nhập bạn đã cấp.

v2.logistics.get_booking_shipping_document_data_info

POST/api/v2/logistics/get_booking_shipping_document_data_infoGọi qua 360: POST https://partner.quantri360.com/v1/shopee/api/v2/logistics/get_booking_shipping_document_data_info
Mô tả API

Dữ liệu để TỰ IN phiếu gửi hàng của booking theo mẫu riêng: mã vận đơn, mã phân loại tuyến, khu giao, khối lượng… Giống get_shipping_document_data_info nhưng cho booking.

  • Dành cho phiếu đơn xuyên biên giới; kênh nội địa có thể không dùng được.
  • Mã booking không tồn tại trả common.unknown_error, message chứa FULFILLMENT_BOOKING_DOES_NOT_EXIST.
  • Gọi bằng POST, body JSON.
  • Booking kho Shopee (warehouse booking) không lấy được dữ liệu phiếu — error_param "Can not get airway bill for warehouse booking orders".

Request

Địa chỉ

POST https://partner.quantri360.com/v1/shopee/api/v2/logistics/get_booking_shipping_document_data_info

Xác thực & gian hàng

TênVị tríKiểuMẫuMô tả
AuthorizationheaderheaderBearer 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_idquerystring100001Gian 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ênVị tríKiểuBắt buộcMẫuMô tả
booking_snbodystringCó2510280000000ABMã booking (đã sắp xếp giao, có mã vận đơn).
recipient_address_infobodyobject[]Không[{"key":"name"}]Trường người nhận muốn nhận dạng ẢNH (key: name · phone · full_address · town · district · city · state · region · zipcode); kèm style tùy chọn: text_style ["bold","italic"], font_size 1–108, text_color "#000000", image_width 0.1–30 (cm), h_align left|center|right.

Ví dụ request

curl -s -X POST "https://partner.quantri360.com/v1/shopee/api/v2/logistics/get_booking_shipping_document_data_info" \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d '{"booking_sn":"2510280000000AB","recipient_address_info":[{"key":"name"},{"key":"phone"}]}'
Python
import requests

KEY = "q360_live_..."  # khóa API của brand
r = requests.post(
    "https://partner.quantri360.com/v1/shopee/api/v2/logistics/get_booking_shipping_document_data_info",
    params={},
    json={
        "booking_sn": "2510280000000AB",
        "recipient_address_info": [
            {
                "key": "name"
            },
            {
                "key": "phone"
            }
        ]
    },
    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/logistics/get_booking_shipping_document_data_info');
for (const [k, v] of Object.entries({})) url.searchParams.set(k, typeof v === 'object' ? JSON.stringify(v) : String(v));
const r = await fetch(url, {
  method: 'POST',
  headers: { Authorization: `Bearer ${KEY}`, 'Content-Type': 'application/json' },
  body: JSON.stringify({"booking_sn":"2510280000000AB","recipient_address_info":[{"key":"name"},{"key":"phone"}]}),
});
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/logistics/get_booking_shipping_document_data_info' . '?' . http_build_query([]);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer ' . $key, 'Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{"booking_sn":"2510280000000AB","recipient_address_info":[{"key":"name"},{"key":"phone"}]}');
$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ênKiểuMẫuMô tả
request_idstringd52ca43b277a4f9292fb8be658bfd33dMã request của Shopee để tra lỗi.
errorstringMã lỗi Shopee; rỗng = thành công.
messagestringMô tả lỗi.
responseobject
shipping_document_infoobjectDữ liệu phiếu.
tracking_numberstringSPXVN060000000021Mã vận đơn ĐVVC.
shipping_carrierstringSPX Express
logistics_channel_idint50021
booking_weightint500Khối lượng tính phí (gram).
deliver_areastringQ2-PAK-06Khu giao.
create_date_ymd_slstring2026/10/28Ngày tạo.
recipient_sort_codeobjectMã phân loại tuyến phía nhận (in to trên phiếu).
first_recipient_sort_codestringHCB-51-111-Q223-N
second_recipient_sort_codestring
third_recipient_sort_codestringQ2-PAK-06
sender_sort_codeobjectMã phân loại phía gửi.
first_sender_sort_codestringHN-20-55-12550
return_sort_codeobjectMã phân loại khi hoàn.
return_first_sort_codestring
pickup_hubstringBưu cục lấy.
delivery_hubstringBưu cục giao.
zonestring
zone_codestring
is_lm_dg_boolint0Hàng nguy hiểm: 0 không · 1 có · 2 bị cấm.
dg_specific_typeint0Mức nguy hiểm (áp dụng VN) — khác 0 thì ĐVVC xử lý riêng.
recipient_address_infoobjectẢnh thông tin người nhận theo yêu cầu: {key, image} — image là PNG base64 (`data:image/png;base64,…`).

Mẫu phản hồi

{
  "request_id": "e3e3e7f35ef1bc99…",
  "error": "",
  "message": "",
  "response": {
    "shipping_document_info": {
      "tracking_number": "SPXVN060000000021",
      "shipping_carrier": "SPX Express",
      "logistics_channel_id": 50021,
      "booking_weight": 500,
      "deliver_area": "Q2-PAK-06",
      "create_date_ymd_sl": "2026/10/28",
      "recipient_sort_code": {
        "first_recipient_sort_code": "HCB-51-111-Q223-N",
        "second_recipient_sort_code": "",
        "third_recipient_sort_code": "Q2-PAK-06"
      },
      "sender_sort_code": {
        "first_sender_sort_code": "HN-20-55-12550",
        "second_sender_sort_code": "",
        "third_sender_sort_code": ""
      },
      "is_lm_dg_bool": 0
    },
    "recipient_address_info": {
      "key": "name",
      "image": "data:image/png;base64,iVBORw0KGgo…"
    }
  }
}

Mã lỗi của Shopee (10)

Bấm để xem
MãÝ nghĩa
error_paramTham số sai / thiếu / sai kiểu — xem `message` để biết tham số nào.
logistics.invalid_address_versionĐịa chỉ theo địa giới cũ không còn được hỗ trợ — cập nhật địa chỉ gian hàng trên Kênh Người Bán.
error_dataDữ 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_serverLỗi hệ thống Shopee — thử lại sau ít phút.
error_shopGian 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_limitChạ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_limitGọ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_bannedGian hàng đang bị Shopee khóa — mọi API tạm ngưng tới khi gỡ khóa.
error_kyc_authGian 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

  1. Đăng ký tài khoản Partner
  2. Mở loại dữ liệu thuộc nhóm Đơn hàng ở trang nền tảng
  3. Tạo API key (tick kênh Shopee)
  4. Gọi theo ví dụ ở trên