上一篇文章咱們講解了訂閱服務功能。咱們已經完成了如何把物流訂單訂閱到快遞鳥,快遞鳥也能接收到咱們的訂單信息,接下來就須要快遞鳥實時的將最新的物流軌跡推送到咱們服務器,咱們既然要接收快遞鳥的信息,就須要提供一個服務地址給快遞鳥,以C#爲列,咱們新建一個接收頁面,個人接收文件: testReceive.aspx,把他部署到服務器,服務器
接收地址:http://www.你的域名.com/testReceive.aspxapp
登錄快遞鳥官網,經過快遞鳥提供的沙箱調試頁面進去測試接口測試
調試頁面地址:ui
http://kdniao.com/UserCenter/v2/SandBox/PushQueryParam.aspx編碼
測試的截圖:加密
1、接口描述/說明url
推送接口(商戶實現)spa
(1)客戶須要按快遞鳥要求開發接口,保證信息的正常接收。
(2)快遞鳥主動推送時,物流信息接收接口由客戶提供。
(3)接口支持的消息接收方式爲HTTP POST,請求方法的編碼格式(utf-8):"application/x-www-form-urlencoded;charset=utf-8"。
(4)運單物流信息全量推送(每次推送的運單物流信息包括運單當前全部的的物流信息)。.net
請求系統級參數說明:調試
參數名稱 |
類型 |
說明 |
必需要求 |
RequestData |
String |
請求內容需進行URL(utf-8)編碼。請求內容只支持JSON格式。 |
R |
RequestType |
String |
101-軌跡查詢結果, 107-貨款狀態 |
R |
DataSign |
String |
數據內容簽名(把(請求內容(未編碼)+AppKey)進行MD5加密,而後Base64編碼) |
R |
備註:R-必填(Required),O-可選(Optional),C-報文中該參數在必定條件下可選(Conditional)
2、接口參數
推送接口
應用級輸入參數
參數名稱 |
類型 |
說明 |
必需要求 |
EBusinessID |
String |
用戶電商ID |
R |
PushTime |
String |
推送時間 |
R |
Count |
String |
推送物流單號軌跡個數 |
R |
Data |
String |
推送物流單號軌跡集合 |
R |
訂閱查詢結果(RequestType:101)
經過軌跡查詢(訂閱查詢)接口訂閱到快遞鳥的數據,快遞鳥推送時,會將推送的RequestType的值置爲101,同時返回下列數據
請求內容字段定義:
參數 |
類型 |
說明 |
必需要求 |
||
Data |
EBusinessID |
String |
商戶ID |
O |
|
ShipperCode |
String |
快遞公司編碼 |
R |
||
LogisticCode |
String |
快遞單號 |
R |
||
Success |
Bool |
成功與否:true,false |
R |
||
Reason |
String |
失敗緣由 |
O |
||
State |
String |
物流狀態: 0-無軌跡,1-已攬收,2-在途中,3-簽收,4-問題件 |
R |
||
CallBack |
String |
訂閱接口的Bk值 |
O |
||
Traces |
|||||
Traces |
AcceptTime |
String |
時間 |
R |
|
AcceptStation |
String |
描述 |
R |
||
Remark |
String |
備註 |
O |
||
EstimatedDeliveryTime |
String |
預計到達時間yyyy-mm-dd |
O |
貨款狀態(RequestType:107)
用戶經過電子面單使用快遞鳥貨到付款等金融服務時,快遞鳥會將該訂單的金融狀態經過接口推送給用戶。
請求內容字段定義:
參數名稱 |
類型 |
說明 |
必需要求 |
|
Data |
EBusinessID |
String |
用戶電商ID |
O |
OrderCode |
String |
訂單編號 |
O |
|
ShipperCode |
String |
快遞公司編碼 |
R |
|
LogisticCode |
String |
物流運單號 |
R |
|
Success |
Bool |
成功與否 |
R |
|
Reason |
String |
失敗緣由 |
O |
|
State |
String |
物流狀態:0-無軌跡,1-已攬收, 2-在途中 201-到達派件城市,3-簽收,4-問題件 |
R |
|
CallBack |
String |
訂閱接口的Bk值 |
O |
|
OrderState |
String |
訂單貨款狀態:1-待出款;2-已出款;3-已收款 |
O |
|
AccountName |
String |
返款銀行卡開戶人(例:**偉、*佳) |
O |
|
AccountTel |
String |
返款銀行卡手機末四位 |
O |
|
AccountNum |
String |
返款銀行卡末四位 |
O |
返回參數定義
參數名稱 |
類型 |
說明 |
必需要求 |
EBusinessID |
String |
用戶ID |
R |
UpdateTime |
String |
時間 |
R |
Success |
Bool |
成功與否:true,false |
R |
Reason |
String |
失敗緣由 |
O |
推送接口(商戶實現)
請求示例 JSON (訂閱查詢結果)
{
"EBusinessID": "1109259",
"Count": "2",
"PushTime": "2015-3-11 16:21:06",
"Data": [
{
"EBusinessID": "1109259",
"OrderCode": "",
"ShipperCode": "EMS",
"LogisticCode": "5042260908504",
"Success": true,
"Reason": "",
"State": "2",
"CallBack": "0",
"Traces": [
{
"AcceptTime": "2015-03-06 21:16:58",
"AcceptStation": "深圳市橫崗速遞營銷部已收件,(攬投員姓名:鍾定基;聯繫電話:)",
"Remark": ""
},
{
"AcceptTime": "2015-03-07 14:25:00",
"AcceptStation": "離開深圳市 發往廣州市",
"Remark": ""
},
{
"AcceptTime": "2015-03-08 00:17:00",
"AcceptStation": "到達廣東速遞物流公司廣航中心處理中心(經轉)",
"Remark": ""
},
{
"AcceptTime": "2015-03-08 01:15:00",
"AcceptStation": "離開廣州市 發往北京市(經轉)",
"Remark": ""
},
{
"AcceptTime": "2015-03-09 09:01:00",
"AcceptStation": "到達北京黃村轉運站處理中心(經轉)",
"Remark": ""
},
{
"AcceptTime": "2015-03-09 18:39:00",
"AcceptStation": "離開北京市 發往呼和浩特市(經轉)",
"Remark": ""
},
{
"AcceptTime": "2015-03-10 18:06:00",
"AcceptStation": "到達 呼和浩特市 處理中心",
"Remark": ""
},
{
"AcceptTime": "2015-03-11 09:53:48",
"AcceptStation": "呼和浩特市郵政速遞物流分公司金川攬投部安排投遞(投遞員姓名:安長虹;聯繫電話:18047140142)",
"Remark": ""
}
]
},
{
"EBusinessID": "1109259",
"OrderCode": "",
"ShipperCode": "EMS",
"LogisticCode": "5042260943004",
"Success": true,
"Reason": "",
"State": "2",
"CallBack": "0",
"Traces": [
{
"AcceptTime": "2015-03-07 15:26:09",
"AcceptStation": "深圳市橫崗速遞營銷部已收件,(攬投員姓名:周宏彪;聯繫電話:13689537568)",
"Remark": ""
},
{
"AcceptTime": "2015-03-08 16:32:00",
"AcceptStation": "離開深圳市 發往廣州市",
"Remark": ""
},
{
"AcceptTime": "2015-03-09 00:58:00",
"AcceptStation": "到達廣東速遞物流公司廣航中心處理中心(經轉)",
"Remark": ""
},
{
"AcceptTime": "2015-03-09 01:15:00",
"AcceptStation": "離開廣州市 發往北京市(經轉)",
"Remark": ""
},
{
"AcceptTime": "2015-03-10 05:20:00",
"AcceptStation": "到達北京黃村轉運站處理中心(經轉)",
"Remark": ""
},
{
"AcceptTime": "2015-03-10 11:59:00",
"AcceptStation": "離開北京市 發往廊坊市(經轉)",
"Remark": ""
},
{
"AcceptTime": "2015-03-10 14:23:00",
"AcceptStation": "到達廊坊市處理中心(經轉)",
"Remark": ""
},
{
"AcceptTime": "2015-03-11 08:55:00",
"AcceptStation": "離開廊坊市 發往保定市(經轉)",
"Remark": ""
}
]
}
]
}
請求示例 JSON格式 (貨款狀態)
{
"EBusinessID": "1109259",
"Count": "2",
"PushTime": "2015-3-11 16:21:06",
"Data": [
{
"EBusinessID": "1109259",
"OrderCode": "",
"ShipperCode": "EMS",
"LogisticCode": "5042260908504",
"Success": true,
"Reason": "",
"State": "2",
"CallBack": "0",
"OrderState":"1",
"AccountName":"張三",
"AccountTel":"13800000000",
"AccountNum":"0321"
},
{
"EBusinessID": "1109259",
"OrderCode": "",
"ShipperCode": "EMS",
"LogisticCode": "5042260908522",
"Success": true,
"Reason": "",
"State": "2",
"CallBack": "0",
"OrderState":"1",
"AccountName":"張三",
"AccountTel":"13800000011",
"AccountNum":"0321"
}
]
}
返回示例 JSON
{
"EBusinessID": "1151847",
"UpdateTime": "2016-08-09 16:42:38",
"Success": true,
"Reason": ""
}
提供源碼下載:
https://download.csdn.net/download/yanghanwen/12139326
調用第三方物流接口,替換本身的key就能直接使用,主要實現了物流在線軌跡查詢,訂單訂閱,軌跡推送,支持500多家的快遞查詢接口,包括主流的四通一達,支持上門取件服務,其餘接口調用,修改調用指令和參數就能實現。