在线订单发货处理(支持货到付款)
用户调用该接口可实现在线订单发货(支持货到付款) ,支持物流跟踪。 修改淘宝订单状态为卖家已发货,传入物流公司信息,订单备注等 。
一、请求参数
请求URL:
POST https://kf.fw199.com/gateway/taobao/logistices/onlinesend
| 参数名 | 类型 | 说明 | 示例 |
|---|---|---|---|
| appid | String | 合作伙伴AppId | uwkahf@jfs92 |
| timestamp | String | 当前时间戳 | |
| tb_seller_nick | String | 淘宝卖家店铺登录账号,非店铺名称 | kingdo |
| tid | long | 淘宝订单号码 | 3231214234141421 |
| sign | String | 接口签名 | 如何计算生成见示例代码 |
| company_code | string | 快递公司代码 | .如”POST”就代表中国邮政,”ZJS”就代表宅急送. |
| out_sid | string | 快递单号,具体一个物流公司的真实运单号码。淘宝官方物流会校验,请谨慎传入; | |
| flag | string | 废弃,请使用《修改订单备注(插旗)》,卖家交易备注旗帜, 可选值为:0(灰色), 1(红色), 2(黄色), 3(绿色), 4(蓝色), 5(粉红色),说明:如果不想加旗帜,则传空串”” | |
| memo | string | 废弃,请使用《修改订单备注(插旗)》,卖家交易备注。最大长度: 1000个字节 ,说明:如果不想加旗帜,则传空串”” |
二、请求示例代码
Java
@Test public void logisticesCompanyOnineSend() throws Exception {
String result =""; String tb_seller_nick = Config.TBSellerNick ; //要查询支付宝的淘宝商家 CloseableHttpClient httpclient = HttpClients.createDefault(); HttpPost httpPost = new HttpPost( Config.LogisticesOnlineSendUrl ); //业务参数 Map<String, String> data = new HashMap<String, String>(); data.put("appid", Config.AppId); data.put("tb_seller_nick", tb_seller_nick); Long timestamp = System.currentTimeMillis() / 1000; data.put("timestamp", timestamp.toString());
// 淘宝交易ID,必须 data.put("tid", "1148987073290565830"); // 物流公司代码.如"POST"就代表中国邮政,"ZJS"就代表宅急送 ,通过接口 "查询物流公司列表" 获取。 data.put("company_code","SF"); // 运单号.具体一个物流公司的真实运单号码。淘宝官方物流会校验,请谨慎传入; data.put("out_sid","SF1191992347148"); // 卖家交易备注旗帜, 可选值为:0(灰色), 1(红色), 2(黄色), 3(绿色), 4(蓝色), 5(粉红色),说明:如果不想加旗帜,则传空串"" data.put("flag","1"); // 卖家交易备注。最大长度: 1000个字节 ,说明:如果不想加旗帜,则传空串"" data.put("memo","效果不错"); // 参数签名 data.put("sign", Utils.Sign(data,Config.AppSecret)); List<BasicNameValuePair> params = new ArrayList<BasicNameValuePair>(); for (Map.Entry<String, String> entry : data.entrySet()) { params.add(new BasicNameValuePair(entry.getKey(), entry.getValue())); } //发起POST请求 try { httpPost.setEntity(new UrlEncodedFormEntity(params, "UTF-8")); HttpResponse httpResponse = httpclient.execute(httpPost); if (httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { result = EntityUtils.toString(httpResponse.getEntity()); } else { result = ("doPost Error Response: " + httpResponse.getStatusLine().toString()); } } catch (Exception e) { e.printStackTrace();
}
System.out.println(result);
}三、返回结果
{"code":0,"data":true,"message":"success","tid":"1148987073290565830"}说明: code为0表示成功,非0为失败,tid为本次发货的订单号, message会包含失败原因。失败时一定要注意,可能商户授权过期,或是参数有误。