# 订单发货

发货方式由用户在下单时选择,发货时已经默认了发货方式,因此发货时无需传入发货方式参数

拆单发货时,如果订单中含有多件同样的商品(相同的product_id和相同的sku_id),这些商品必须在同一个包裹里一起发出

已经完成售后的商品不能进行发货

# 接口调用请求说明

http请求方式:POST
https://api.weixin.qq.com/product/delivery/send?access_token=xxxxxxxxx

# 请求参数示例-整单发货

{
    "order_id": 123456,
    "delivery_list": 
    [
        {
            "delivery_id": "1",
            "is_all_product" : true,
            "waybill_id": "23424324253"
        }
    ]
}

# 请求参数示例-拆单发货

{
    "order_id": 123456,
    "delivery_list": 
    [
        {
            "delivery_id": "1",
            "is_all_product" : false,
            "waybill_id": "23424324253",
            "product_infos" : [
              {
                "product_cnt" : 1,
                "product_id" : 12345,
                "sku_id" : 678910
              }
            ]
        }
    ]
}

# 回包示例

{
    "errcode": 0,
    "errmsg":"ok",
}

# 请求参数说明

参数 类型 是否必填 说明
order_id number 订单id
delivery_list[].delivery_id string 快递公司id,通过获取快递公司列表获取,快递配送必填,同城,线下自提不用填
delivery_list[].waybill_id string 快递单号,快递配送必填,同城,线下自提不用填
delivery_list[].is_all_product bool 该快递单是否包含订单中所有商品(如果不填默认为true,如果拆单发货请填false)
delivery_list[].product_infos[].product_cnt number 商品数量(is_all_product=false时必填)
delivery_list[].product_infos[].product_id number 商品id(is_all_product=false时必填)
delivery_list[].product_infos[].sku_id number 商品sku(is_all_product=false时必填)

# 回包参数说明

参数 类型 说明
errcode number 错误码
errmsg string 错误信息

# 返回码

返回码 错误类型
-1 系统异常
-2 token太长
48001 无权调用本api,请检查相关权限是否已开通
100002 订单不存在
100003 订单更新过于频繁,更新订单失败,请重试
101100 当前订单状态不允许发货,请检查订单状态
108009 当前订单有未完成售后单,不允许发货
109000 发货失败,请检查errmsg中返回的商品是否正确填写,包括订单中是否包含该商品,该商品是否已经发货,是否已经完成售后无法发货,以及商品数量是否填写正确等
109001 当前订单已经发货完成,不能重复发货
109002 当前发货请求里没有带上发货商品,请检查product_infos和is_all_product是否按规范填写
109205 当前订单已经下单在线物流单,不允许自寄发货
800001 同一种sku的所有商品必须在一个包裹里寄出