12. 单次发货
发货权限仅对商家维度进行校验, 不再关注用户可操作的商家维度.
推荐使用批量发货接口 13. 批量发货( 代替单次发货接口,相同订单一次请求,消耗和稳定性都要比单次循环请求要好。
1. 接口
/mtop/aftersale/openapi/delivery/single
2. 接口参数
公共参数
请求参数
国内包裹发货
Delivery
说明:
字段 | 类型 | 是否必填 | 备注 |
---|---|---|---|
orderId | Long | 是 | 订单号 |
expressSn | String | 是 | 快递单号,每个包裹只允许有一个物流单号,同一个订单下的包裹物流单号不能重复 |
expressName | String | 否 | 快递公司名称 |
bizCode | String | 是 | 快递公司编码 见 快递公司编码 |
descr | String | 否 | 发货描述 |
itemList | List<DeliveryItem> |
是 | 包裹内物明细 |
List<DeliveryItem>
说明:
字段 | 类型 | 是否必填 | 备注 |
---|---|---|---|
skuId | Long | 是 | 商品的skuId |
count | Integer | 是 | 该次skuId发货数量, 具体到skuId的数量 |
pid | Long | 是 | 该次发货的商品型号pid |
跨境包裹物流单同步(跨境专用)
Delivery
说明:
字段 | 类型 | 是否必填 | 备注 |
---|---|---|---|
orderId | Long | 是 | 订单号 |
outPackageId | String | 是 | 跨境电商拆单后对应的物流包裹标识,跟商户一起必须唯一 |
expressSn | String | 是 | 快递单号, pid维度发货多个快递单英文逗号分隔; 包裹发货一个订单下只允许一个物流单号且不可重复 |
expressName | String | 否 | 快递公司名称 |
bizCode | String | 是 | 快递公司编码 见 快递公司编码 |
descr | String | 否 | 发货描述 |
3. 请求示例
data内容.
国内普通包裹发货
{
"orderId": 4191016389753901,
"expressSn": "JDV00121155113",
"bizCode": "jd",
"userId": 1504203445,
"itemList": [
{
"skuId": 3012708,
"count": 1,
"pid": 22214
}
]
}
跨境包裹物流单同步
{
"orderId": 4191016389753901,
"outPackageId": "419101638975390101",
"expressSn": "JDV00121155113",
"bizCode": "jd",
}
4. 返回结果
字段 | 类型 | 备注 |
---|---|---|
orderId | Long | 订单号 |
expressSn | String | 快递单号 |
content | String | 操作结果描述, 成功恒为 ok |
5. 返回示例
返回成功:
{
"code": 0,
"data": {
"result": {
"4200429847302062": [{
"content": "ok",
"expressSn": "111111"
}]
}
},
"message": "ok"
}
6 常见问题
包裹发货模式包含详细的内物信息,发货组合更加灵活
场景举例:
可售商品为:
序号 | 商品pid | 商品名称 | 描述 |
---|---|---|---|
1 | pid1 | 手机A + 手机壳Bx2 套装 | 购买这个商品(pid1)可以获得 1部手机A + 2个手机壳B |
2 | pid2 | 手机壳B |
pid-sku关系为:
pid | skuId | sku名称 | sku数量 |
---|---|---|---|
pid1 | 301130 | 手机A | 1 |
pid1 | 301131 | 手机壳B | 2 |
pid2 | 301131 | 手机壳B | 1 |
ps:从上表中可以看出,pid1 对应 301130 x 1 + 301131 x 2
已支付订单 O1 中包含如下商品:
pid | 商品名称 | 数量 | 支付金额 |
---|---|---|---|
pid1 | 手机A+手机壳Bx2套装 | 1 | 4999 |
pid2 | 手机壳B | 2 | 100 |
在包裹发货模式下,可能的发货可为多种组合:
组合1:(共2个包裹)
序号 | 快递编号 | 物流公司 | skuId | sku数量 |
---|---|---|---|---|
1 | JDV0100000001 | 京东 | 301130 | 1 |
2 | 6011922136102 | 顺丰 | 301131 | 4 |
组合2:(共2个包裹)
序号 | 快递编号 | 物流公司 | skuId | sku数量 |
---|---|---|---|---|
1 | JDV0100000001 | 京东 | 301130 | 1 |
2 | JDV0100000001 | 京东 | 301131 | 2 |
3 | 6011922136102 | 顺丰 | 301131 | 2 |
组合3:(共3个包裹)
序号 | 快递编号 | 物流公司 | skuId | sku数量 |
---|---|---|---|---|
1 | JDV0100000001 | 京东 | 301130 | 1 |
2 | 6011922136102 | 顺丰 | 301131 | 2 |
3 | 6011922136103 | 顺丰 | 301131 | 2 |
注意:
- 同一个订单号下,同一快递单号不允许回传多次。
比如 订单O1中, 快递单号 JDV0100000001 已经回传过了,但由于疏忽,内物中记漏传了一件商品,是不允许再次通过回传接口补该物流单内物信息的。
- 回传pid、sku、sku数量等信息务必正确,否则接口会拒绝
- 快递单号支持修改,内物不支持修改 见 发货物流更新 接口
- 包裹发货模式 与 商品发货模式不兼容,如果某订单已经采用包裹发货模式,则该订单不允许再使用商品发货模式上传发货信息(反之亦然)。