关于javascript:快递100电商快递地图轨迹推送服务API接口案例代码

47次阅读

共计 7369 个字符,预计需要花费 19 分钟才能阅读完成。

一、地图轨迹订阅接口

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 利用场景

  1. 让顾客登录您的网站、APP、小程序后,间接在“我的订单”页面内就能看到订单的物流状态和快递地图轨迹;
  2. 和物流轨迹文字信息一起展现给顾客,可视化订单的在途状态;
  3. 取得物流路径城市的信息,监控快递时效;
  4. 预估包裹的达到工夫,以及提醒包裹还需多长时间达到,辨认快递状态·,发送揭示客户签收短信;
  5. 能开发主动的、批量查单功能,主动筛选出“已签收”、“疑难件”等状态的单号,加重跟单人员的压力;
  6. 扭转订单的状态与交易流程,例如只有运单号变为“已签收”,就能让订单变更为能够确认退换货等;
  7. 核销销售人员,依据“已签收”的运复数,就能算出销售人员的业绩;
  8. 评估与抉择快递公司,可取得快递理论在途工夫,评估快递公司的时效,优化快递抉择;
  9. 助结算运费,找出“已签收”的单及签收工夫,便能轻松应答货到付款的结算与对账;

三、系统结构与流程

<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 日,充值后即可开明应用。

原价 / 元 优惠价 / 元 单量 赠送 / 单 优惠单价 / 元
3000 2000 20000 5000 0.08
1500 1000 10000 2000 约 0.084
750 500 5000 500 约 0.09
150 100 1000 0.1

快递查问地图轨迹按单计费,一个天然月内同一个运单屡次查问只收一次费用。该接口独自计费。

3. 开具发票

快递 100 反对开具增值税发票,用户购买实现后可在企业治理后盾 - 费用核心 - 领取记录 - 申请开票。默认开具电子增值税普通发票,1000 元以上可反对开具增值税专用发票。

官网源文档:

http://api.kuaidi100.com/docu…
https://api.kuaidi100.com/doc…
http://api.kuaidi100.com/docu…

正文完
 0