快服务第三方对接文档

version 1.6
发布日期 2018-11-13

合作咨询电话:13699105453


OPENAPI 文档简介

快服务第三方对接系统,允许第三方以商户身份,对接快服务配送运力,开发者可以通过阅读本接口文档来帮助开发。为了识别商户,快服务配送平台针对每个商户账号会产生一个唯一的App Id,相对应App Id还会分配一个Secret Key,用于验证商户身份的合法性。

商户注册通道


接入说明

快服务 OPENAPI 系统,采用 REST 风格设计,所有接口请求地址都是可预期的以及面向资源的。使用规范的 HTTP 响应代码来表示请求结果的正确或错误信息,所有的 API 请求都会以规范友好的 JSON 对象格式返回(包括错误信息)。

一、通讯协议与报文格式

通讯双方采用http作为通讯协议,请求头必须添加:"Content-Type": "application/json;charset=utf-8",编码格式为UTF-8。

二、接口调用URL
三、签名规则

每个接口访问时需要带一个签名参数 sign ,假设请求传送的参数如下:

第一步,对参数按照key=value的格式,并按照参数名ASCII字典顺序从小到大排序如下:

第二步,拼接API密钥

key对应的value为app_secret的值,在联调和上线时进行分配。

第三步,签名字符串进行MD5加密,生成32位的字符串,并转换为大写,得到如下参数即为正确:

最终请求json:

特别注意:

四、联调参数

测试环境联调参数如下:

注:

  1. 公共参数中,access_token为商户授权token,是固定值。
  2. 联调测试阶段,使用联调测试参数进行开发测试,开发者通过接口返回信息,进行相应调整。
  3. 申请上线,第三方需要注册认证成为快服务商户,使用线上参数进行系统对接。

相关接口

一、计算配送费用

POST
http://*.*.net/openapi/v1/order/expense
请求参数说明
参数名 类型 是否必须 描述
sign string 签名,签名规则见文档接入说明
app_id string 开发者ID
access_token string 商户授权token
openid int 用户ID
goods_weight float 单位: kg
expect_time string 期望取货时间,格式:2018-11-13 17:00:00
receiver_city string 收货地所在城市
receiver_address string 收货人地址
receiver_lat string 收货人地址纬度,由百度地图提供
receiver_lng string 收货人地址经度,由百度地图提供
sender_city string 发货地所在城市
sender_address string 发货人地址
sender_lat string 发货人地址纬度,由百度地图提供
sender_lng string 发货人地址经度,由百度地图提供
响应参数说明
参数名 类型 示例值 描述
respcd string 0000 响应状态码
resperr string 签名错误 响应错误信息
expense1 float 18 专人直送配送费,单位为元。当返回值为-1时,表示当前区域不支持此服务
expense4 float 16.5 当日达配送费,单位为元。当返回值为-1时,表示当前区域不支持此服务
dist float 1.4 专人直送的配送距离,单位为km
成功返回值示例
异常返回值示例

二、查询目标地址所在站点

GET
http://*.*.net/openapi/v1/order/target_station
请求参数说明
参数名 类型 是否必须 描述
app_id string 开发者ID
city string 地址所在城市
address string 地址
business int 配送服务类型;1表示专人直送,4表示当日达或次日达
sign string 签名,签名规则见文档接入说明
响应参数说明
参数名 类型 示例值 描述
respcd string 0000 响应状态码
resperr string 分单失败 响应错误信息
address string 地址 目标地址
city string 北京市 城市
station_id int 103058 站点ID
station_name string 青年路快服务 配送站点
成功返回值示例
异常返回值示例

三、推送订单

