stable本次发布有变化全部展示
来自 Shopee 官方资料快照 ·
- 当前资料结构化阅读页
- 固定快照已留存,可追溯
- 官方原文可核对
资料正文
§1 v2.logistics.batch_ship_order
Use this api to batch initiate logistics including arrange pickup, dropoff or shipment for non-integrated logistic channels. Should call v2.logistics.get_shipping_parameter to fetch all required param first. It's recommended to initiate logistics one hour after the orders were placed since there is one-hour window buyer can cancel any order without request to seller.Only channel 90003 - Padrão in Brazil has the permission of this API.
§2 Overview
Overview
| Field | Value |
|---|---|
| Module | Logistics |
| API type | Shop |
| HTTP method | POST |
| Path | /api/v2/logistics/batch_ship_order |
| Production URL | https://partner.shopeemobile.com/api/v2/logistics/batch_ship_order |
| Sandbox URL | https://partner.test-stable.shopeemobile.com/api/v2/logistics/batch_ship_order |
| Rate limit | [0, 0, 0] |
| Permission | ERP System; Seller In House System; Order Management; Swam ERP |
§3 Request parameters
Request parameters
| Name | Type | Required | Sample | Description |
|---|---|---|---|---|
| order_list | object[] | Yes | The list of order. | |
| order_list.order_sn | string | Yes | 201212DCXHJUIKJ | Shopee's unique identifier for an order. Limit 150. |
| order_list.package_number | string | No | Shopee's unique identifier for the package under an order. You should't fill the field with empty string when there is't a package number. | |
| pickup | object | No | Required parameter ONLY if GetParameterForInit returns "pickup" or if GetLogisticsInfo returns "pickup" under "info_needed" for the same order. Developer should still include "pickup" field in the call even if "pickup" has empty value. | |
| pickup.address_id | int | No | The identity of address. Retrieved from shopee.logistics.GetAddress. | |
| pickup.pickup_time_id | string | No | The pickup time id. Retrieved from shopee.logistics.GetTimeSlot. | |
| pickup.tracking_number | string | No | Need input this field when "tracking_number" is returned from "info_need". Please note that this tracking number is assigned by third-party shipping carrier for item shipment. | |
| dropoff | object | No | Required parameter ONLY if GetParameterForInit returns "dropoff" or if GetLogisticsInfo returns "dropoff" under "info_needed" for the same order. Developer should still include "dropoff" field in the call even if "dropoff" has empty value. For logistic_id 80003 and 80004, both Regular and JOB shipping methods are supported. If you choose Regular shipping method, please use "tracking_no" to call Init API. If you choose JOB shipping method, please use "sender_real_name" to call Init API. Note that only one of "tracking_no" and "sender_real_name" can be selected. | |
| dropoff.branch_id | int | No | 0 | The identity of branch. Retrieved from shopee.logistics.GetBranch branch. |
| dropoff.sender_real_name | string | No | The real name of sender. | |
| dropoff.tracking_number | string | No | Need input this field when "tracking_number" is returned from "info_need". Please note that this tracking number is assigned by third-party shipping carrier for item shipment. | |
| non_integrated | object | No | Optional parameter when GetParameterForInit returns "non-integrated" or GetLogisticsInfo returns "non-integrated" under "info_needed". | |
| non_integrated.tracking_number | string | No | Optional parameter for non-integrated channel order. The tracking number assigned by the shipping carrier for item shipment. |
§4 Response parameters
Response parameters
| Name | Type | Required | Sample | Description |
|---|---|---|---|---|
| request_id | string | 3dad66f43b8447d282ae6da36626c6b7 | The identifier for an API request for error tracking. | |
| error | string | error_auth | Indicate error type if hit error. Empty if no error happened. | |
| message | string | Invalid access_token. | Indicate error details if hit error. Empty if no error happened. | |
| warning | object[] | Indicate warning message you should take care. | ||
| warning.order_sn | string | Shopee's unique identifier for an order. | ||
| warning.package_number | string | Shopee's unique identifier for the package under an order. You should't fill the field with empty string when there is't a package number. | ||
| response | object | |||
| response.result_list | object[] | |||
| response.result_list.order_sn | string | Shopee's unique identifier for an order. | ||
| response.result_list.package_number | string | Shopee's unique identifier for the package under an order. | ||
| response.result_list.fail_error | string | Indicate error type if one element hit error. | ||
| response.result_list.fail_message | string | Indicate error details if one element hit error. |
§5 Common parameters
Common parameters
| Name | Type | Required | Sample | Description |
|---|---|---|---|---|
| partner_id | int | 1 | Partner ID is assigned upon registration is successful. Required for all requests. | |
| timestamp | timestamp | 1610000000 | This is to indicate the timestamp of the request. Required for all requests. Expires in 5 minutes. | |
| access_token | string | c09222e3fc40ffb25fc947f738b1abf1 | The token for API access, using to identify your permission to the api. Valid for multiple use and expires in 4 hours. | |
| shop_id | int | 600000 | Shopee's unique identifier for a shop. Required param for most APIs. | |
| sign | string | e318d3e932719916a9f9ebb57e2011961bd47abfa54a36e040d050d8931596e2 | Signature generated by partner_id, api path, timestamp, access_token, shop_id and partner_key via HMAC-SHA256 hashing algorithm. More details: https://open.shopee.com/documents?module=87&type=2&id=58&version=2 |
§6 Request samples
Request samples
§7 Payload
Payload
{
"order_list": [
{
"order_sn": "201212DCXHJUIKJ"
},
{
"order_sn": "201212CXHQWEIKD"
}
],
"dropoff": {
"tracking_no": "",
"branch_id": 0,
"sender_real_name": ""
}
}
§8 Response sample
Response sample
§9 JSON
JSON
{
"error": "",
"message": "",
"request_id": "3dad66f43b8447d282ae6da36626c6b7",
"response": {
"result_list": [
{
"order_sn": "201212DCXHJUIKJ"
},
{
"order_sn": "201212CXHQWEIKD"
}
]
}
}
§10 Error example
Error example
§11 JSON
JSON
{
"error":"error_param",
"message":"Wrong parameters, detail: order_list is a required field.",
"request_id":"64c3649398f6c450fcd1a1f3edb8db78"
}
§12 Errors
Errors
| Error | Description | Solution |
|---|---|---|
| logistics.error_param | The order is being allocated, please wait until the allocate is completed. | |
| common.batch_api_all_failed | Failed, please check result_list for more details. | |
| logistics.error_channel_exist | Fail to find the fulfillment channel of this order. | |
| logistics.default_warehouse_not_set | You have not set warehouse. | |
| error_param | Wrong parameters, detail: {msg}. | |
| error_server | System error. Please try again later. | |
| logistics.lack_of_invoice_data | Pending invoice data, can not arrange shipment. | |
| logistics.lack_of_invoice_data | Please upload the invoice or verify the details of the document already submitted, which is currently flagged as invalid by SEFAZ. Correction is required to release the shipment. | |
| logistics.order_prescription_unchecked | This order hasn't passed prescription check | |
| logistics.package_not_exist | The package is not exist. | |
| logistics.error_param | Buyer's delivery address is not serviceable. Please contact customer service. | |
| logistics.error_param | Buyer's delivery address is not serviceable. Please contact customer service. | |
| logistics.error_param | Channel does not support dropoff. Please select the pickup option and try again. | |
| logistics.error_param | Please input a unique tracking number. | |
| logistics.error_param | Please input a unique tracking number. | |
| logistics.error_param | Seller Info Error. Please check and input your invoice info. | |
| logistics.error_param | Tracking Number Error. Please input a valid tracking number. | |
| logistics.error_param | Tracking Number Format Error. Please input a valid tracking number. | |
| logistics.error_param | Tracking Number Error. Please input a valid tracking number. | |
| logistics.error_param | Please input a valid seller's name. | |
| logistics.error_param | Invalid pickup time. Please select another pickup time. | |
| logistics.error_param | Pickup address is not serviceable. Please select another address. | |
| logistics.error_param | Pickup address is not serviceable. Please select another address. | |
| logistics.error_param | Seller Info Error. Please check and input your tax number. | |
| logistics.error_param | Seller Address Error. Please input the geo-location of your address. | |
| logistics.error_param | Selected pickup timeslot is unavailable. Please reselect. | |
| logistics.error_param | Channel does not support pickup. Please select the dropoff option and try again. | |
| logistics.error_param | Selected pickup timeslot is unavailable. Please reselect. | |
| logistics.ship_order_invalid_job_param | Parameter sender_real_name or tracking_number is required. | |
| error_param | Parameter sender_real_name is invalid. | |
| logistics.ship_order_long_sender_real_name | Parameter sender_real_name can not be longer than 64. | |
| logistics.ship_order_long_tracking_number | Parameter tracking_number can not be longer than 64. | |
| error_param | Shop id: {shop_id} didn't set {return_store_name} return store, please go back to Shopee Seller Center to complete the setting. | |
| logistics.ship_order_need_address_pickup_time | Parameter address_id and pickup_time_id are required. | |
| logistics.ship_order_need_branch_id | Parameter branch_id is required. | |
| logistics.ship_order_need_pacakge_number | Please request with package_number for this split order. | |
| logistics.ship_order_need_sender_real_name | Parameter sender_real_name can not be null. | |
| logistics.ship_order_need_tracking_number | Parameter tracking_number can not be null. | |
| logistics.ship_order_not_need_pacakge_number | Please don’t request with package_number for this unsplit order. | |
| logistics.ship_order_not_ready_to_ship | The order is not ready to ship. | |
| logistics.ship_order_only_support_one_type | Please select just one way to ship order: pickup or dropoff or non_integrated. | |
| logistics.ship_order_pff_init | You can not ship warehouse order. | |
| logistics.ship_order_pickup_time_invalid | Invalid pickup time id. Please check the pick up time id. | |
| logistics.ship_order_unsupport_dropoff | This order does not support ship with dropoff. | |
| logistics.ship_order_unsupport_non_integrated | This order does not support ship with non_integrated. | |
| logistics.ship_order_unsupport_pickup | This order does not support ship with pickup. | |
| error_param | Shop id: {shop_id},return store:{return_store_name} not found. | |
| logistics.error_param | Pickup address is not serviceable. Please select another address. | |
| logistics.invalid_address_version | Some addresses are no longer supported per new regulation, please update to avoid wrong fulfilment | |
| error_network | Inner http call failed | |
| error_data | parse data failed | |
| error_data | data not exist | |
| error_param | parameter invalid | |
| logistics.error_sender_address | Pickup address not valid. Please add/tag a new pickup_address in Seller Center to continue shipping | |
| error_param | The information you queried is not found. | |
| error_param | Wrong parameters, detail: {msg}. | |
| error_server | Something wrong. Please try later. | |
| error_shop | shopid is invalid | |
| error_not_found | Fail to get order fulfillment group, please try again later. | |
| error_param | request not from gateway | |
| error_other | System error. Please try again later. | |
| error_status | Buyer hasn’t completed pre-authorization yet. | |
| error_param | Please do not request with tracking_no for this channel which does not require tracking_no. | |
| logistics.warehouse_stock_insufficient | Failed to assign a warehouse with sufficient stock |
§13 Common errors
Common errors
| Error | Description | Solution |
|---|---|---|
| error_auth | partner_id is invalid | |
| error_auth | The App is deleted, and you'll be unable to make any API call. | |
| error_auth | App developer’s permissions for authorizations have been restricted. If you’re a seller, contact the developer for more information. If you’re the developer, refer to the Open Platform Console for details. | |
| error_param | There is no partner_id in query. | |
| error_param | Invalid partner_id. | |
| error_param | no timestamp | |
| error_param | Invalid timestamp | |
| error_param | There is no sign in query. | |
| error_sign | Wrong sign. | |
| invalid_partner_id | Invalid partner_id, please have a check. | |
| error_auth | No permission to current api. | |
| error_api_call_restricted | The App permission for api call have been restricted. If you’re a seller, contact the developer for more information. If you’re the developer, refer to the Open Platform Console for details. | |
| api_suspended | The API is offline. Please call v2 API instead. | |
| error_limit | The total API call number made by your APP has reached the daily API call limit, please try again after 00: 00 (UTC+08:00) | |
| error_rate_limit | Too many requests. You have reached the rate limit. Please try again later. | |
| source_ip_undeclared | Request Source IP ({ip}) is undeclared. Please declare all your IP addresses in the Shopee Open Platform Console > App list > IP Address Whitelist | |
| error_param | Permission denied. This API is currently offline or the request path is incorrect. | |
| error_param | Partner_id is invalid, should be an integer between 0 and 4294967295. | |
| error_param | no timestamp. | |
| error_param | Timestamp is invalid, should be an integer between 0 and 4294967295. | |
| error_param | Timestamp is expired. | |
| error_partner_key_expired | Your API partner key has expired, please reset the Live API Partner Key in Console to get a new valid partner key to call open api. | |
| error_api_permission | This app type has no permission to this API. | |
| error_param | There is no access_token in query. | |
| error_auth | Invalid access_token. | |
| error_auth | Invalid partner_id or shopid. | |
| shop_no_linked | Partner and shop has no linked. | |
| shop_banned | The shop account has been banned. Permissions for shop authorization and API calls have been suspended until the shop account is restored. | |
| invalid_acceess_token | Invalid access_token, please have a check. | |
| partner_shop_no_link | Invalid partner_id or shop_id, please have a check. | |
| error_ashop_api_permission | The shop is Affiliate shop has no permission to call this API. | |
| error_kyc_auth | No permission. Please inform the seller to complete the Seller Registration on Shopee Seller Center first, then this shop can call for this API. | |
| error_auth | System error, please try again later. | |
| error_param | There is no shop_id in query. | |
| error_param | shop_id is invalid, should be an integer between 0 and 4294967295. |
§14 Update log
Update log
| Date | Change |
|---|---|
| 2022-02-23 | update define for this API |
| 2021-09-07 | Update the order_list limit |
| 2021-03-29 | New API |
