一单多包发货接口
1、单个店铺订单拆分为多个物流包裹进行发货; 2、接口执行逻辑:一笔主订单有3个子订单,其中一个子订单已申请退款,调用该接口时3个子订单都发货时,接口会整个发货请求都失败(不会出现部分子单成功,部分子单失败的情况)。
一、请求参数
请求URL:
POST https://kf.fw199.com/gateway/dd/order/logistics/addmultipack
公共参数
| 参数名称 | 参数类型 | 是否必须 | 示例值 | 参数描述 |
|---|---|---|---|---|
| appid | String | 是 | 合作伙伴AppId | |
| timestamp | String | 是 | 1657525936 | 当前Unix时间戳,秒 |
| seller_nick | String | 是 | oms38173182 | 抖店的账号,对应蜂巢授权返回doudianseller字段 |
| sign | String | 是 |
业务参数
示例:
[ { "order_id" : "6918490006302719314", "request_id" : "102", "object_id" : "obj101", "pack_list" : [ { "shipped_order_info" : [ { "shipped_order_id" : "6918490006302850386" } ], "logistics_code" : "76465265417086", "company_code" : "zhongtong" } ]} ]请求参数说明见文档:https://op.jinritemai.com/docs/api-docs/16/562
提示:上面的object_id字段为本次请求标识,会保持与入参值一样原样返回。
二、请求示例代码
Java
@Test public void DDOrderLogisticsAddMultiPack() throws Exception { String reqData = "[{\"order_id\": \"6918490006302719314\",\n" + " \"request_id\": \"102\",\n" + " \"object_id\": \"obj101\",\n" + " \"pack_list\": [\n" + " {\n" + " \"shipped_order_info\": [\n" + " {\n" + " \"shipped_order_id\": \"6918490006302850386\"\n" + " }\n" + " ],\n" + " \"logistics_code\": \"76465265417086\",\n" + " \"company_code\": \"zhongtong\"\n" + " }\n" + " ]\n" + "}]"; Map<String, Object> data = new HashMap<String, Object>(); data.put("appid", Config.AppId); Long timestamp = System.currentTimeMillis() / 1000; data.put("timestamp", timestamp.toString()); data.put("seller_nick", Config.DDSellerNick); data.put("request_data",reqData); data.put("sign", Sign(data,Config.AppSecret)); // 调用服务API String resp = doHttpRequest(Config.DDOrderLogisticsAddMultiPackUrl, data); System.out.println(resp);
}三、返回结果
三(一)、成功返回
{ "code": 0, "message": "ok", "data": [ { "log_id": "20250121162600149F19738E310E333654", "code": 10000, "msg": "success", "sub_code": "", "sub_msg": "", "order_id": "6918490006302719314", "object_id": "obj101", "data": { "pack_list": [ { "shipped_order_info": [ { "shipped_order_id": "6918490006302850386", "shipped_num": 0, "shipped_item_ids": [] } ], "logistics_code": "76465265417086", "pack_id": "146792968301613406" } ] } } ], "trace_id": ""}三(二)、失败返回
{ "code": 0, "message": "ok", "data": [ { "log_id": "", "code": 999, "msg": "Custom error: 9999,物流单号收件人电话及地址与该订单买家电话及地址均不一致,请核实后更新单号,请在抖店学习中心搜索【运单发货失败和异常提醒对应操作指引】查看并调整", "sub_code": "", "sub_msg": "", "order_id": "6918490006302719314", "object_id": "obj100" }, { "log_id": "", "code": 999, "msg": "Custom error: 9999,暂不支持该物流商,请检查物流商编码后重新发货", "sub_code": "", "sub_msg": "", "order_id": "6918490006302719314", "object_id": "obj101" } ], "trace_id": ""}说明:最外层的code如果不是0,则整个失败了, 消息见外层message . 如果成功的话,再看data集合,code如果是10000,则成功的发货记录。否则为失败的发货记录。order_id,object_id是原样返回的。 其他返回关键参数说明。
| 名称 | 类型 | 示例值 | 描述 |
|---|---|---|---|
| shipped_order_id | String | 123123 | 发货的子单id |
| shipped_num | Number | 1 | 发货子单数量 |
| shipped_item_ids | List | [“123123”] | 发货的四层单id |
| logistics_code | String | 111111111111111 | 物流单号 |
| pack_id | String | 4705288465508532862 | 包裹id |