POST
http://*.*.net/openapi/v1/order/add
请求参数说明
参数名 类型 是否必须 描述
sign string 签名,签名规则见文档接入说明
app_id string 开发者ID
openid int 商户ID
access_token string 用户授权token
order_id string 第三方对接平台订单ID,长度不超过16位
business int 配送服务类型;1表示专人直送,4表示当日达或次日达
ship_id string 运单ID,只适用于同城当日达、次日达业务,长度不超过16位
sub_sheet string 子单ID,只适用于当日达或次日达子母单业务(多个子单号为1,2,3)
goods_info string 订单商品信息
goods_weight float 订单商品重量,单位: kg,business为4时,为必须参数
goods_price int 订单代收货款,单位: 分
remark string 订单备注信息
expect_time string 期望取货时间,business为4时,时间在09:00~18:00之间
sender_name string 发货人名称
sender_address string 商户地址(发货人地址)
sender_city string 发货地所在位置城市名,如”北京市”
sender_tel string 发货人手机号
sender_lat float 发货人地址纬度,由百度地图提供
sender_lng float 发货人地址经度,由百度地图提供
receiver_name string 收货人名称
receiver_address string 收货人地址
receiver_city string 收货地所在城市
receiver_tel string 收货人手机号
receiver_lat float 收货人地址纬度,由百度地图提供
receiver_lng float 收货人地址经度,由百度地图提供
callback_url string 回调url,订单状态变更时回调
响应参数说明
参数名 类型 示例值 描述
respcd string 0000 响应状态码
resperr string 签名错误 响应错误信息
order_id string 1234567890 对接方订单ID
ship_id string 1234567890 快服务运单ID,后续根据此ID查询订单状态
expense float 16.5 订单配送费用
请求参数示例
成功返回值示例
异常返回值示例

四、查询订单配送状态

POST
http://*.*.net/openapi/v1/order/status
请求参数说明
参数名 类型 是否必须 描述
app_id string 开发者ID
access_token string 用户授权token,平台查询无需提供
ship_id string 运单ID
sign string 签名,签名规则见文档接入说明
响应参数说明
参数名 类型 示例值 描述
respcd string 0000 响应状态码
resperr string 没有该运单 响应错误信息
order_id string 20181111905467 对接方订单ID
ship_id string KN10161346061 快服务运单ID,后续根据此ID查询订单状态
headquarters string 北京快服务 配送所属分站
business int 4 配送服务类型;1表示专人直送,4表示当日达或次日达
order_status int 2 状态说明,1=已创建,2=已接单,3=已取货,4=已送达,7=已取消
state int 4 物流状态,只适用于同城当日达、次日达业务 0=发件,1=到件,2=收(揽)件,3=派件,4=签收,5=退回,6=退签
courier_name string 陈师傅 骑士姓名
courier_mobile string 13000000000 骑士联系方式
courier_lat float 39.915210 骑士纬度
courier_lng float 116.403900 骑士经度
details list [] 配送详情
成功返回值示例
异常返回值示例

五、取消订单

POST
http://*.*.net/openapi/v1/order/cancel
请求参数说明
参数名 类型 是否必须 描述
app_id string 开发者ID
access_token string 用户授权token
ship_id string 运单ID
order_id string 订单ID
reason string 取消原因
sign string 签名,签名规则见文档接入说明
响应参数说明
参数名 类型 示例值 描述
respcd string 0000 响应状态码
resperr string 已经签收的运单,无法操作 响应错误信息
status string ok 取消状态
info string 取消成功
成功返回值示例
异常返回值示例

六、订单状态回调

POST
下单接口传入的callback_url / 订单订阅时的callback_url
请求参数说明
参数名 类型 示例值 描述
order_id string 20181111905467 对接方订单ID
ship_id string KN10161346061 快服务运单ID,后续根据此ID查询订单状态
headquarters string 北京快服务 配送所属分站
order_status int 2 状态说明,1=已创建,2=已接单,3=已取货,4=已送达,7=已取消
state int 4 物流状态,0=发件,1=到件,2=收(揽)件,3=派件,4=签收,5=退回,6=退签
courier_name string 陈师傅 骑士姓名
courier_mobile string 13000000000 骑士联系方式
courier_lat float 39.915210 骑士纬度
courier_lng float 116.403900 骑士经度
msg string 用户取消 补充信息,如取消原因
operation_time string 2018-11-13 14:44:25 操作时间
details list 状态变更详情
响应参数说明
类型 示例值 描述
string success 第三方处理正常请返回success字符串,否则,会重新请求一次回调接口
请求参数示例
成功返回值示例

【注意事项】

  1. 接口参数涉及经纬度的统一要求百度地图提供的经纬度信息,其他经纬度需做转换。
  2. 返回值为签名错误时,都是因为sign构造时,没有按照文档签名规则进行处理。
  3. 返回值为服务异常时,可能是由于参数缺失或地址超出配送范围,请严格按照接口文档进行参数构造。
  4. 下单接口,order_id和ship_id可以相同,若存在ship_id,快服务系统运单ID以此为准。
  5. 订单状态回调,除下单操作以外,每次变更订单状态都会进行回调。
  6. 线上环境参数需要联系我们进行分配,线上请求域名为:http://*.*.kfw.net