Créer et gérer les expéditions internationales

POST /v1/fulfillment/shipments/create {#create}

Mêmes champs principaux que prévisualisation, plus en option :

  • external_shipment_id — clé d’idempotence
  • remark

total.payment doit correspondre au total de prévisualisation :

"total": {
  "freight": { "amount": 8900, "currency": "CNY" },
  "services": { "amount": 1500, "currency": "CNY" },
  "discount": { "amount": 200, "currency": "CNY" },
  "payment": { "amount": 10200, "currency": "CNY" }
}

Retourne shipment_id et status (par ex. wait_payment).

POST /v1/fulfillment/shipments/pay {#pay}

{
  "shipment_id": "shp_01HXYZ"
}

Débite le wallet fulfillment. Solde insuffisant → INSUFFICIENT_BALANCE.

POST /v1/fulfillment/shipments/cancel {#cancel}

{
  "shipment_id": "shp_01HXYZ",
  "cancel_reason": "buyer_request"
}

POST /v1/fulfillment/shipments/detail {#detail}

{
  "shipment_id": "shp_01HXYZ"
}