快工助手跨境电商知识与商机助手

When calling "v2.logistics.ship_order" API, why do errors occur and how to resolve them?

Shopee 官方资料 · Shopee Open Platform 常见问题(FAQ) · 适合开发者

stable本次发布有变化全部展示

来自 Shopee 官方资料快照 ·

打开官方原文 ↗
  1. 当前资料结构化阅读页
  2. 固定快照已留存,可追溯
  3. 官方原文可核对
查看技术与溯源信息
平台 / profile
Shopee / profile.shopee.faq
语言
en
发布版本
cn-20260909-2
标签
zhuge/sourceplatform/shopeeaudience/developercategory/help_centertopic/apitopic/developertopic/faqtopic/feature-apistopic/logistics

资料正文

§1 When calling "v2.logistics.ship_order" API, why do errors occur and how to resolve them?

When calling "v2.logistics.ship_order" API, why do errors occur and how to resolve them?

Table of high-frequency error messages and targeted solutions is as follows:

Error TypeAPI Error MessageCauseSolution
Order Status ErrorPackage is not ready to shipWhen calling v2.logistics.ship_order, the package is not in LOGISTICS_READY status. This may occur if the package is still being allocated, or if certain prerequisites have not been fulfilledAlthough you may use v2.order.get_order_listor v2.order.get_order_detail to check whether an order is in "READY_TO_SHIP" status (Only orders in "READY_TO_SHIP" status can be shipped), we strongly recommend migrating to package-level APIs to determine shipment readiness more accurately 1) Call v2.order.search_package_list with package_status = 2 (ToProcess) and invoice_pending = false to retrieve packages that are ready to ship, and filter out the packages where is_shipment_arranged = true in the response 2) Call v2.order.get_package_detail and use the fulfillment_status and is_shipment_arranged response fields to check if the package has already been arranged shipment. If the fulfillment_status = LOGISTICS_REQUEST_CREATED, it means shipment has been arranged. Only when fulfillment_status = LOGISTICS_READY and is_shipment_arranged = false, can call the v2.logistics.ship_order to ship the package Note: There may be a short delay in updating fulfillment_status from LOGISTICS_READY to LOGISTICS_REQUEST_CREATED after arrange shipment. Therefore, when the fulfillment_status is LOGISTICS_READY, you can further determine whether shipment has been arranged via is_shipment_arranged.
This parcel has already been shippedThe package has already been arranged shipment, but calling v2.logistics.ship_order to arrange shipment again
The order is being allocated, please wait until the allocate is completedThe order is still in the process of logistics channel allocation and is not in "READY_TO_SHIP" status when calling v2.logistics.ship_order
Pending invoice data, can not arrange shipmentWhen calling v2.logistics.ship_order, the invoice has not been uploaded (for BR region, the invoice must be uploaded before shipment can be arranged)Although you may use v2.order.get_order_list to check whether an order is pending upload invoice, we strongly recommend migrating to package-level APIs to determine shipment readiness more accurately Call v2.order.search_package_listwith package_status=2 (ToProcess) and invoice_pending = false to retrieve packages that are ready to ship, and filter out the packages where is_shipment_arranged = true in the response
Fulfillment Mode ErrorYou can not ship warehouse orderFor Fulfilled By Shopee orders, Shopee handles fulfillment and the seller does not need to ship, but still calling v2.logistics.ship_orderto arrange shipmentAlthough you may use the fulfillment_flag in v2.order.get_order_detail to check whether an order is fulfilled_by_shopee, we strongly recommend migrating to package-level APIs to determine fulfillment type more accurately Call v2.order.search_package_listwith fulfillment_type = 2 (Seller) to retrieve packages that require seller shipment
Advance fulfillment matched order can not manually arrange shipmentFor Advance order, which will be automatically matched with the ready advance stock, Shopee will deliver the package to buyer, and the seller does not need to ship, but still callingv2.logistics.ship_orderto arrange shipmentCan use the advance_package and booking_sn fields in v2.order.get_order_detail to determine whether the order is Advance order. When buyer places order, system will immediately know if it's Advance order (advance_package = true/false). If it's true, seller does not need to ship the order. Once the system matches a particular booking to this order, this order status will be updated to "SHIPPED" automatically and return the corresponding booking_sn For more information about Advance Fulfillment, please refer to: https://open.shopee.com/announcements/1064
Shipping Method ErrorPlease select just one way to ship order: pickup or dropoff or non_integratedWhen calling v2.logistics.ship_order, the request either did not specify a shipment method or specified multiple methodsCall v2.logistics.get_shipping_parameter and check info_needed to identify supported shipment methods (pickup, dropoff, or non_integrated). If any method is not included in info_needed, it indicates that method is unsupported. When calling v2.logistics.ship_order, please select only a method confirmed as supported (e.g., if dropoff is missing use pickup, if pickup is missing use dropoff, etc.).
This order does not support ship with dropoffThe order does not support the dropoff shipment method, but v2.logistics.ship_orderwas called with dropoff
This order does not support ship with pickupThe order does not support the pickup shipment method, but v2.logistics.ship_order was called with pickup
This order does not support ship with non_integratedThe order does not support the non_integrated shipment method, but v2.logistics.ship_orderwas called with non_integrated.
Request Parameter ErrorWrong parameters, detail: field pickup.pickup_time_id type errorThe pickup.pickup_time_id provided in the v2.logistics.ship_order request has an invalid data typeCall v2.logistics.get_shipping_parameter and use pickup.address_list to select a supported address and use a valid address_id with the correct data type (string) when calling v2.logistics.ship_order
Parameter address_id and pickup_time_id are requiredWhen calling v2.logistics.ship_order with pickup, the address_id and pickup_time_id parameters was missingCall v2.logistics.get_shipping_parameter and check info_needed.pickup to obtain the required parameters for the pickup method. If address_id and pickup_time_id are needed, select a valid address_id from pickup.address_list and a valid pickup_time_id from the time_slot_list corresponding to that address_id, then include them in the v2.logistics.ship_order request
Invalid pickup time id. Please check the pick up time idThe pickup_time_id provided in v2.logistcs.ship_order request is not valid or not supported for this packageCall v2.logistics.get_shipping_parameter and use pickup.address_list.time_slot_list to select a supported pickup time
Pickup time is out of rangeThe pickup_time_id provided in v2.logistcs.ship_order request is not supported
Wrong parameters, detail: field pickup.address_id type errorThe pickup.address_id provided in thev2.logistics.ship_orderrequest has an invalid data typeCall v2.logistics.get_shipping_parameter and use pickup.address_list to select a supported address and use a valid address_id with the correct data type (int64) when calling v2.logistics.ship_order
Pickup address is not supportedThe pickup_address provided in v2.logistics.ship_order request is not serviceable by the logistics channel
Parameter branch_id is requiredWhen callingv2.logistics.ship_order with dropoff, the branch_id parameter was missingCall v2.logistics.get_shipping_parameter and check info_needed.dropoff for required parameters. If branch_id is required, select a valid branch_id from dropoff.branch_list and include it in the v2.logistics.ship_order request
Wrong parameters, detail: field non_integrated type errorThe pickup.pickup_time_id provided in the v2.logistics.ship_order request has an invalid data typeCall v2.logistics.get_shipping_parameter to check if info_needed contains "non_integrated" and whether info_needed.non_integrated requires tracking_no. Only when the non-integrated shipping method is supported, can pass the non_integrated parameter when calling v2.logistics.ship_order. Also, non_integrated must be of object type, if tracking_no is required, the format should be "non_integrated": {"tracking_number": "XX"}, if tracking_no is not required, the format should be "non_integrated": {}
Please request with package_number for this split orderThe order is a split order containing multiple packages, but v2.logistics.ship_order was called without providing package_numberCall v2.order.get_order_detail and check the split_up field. if it's true, means that the order is a split order. In this case, you need to call v2.logistics.ship_order separately for each package_number under package_list to ship the packages
Action RequiredYou have not set warehouseWhen calling v2.logistics.ship_order, the transit warehouse has not been set for the shop (For cross-border orders, the shipment process requires sending packages to Shopee’s transit warehouse first, so need to set transit warehouse before arrange shipment)Guide sellers to set up the required transit warehouse before calling v2.logistics.ship_order. This is necessary for cross-border shipments to route packages correctly from the seller to Shopee’s warehouse and then to the buyer
Please wait for buyer to reselect the delivery convenience storeThe buyer’s selected delivery convenience store is invalid or has expired, and the buyer needs to reselect a pickup store before shipment can be arrangedPlease guide seller to contact buyer to reselect a valid convenience store, then call the v2.logistics.ship_order to process the shipment
#