一、地图轨迹订阅接口
1.1 接口格局
1.应用http协定表单提交的形式进行信息交互,字符编码默认对立采纳UTF-8,数据格式:application/x-www-form-urlencoded;
2.字段类型约定:须要严格根据字段表格中给出的参数格局和大小进行开发。
3.字段解析约定:参数字段中的必选字段是每次调用接口时都要求必须传入的;
1.2 申请地址
http://poll.kuaidi100.com/pol...
申请报文:
参数名 | 是否必填 | 类型 | 阐明 |
---|---|---|---|
schema | 否 | string | 默认是json |
param | 是 | Object | 主体参数对象 |
param数据结构:
参数名 | 是否必填 | 类型 | 阐明 |
---|---|---|---|
key | 是 | string | 受权码,请申请企业版获取 |
company | 是 | string | 订阅的快递公司的编码,一律用小写字母 |
number | 是 | string | 订阅的快递单号,单号的最大长度是40个字符 |
from | 是 | string | 快递寄件地址 |
to | 是 | string | 快递收件地址 |
parameters | 是 | Object | 辅助参数 |
parameters数据结构:
参数名 | 是否必填 | 类型 | 阐明 |
---|---|---|---|
callbackurl | 是 | string | 回调接口的地址 |
salt | 否 | string | 签名用随机字符串 |
phone | 否 | string | 收寄件人的挪动电话号码(只能填写一个,顺丰单号必填,其余快递公司选填) |
ordertime | 否 | string | 订单下单工夫,格局“yyyy-MM-dd HH:mm:ss” |
1.3 申请示例
schema = json param = { "company": "ems", "number": "1136281381675", "from": "广东省深圳市南山区", "to": "北京市朝阳区", "key": "XXX ", "parameters": { "callbackurl": "您的回调接口的地址,如http://www.您的域名.com/kuaidi?callbackid=...", "salt": "*", "phone": "", "ordertime": "2020-12-31 08:09:00" } }
1.4 订阅返回后果
字段名称 | 类型 | 是否必填 | 字段含意 |
---|---|---|---|
result | Boolean | 是 | true示意胜利,false示意失败 |
returnCode | string | 是 | 返回状态码,具体见1.6附表 |
message | string | 是 | 状态信息 |
1.5 订阅响应报文示例(json格局)
{ "result": true, "returnCode": "200", "message": "提交胜利"}
1.6 状态码附表
returnCode | massage | 形容 |
---|---|---|
200 | 提交胜利 | 订阅提交胜利 |
400 | 无奈解析 | 出发地目的地无奈解析或下单工夫无奈解析 |
500 | 服务器谬误 | 快递100的服务器出理间隙或临时性异样,有时如果因为不按标准提交申请,比方快递公司参数写错等,也会报此谬误 |
501 | 反复订阅 | 此单曾经订阅胜利且目前还在跟踪过程中。若要提交屡次订阅,请在收到单号的status=abort或shutdown后隔半小时再提交订阅 |
502 | 提交内容含有敏感关键字,被平安防护拦挡 | 回调地址、提交内容蕴含敏感词,请分割快递100工作人员 |
600 | 您不是非法的订阅者(即受权Key出错) | 账号无可用单量,须要充值 |
601 | POLL: KEY 已过期 | 账号无可用单量,须要充值 |
700 | 不反对的快递公司 | 回绝订阅的快递公司,查看快递公司编码是否有误 |
701 | 订阅方的订阅数据存在谬误(如不反对的快递公司、单号为空、单号超长等)或谬误的回调地址 | 请查看快递公司编码、对照技术文档查看参数、在后盾调试工具测试回调地址 |
702 | POLL:辨认不到该单号对应的快递公司 | 快递公司编码谬误或者无可用单量,须要充值 |
二、推送接口
1.应用http协定表单提交的形式进行信息交互,字符编码默认对立采纳UTF-8,数据格式:application/x-www-form-urlencoded;
2.字段类型约定:须要严格根据字段表格中给出的参数格局和大小进行开发。
3.字段解析约定:参数字段中的必选字段是每次调用接口时都要求必须传入的;
2.1 推送申请地址
由贵司在订阅申请中通过callbackurl字段提供
2.2 推送申请形式
post
2.3 推送输出参数
申请参数(header)
名称 | 类型 | 默认值 |
---|---|---|
Content-Type | string | application/x-www-form-urlencoded |
申请报文(body)
参数名 | 是否必填 | 类型 | 阐明 |
---|---|---|---|
sign | 否 | string | 订阅参数salt值不为空时,推送数据将蕴含该加密签名,加密形式:md5(param+salt) |
param | 是 | Object | 主体参数对象 |
param对应参数
参数名 | 是否必填 | 类型 | 阐明 |
---|---|---|---|
status | String | polling | 监控状态:polling:监控中,shutdown:完结,abort:停止,updateall:从新推送。其中当快递单为已签收时status=shutdown,当message为“3天查问无记录”或“60天无变动时”status= abort ,对于status=abort的状态,须要减少额定的解决逻辑 |
billstatus | String | got | 包含got、sending、check三个状态,因为意义不大,已弃用,请疏忽 |
message | String | 监控状态相干音讯,如:3天查问无记录,60天无变动 | |
autoCheck | String | 1 | 快递公司编码是否出错,0为本推送信息对应的是贵司提交的原始快递公司编码,1为本推送信息对应的是我方纠正后的新的快递公司编码。一个单如果咱们间断3天都查不到后果,我方会(1)判断一次贵司提交的快递公司编码是否正确,如果正确,给贵司的回调接口(callbackurl)推送带有如下字段的信息:autoCheck=0、comOld与comNew都为空;(2)如果贵司提交的快递公司编码出错,咱们会帮忙用正确的快递公司编码+原来的运单号从新提交订阅并开启监控(后续如果监控到单号有更新就给贵司的回调接口(callbackurl)推送带有如下字段的信息:autoCheck=1、comOld=原来的公司编码、comNew=新的公司编码);并且给贵方的回调接口(callbackurl)推送一条含有如下字段的信息:status=abort、autoCheck=0、comOld为空、comNew=纠正后的快递公司编码。 |
comOld | String | yuantong | 贵司提交的原始的快递公司编码。具体见autoCheck后阐明。若开启了国际版(即在订阅申请中减少字段interCom=1),则回调申请中暂无此字段 |
comNew | String | ems | 我司纠正后的新的快递公司编码。具体见autoCheck后阐明。若开启了国际版(即在订阅申请中减少字段interCom=1),则回调申请中暂无此字段 |
lastResult | Object | 最新查问轨迹后果 |
lastResult对应参数
字段名称 | 类型 | 字段含意 |
---|---|---|
message | String | 音讯体,请疏忽 |
state | Integer | 快递单以后状态,包含0在途,1揽收,2疑难,3签收,4退签,5派件,6退回,7转单,10待清关,11清关中,12已清关,13清关异样,14收件人拒签等13个状态 |
status | Integer | 通信状态,请疏忽 |
condition | String | 快递单明细状态标记,暂未实现,请疏忽 |
ischeck | Integer | 是否签收标记,请疏忽,明细状态请参考state字段 |
com | String | 快递公司编码,一律用小写字母 |
nu | String | 单号 |
trailUrl | String | 轨迹地图链接 |
arrivalTime | String | 预计达到工夫 |
totalTime | String | 均匀耗时 |
remainTime | String | 达到还需多少工夫 |
isLoop | Boolean | 是否存在环路 |
routeInfo | 路由信息 | |
└from | 出发地行政区信息 | |
└number | 政区信息编码 | |
└name | 政区信息名 | |
└cur | 以后地行政区信息 | |
└number | 政区信息编码 | |
└name | 政区信息名 | |
└to | 目的地行政区信息 | |
└number | 政区信息编码 | |
└name | 政区信息名 | |
data | data | 最新查问后果,数组,蕴含多项,全量,倒序(即工夫最新的在最前),每项都是对象,对象蕴含字段请开展 |
└ context | String | 内容 |
└ time | String | 工夫,原始格局 |
└ ftime | String | 格式化后工夫 |
└status | String | 本数据元对应的签收状态,只有实时查问接口中提交resultv2标记后才会呈现 |
└areaCode | String | 本数据元对应的行政区域的编码,只有实时查问接口中提交resultv2标记后才会呈现 |
└areaName | String | 本数据元对应的行政区域的名称,只有实时查问接口中提交resultv2标记后才会呈现 |
2.4 推送输出参数示例
param = { "status": "polling", "billstatus": "got", "message": "", "autoCheck": "1", "comOld": "yuantong", "comNew": "ems", "lastResult": { "message": "ok", "state": "0", "status": "200", "condition": "F00", "ischeck": "0", "com": "yuantong", "nu": "V030344422", "data": [{ "context": "上海分拨核心/装件入车扫描 ", "time": "2012-08-28 16:33:19", "ftime": "2012-08-28 16:33:19", "status": "在途", "areaCode": "310000000000", "areaName": "上海市" }, { "context": "上海分拨核心/下车扫描 ", "time": "2012-08-27 23:22:42", "ftime": "2012-08-27 23:22:42", "status": "在途", "areaCode": "310000000000", "areaName": "上海市" }], "routeInfo": { "from": { "number": "CN3100", "name": "上海市" }, "cur": { "number": "CN6101", "name": "陕西,西安市" }, "to": { "number": "CN6101", "name": "陕西,西安市" } }, "isLoop": false, "trailUrl": "https://api.kuaidi100.com/tools/map/bc80574d538262aecc897a469151f0e3", "arrivalTime": "2020-12-19 12:00", "totalTime": "2天1小时", "remainTime": "1天2小时" }}
2.5 轨迹链接利用示例
<img src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/2a1e3b91df2e4db8afb5eefc50d76c6f~tplv-k3u1fbpfcp-zoom-1.image" style="zoom:60%">
重要揭示:
(1)对于status= abort而且message中蕴含“3天”关键字而且comNew为空的快递单,须要减少以下解决逻辑:
- 如果有专门的工作人员,能够:将快递单列举给工作人员,由工作人员判断此单是否为假单:如果此单是实在单,则将此单从新向快递100提交一次;如果此单是假单,则将此单标记为假单,而且不再将此单提交给快递100。如果没有专门的工作人员,请间接用以下第二种办法进行操作;
如果没有专门的工作人员,能够:在收到status=abort而且message中蕴含“3天”关键字而且comNew为空的提醒10分钟后,将此快递单从新向快递100提交订阅,如果从新提交后依然收到status= abort,则再次从新向快递100提交,如此,在同一月中如果反复提交3~4次都依然收到status= abort,则此单为假单,不须要再将此单提交给快递100。
对于同一天然月内反复提交的快递单,结算时只计一次费用,对于跨了两个天然月反复提交的结算单,结算两次费用。
(2)如果判断到status=abort且comNew不为空,则不须要从新提交订阅,且将贵司原来的快递公司编码改为comNew后的值,或在贵司数据库中减少一个快递公司编码为comNew+原来单号的运单;
(3)如果判断到status=polling且autoCheck=1,则此单为纠正公司编码后的跟踪信息,应保留。
- 对于data:我方每次推送的都是残缺的、全量的快递查问后果,而不是局部最新、增量的状态。因为同一快递单查问后果的数据源可能变动,不同数据源之间的后果略有差别,倡议每次删除旧的数据后再写入新的数据。
- 工夫倡议以ftime为准,不要应用time,time的存在仅仅为了兼容。
2.6 推送响应报文及错误码解释
参数名 | 阐明 |
---|---|
result | true示意胜利,false示意失败。如果提交回调接口的地址失败,30分钟后从新回调,3次仍旧失败的,主动放弃 |
returnCode | 200: 提交胜利 500: 服务器谬误 其余谬误请自行定义 |
message | 返回的提醒 |
2.7 推送返回示例
当我方调用贵方的回调接口(callbackurl)时,贵方须要先将我方提交的数据保留至贵方的数据库,接着向我方返回是否胜利接管的响应报文及代码,即贵公司间接在回调接口的地址的response中填写如下内容:
{ "result":true, "returnCode":"200", "message":"胜利"}
留神:对于status= abort(message中蕴含“3天查问无记录”或者“60天无变动”)的快递单,也须要返回胜利接管的响应报文及代码。
2.8 运单签收状态(已签收、退回等)增值服务阐明
默认状态下,在推送时咱们提供了ischeck字段示意快递单是否签收(含失常签收,退回签收两种状况),通过state字段提供签收的具体状态,state具体如下:
状态值 | 名称 | 含意 |
---|---|---|
0 | 在途 | 快件处于运输过程中 |
1 | 揽收 | 快件已由快递公司揽收 |
2 | 疑难 | 快递100无奈解析的状态,或者是须要人工染指的状态, 比方说收件人电话谬误。 |
3 | 签收 | 失常签收 |
4 | 退签 | 货物退回发货人并签收 |
5 | 派件 | 货物正在进行派件 |
6 | 退回 | 货物正处于返回发货人的途中 |
7 | 转投 | 货物转给其余快递公司邮寄 |
10 | 待清关 | 货物期待清关 |
11 | 清关中 | 货物正在清关流程中 |
12 | 已清关 | 货物已实现清关流程 |
13 | 清关异样 | 货物在清关过程中出现异常 |
14 | 拒签 | 收件人明确拒收 |
签收状态服务可能对目前市面上大多数快递单状态进行精确断定。
若state=0,则condition如下值代表如下状态:
状态值 | 名称 | 含意 |
---|---|---|
CU001 | 期待清关 | 货物期待清关 |
CU002 | 清关中 | 货物正在清关流程中 |
CU003 | 已清关 | 货物已实现清关流程 |
CU004 | 清关异样 | 货物在清关过程中出现异常 |
JQ001 | 收件人拒签 | 收件人明确拒收 |
三、快递公司编码
<u>下载表格</u>
一、地图轨迹推送服务API产品介绍
快递100地图轨迹推送服务接口提供快递单号的地图轨迹展现、物流节点文字信息及预计送达工夫,可视化展现物流轨迹信息。
通过地图轨迹推送服务接口,企业提交快递单号,快递100接管到后便对这些运单进行跟踪,当运单状态发生变化的时候,快递100便通过调用回调接口将运单的跟踪信息和地图轨迹推送给贵公司,直到这些运单号的生命周期完结(个别以“已签收”为准)。对于某个单号,当贵方正确提交订阅了后,咱们个别会在15分钟左右后进行第一次监控,如果监控到单号自身有了跟踪信息,即进行第一次推送,否则期待下一次监控。尔后咱们个别每4小时进行一次监控,并会依据单号的状态等因素作调整。
二、地图轨迹推送服务API利用场景
- 让顾客登录您的网站、APP、小程序后,间接在“我的订单”页面内就能看到订单的物流状态和快递地图轨迹;
- 和物流轨迹文字信息一起展现给顾客,可视化订单的在途状态;
- 取得物流路径城市的信息,监控快递时效;
- 预估包裹的达到工夫,以及提醒包裹还需多长时间达到,辨认快递状态·,发送揭示客户签收短信;
- 能开发主动的、批量查单功能,主动筛选出“已签收”、“疑难件”等状态的单号,加重跟单人员的压力;
- 扭转订单的状态与交易流程,例如只有运单号变为“已签收”,就能让订单变更为能够确认退换货等;
- 核销销售人员,依据“已签收”的运复数,就能算出销售人员的业绩;
- 评估与抉择快递公司,可取得快递理论在途工夫,评估快递公司的时效,优化快递抉择;
- 助结算运费,找出“已签收”的单及签收工夫,便能轻松应答货到付款的结算与对账;
三、系统结构与流程
<img src="https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/0fc2759fd0754030a6992d61b6e363ec~tplv-k3u1fbpfcp-zoom-1.image" alt="img" style="zoom: 67%;" />
四、快递信息推送API费用结算
1.免费形式
地图轨迹推送服务属于增值类服务,该服务同时反对物流文字信息以及地图链接,即蕴含了快递信息推送服务的性能。注册快递100企业账号后能够在企业治理后盾查看地图轨迹套餐价格并购买。
2.免费价格
新品限时特惠,流动工夫:2021年1月1日-2021年3月31日,充值后即可开明应用。
原价/元 | 优惠价/元 | 单量 | 赠送/单 | 优惠单价/元 |
---|---|---|---|---|
2000 | 20000 | 5000 | 0.08 | |
1000 | 10000 | 2000 | 约0.084 | |
500 | 5000 | 500 | 约0.09 | |
100 | 1000 | 0.1 |
快递查问地图轨迹按单计费,一个天然月内同一个运单屡次查问只收一次费用。该接口独自计费。
3. 开具发票
快递100反对开具增值税发票,用户购买实现后可在企业治理后盾-费用核心-领取记录-申请开票。默认开具电子增值税普通发票,1000元以上可反对开具增值税专用发票。
官网源文档:
http://api.kuaidi100.com/docu...
https://api.kuaidi100.com/doc...
http://api.kuaidi100.com/docu...