同城配送接口文档
一、同城配送预下单接口
该接口并非真正发单,是用来验证是否可以发单并在成功时返回时效、计价等信息,也可用来验证地址以及时间是否在快递公司的配送范围内。
1.1 接口格式
提供统一格式的HTTP POST或GET调用接口,并返回统一格式JSON数据。
1.2 请求地址
https://api.kuaidi100.com/bsamecity/order
请求参数:
参数名 | 是否必填 | 类型 | 说明 |
---|---|---|---|
method | 是 | string | 业务类型(默认:price) |
key | 是 | string | 授权码,请到快递100页面申请企业版接口获取 |
sign | 是 | string | 32位大写,签名,用于验证身份,按MD5 (param +t+key+ secret)的顺序进行MD5加密,不需要加上“+”号。secret在企业管理后台获取 |
t | 是 | string | 时间戳如:1576123932000 |
param | 是 | param | 由其他字段拼接 |
param数据结构:
参数名 | 是否必填 | 类型 | 说明 |
---|---|---|---|
kuaidicom | 是 | string | 快递公司的编码,一律用小写字母,见参数字典 |
lbsType | 否 | Int | 坐标类型(1:百度坐标,2:高德坐标 ,默认2) |
recManName | 是 | string | 收件人姓名,长度最大20 |
recManMobile | 是 | string | 收件人的手机号(有手机号和固话正则校验) |
recManProvince | 是 | string | 收件人所在的省,长度最大20 |
recManCity | 是 | string | 收件人所在的市,长度最大20 |
recManDistrict | 是 | string | 收件人所在的区,长度最大20 |
recManAddr | 是 | string | 收件人所在完整地址,如广东深圳市深圳市南山区科技南十二路2号金蝶软件园,长度最大100 |
recManLat | 是 | string | 收件人地址纬度,默认高德坐标,长度最大10 |
recManLng | 是 | string | 收件人地址经度,默认高德坐标,长度最大10 |
sendManName | 是 | string | 寄件人姓名,长度最大20 |
sendManMobile | 是 | string | 寄件人的手机号(有手机号和固话正则校验) |
sendManProvince | 是 | string | 寄件人所在的省,长度最大20 |
sendManCity | 是 | string | 寄件人所在的市,长度最大20 |
sendManDistrict | 是 | string | 寄件人所在的区,长度最大20 |
sendManAddr | 是 | string | 寄件人所在完整地址,如广东深圳市深圳市南山区科技南十二路2号金蝶软件园,长度最大100 |
sendManLat | 是 | string | 寄件人地址纬度,默认高德坐标,长度最大10 |
sendManLng | 是 | string | 寄件人地址经度,默认高德坐标,长度最大10 |
weight | 是 | string | 物品总重量,例:1.5,单位kg |
remark | 否 | string | 备注,例:测试寄件,长度最大255 |
orderType | 否 | Int | 0:无需预约; 1:预约单送达时间; 2:预约单上门时间。 默认为0 |
expectPickupTime | 否 | string | 期望取货时间,orderType=2时必填,例:2020-02-02 22:00 |
expectFinishTime | 否 | string | 期望送达时间,orderType=1时必填,例:2020-02-02 22:00 |
insurance | 否 | string | 保价物品金额 |
price | 是 | string | 物品总金额,例:100.23,单位:元 |
directDelivery | 否 | Int | 是否为专人直送订单,0:否,1:是 |
goods | 是 | List | 商品详情 |
goods数据结构:
参数名 | 是否必填 | 类型 | 说明 |
---|---|---|---|
name | 否 | String | 商品名称 |
type | 是 | String | 物品类型,详见参数字典:三、物品类型对照表 |
count | 是 | Int | 商品数量 |
1.3 返回结果
字段 | 类型 | 说明 | 备注 |
---|---|---|---|
success | boolean | 提交结果 | true提交成功,false失败 |
code | Int | 返回编码 | 200为成功 |
message | string | 返回报文描述 | |
data | Object |
data数据结构
字段 | 类型 | 说明 | 备注 |
---|---|---|---|
taskId | string | 任务ID | 32位随机字符串,用于记录订单整个生命周期 |
deliveryDistance | string | 配送距离 | 单位:米 |
discountFee | string | 配送费(折扣价) | 单位:元 |
otherFee | List | 其他费用明细 | 详见参数字典:二、费用类型对照表 |
FeeDetail参数
字段 | 说明 | 备注 |
---|---|---|
feeType | 费用类型 | 详见参数字典:二、费用类型对照表 |
amount | 费用明细金额 | 单位:元 |
1.4 提供数据内容
请求参数示例
返回结果示例
1.5 信息代码含义
信息代码 | 信息内容描述 | 原因及建议处理方式 |
---|---|---|
200 | 成功 | 成功 |
-1 | 服务器错误 | 快递100的服务器出现间歇或临时性异常,有时如果因为不按规范提交请求,比如快递公司参数写错等,也会报此错误 |
30001 | 参数错误 | 请根据技术文档请求,注意参数类型及是否必填 |
30002 | 验证签名失败 | 检查加密方式,param +t+key+ secret的顺序进行MD5加密,加密后字符串转32位大写,不用加上“+”号 |
30003 | 账号信息不正确 | 检查key是否正确 |
30004 | 账号余额不足 | 余额不足需要充值 |
30005 | 快递公司返回异常 | 按照描述可以自行检查是否参数缺失或者错误 |
30006 | 参数转换异常 | 按照描述可以自行检查参数的数据类型是否正确 |
二、同城配送下单接口
真实下发订单到快递公司,下单会产生费用扣减。
2.1 接口格式
提供统一格式的HTTP POST或GET调用接口,并返回统一格式JSON数据。
###2.2 请求地址
https://api.kuaidi100.com/bsamecity/order
请求参数:
参数名 | 是否必填 | 类型 | 说明 |
---|---|---|---|
method | 是 | string | 业务类型(默认:order) |
key | 是 | string | 授权码,请到快递100页面申请企业版接口获取 |
sign | 是 | string | 32位大写,签名,用于验证身份,按MD5 (param +t+key+ secret)的顺序进行MD5加密,不需要加上“+”号。secret在企业管理后台获取 |
t | 是 | string | 时间戳如:1576123932000 |
param | 是 | param | 由其他字段拼接 |
param数据结构:
参数名 | 是否必填 | 类型 | 说明 | |
---|---|---|---|---|
kuaidicom | 是 | string | 快递公司的编码,一律用小写字母,见参数字典 | |
lbsType | 否 | Int | 坐标类型(1:百度坐标,2:高德坐标 ,默认2) | |
recManName | 是 | string | 收件人姓名,长度最大20 | |
recManMobile | 是 | string | 收件人的手机号(有手机号和固话正则校验) | |
recManProvince | 是 | string | 收件人所在的省,长度最大20 | |
recManCity | 是 | string | 收件人所在的市,长度最大20 | |
recManDistrict | 是 | string | 收件人所在的区,长度最大20 | |
recManAddr | 是 | string | 收件人所在完整地址,如广东深圳市深圳市南山区科技南十二路2号金蝶软件园,长度最大100 | |
recManLat | 是 | string | 收件人地址纬度,默认高德坐标,长度最大10 | |
recManLng | 是 | string | 收件人地址经度,默认高德坐标,长度最大10 | |
sendManName | 是 | string | 寄件人姓名,长度最大20 | |
sendManMobile | 是 | string | 寄件人的手机号(有手机号和固话正则校验) | |
sendManProvince | 是 | string | 寄件人所在的省,长度最大20 | |
sendManCity | 是 | string | 寄件人所在的市,长度最大20 | |
sendManDistrict | 是 | string | 寄件人所在的区,长度最大20 | |
sendManAddr | 是 | string | 寄件人所在完整地址,如广东深圳市深圳市南山区科技南十二路2号金蝶软件园,长度最大100 | |
sendManLat | 是 | string | 寄件人地址纬度,默认高德坐标,长度最大10 | |
sendManLng | 是 | string | 寄件人地址经度,默认高德坐标,长度最大10 | |
weight | 是 | string | 物品总重量,例:1.5,单位kg | |
remark | 否 | string | 备注,例:测试寄件,长度最大255 | |
volume | 否 | string | 体积,单位:cm3,长度最大20 | |
salt | 否 | string | 签名用随机字符串,长度最多20 | |
callbackUrl | 否 | string | callBackUrl订单信息回调,长度最大50 | |
orderType | 否 | Int | 0:无需预约; 1:预约单送达时间; 2:预约单上门时间。 默认为0 | |
expectPickupTime | 否 | string | 期望取货时间,orderType=2时必填,例:2020-02-02 22:00 | |
expectFinishTime | 否 | string | 期望送达时间,orderType=1时必填,例:2020-02-02 22:00 | |
insurance | 否 | string | 保价物品金额 | |
price | 是 | string | 物品总金额,例:100.23,单位:元 | |
directDelivery | 否 | Int | 是否为专人直送订单,0:否,1:是 | |
goods | 是 | List | 商品详情 |
goods数据结构:
参数名 | 是否必填 | 类型 | 说明 |
---|---|---|---|
name | 否 | String | 商品名称 |
type | 是 | String | 物品类型,详见参数字典:三、物品类型对照表 |
count | 是 | Int | 商品数量 |
2.3 返回结果
字段 | 类型 | 说明 | 备注 |
---|---|---|---|
success | boolean | 提交结果 | true提交成功,false失败 |
code | Int | 返回编码 | 200为成功 |
message | string | 返回报文描述 | |
data | Object |
data数据结构
字段 | 类型 | 说明 | 备注 |
---|---|---|---|
taskId | string | 任务ID | 32位随机字符串,用于记录订单整个生命周期 |
orderId | string | 同城寄件订单号 | 快递100订单号 |
kuaidinum | string | 快递单号 | |
deliveryDistance | string | 配送距离 | 单位:米 |
discountFee | string | 配送费(折扣价) | 单位:元 |
estimateDeliveryTime | string | 预计配送时间 | 单位:秒 |
otherFee | List | 其他费用明细 | 详见参数字典:二、费用类型对照表 |
FeeDetail参数
字段 | 说明 | 备注 |
---|---|---|
feeType | 费用类型 | 详见参数字典:二、费用类型对照表 |
amount | 费用明细金额 | 单位:元 |
2.4 提供数据内容
请求参数示例
返回结果示例
2.5 信息代码含义
信息代码 | 信息内容描述 | 原因及建议处理方式 |
---|---|---|
200 | 成功 | 成功 |
-1 | 服务器错误 | 快递100的服务器出现间歇或临时性异常,有时如果因为不按规范提交请求,比如快递公司参数写错等,也会报此错误 |
30001 | 参数错误 | 请根据技术文档请求,注意参数类型及是否必填 |
30002 | 验证签名失败 | 检查加密方式,param +t+key+ secret的顺序进行MD5加密,加密后字符串转32位大写,不用加上“+”号 |
30003 | 账号信息不正确 | 检查key是否正确 |
30004 | 账号余额不足 | 余额不足需要充值 |
30005 | 快递公司返回异常 | 按照描述可以自行检查是否参数缺失或者错误 |
30006 | 参数转换异常 | 按照描述可以自行检查参数的数据类型是否正确 |
三、同城配送预取消接口
该接口并非真正取消订单,用来验证是否可以取消订单并返回计价等信息。
3.1 接口格式
提供统一格式的HTTP POST或GET调用接口,并返回统一格式JSON数据。
3.2 请求地址
https://api.kuaidi100.com/bsamecity/order
请求参数:
参数名 | 是否必填 | 类型 | 说明 |
---|---|---|---|
method | 是 | string | 业务类型(默认:precancel) |
key | 是 | string | 授权码,请到快递100页面申请企业版接口获取 |
sign | 是 | string | 32位大写,签名,用于验证身份,按MD5 (param +t+key+ secret)的顺序进行MD5加密,不需要加上“+”号。secret在企业管理后台获取 |
t | 是 | string | 时间戳如:1576123932000 |
param | 是 | param | 由其他字段拼接 |
param数据结构:
参数名 | 是否必填 | 类型 | 说明 |
---|---|---|---|
taskId | 是 | string | 下单时返回的taskId |
orderId | 是 | string | 订单ID |
cancelMsgType | 是 | Int | 取消原因编码,详见参数字典:四、取消原因类型对照表 |
cancelMsg | 否 | string | 取消原因 |
3.3 返回结果
字段 | 类型 | 说明 | 备注 |
---|---|---|---|
success | boolean | 提交结果 | true提交成功,false失败 |
code | Int | 返回编码 | 200为成功 |
message | string | 返回报文描述 | |
data | Object |
data数据结构
字段 | 类型 | 说明 | 备注 |
---|---|---|---|
cancelFee | string | 取消费用 |
3.4 提供数据内容
请求参数示例
返回结果示例
3.5 信息代码含义
信息代码 | 信息内容描述 | 原因及建议处理方式 |
---|---|---|
200 | 成功 | 成功 |
-1 | 服务器错误 | 快递100的服务器出现间歇或临时性异常,有时如果因为不按规范提交请求,比如快递公司参数写错等,也会报此错误 |
30001 | 参数错误 | 请根据技术文档请求,注意参数类型及是否必填 |
30002 | 验证签名失败 | 检查加密方式,param +t+key+ secret的顺序进行MD5加密,加密后字符串转32位大写,不用加上“+”号 |
30003 | 账号信息不正确 | 检查key是否正确 |
30004 | 账号余额不足 | 余额不足需要充值 |
30005 | 快递公司返回异常 | 例:订单已取消,照描述可以自行检查参数的数据类型是否正确 |
30006 | 参数转换异常 | 按照描述可以自行检查参数的数据类型是否正确 |
四、同城配送取消接口
当商家处发生异常需要取消配送时,可调用此接口对订单进行取消操作,同步返回结果。(注意可能产生费用)
4.1 接口格式
提供统一格式的HTTP POST或GET调用接口,并返回统一格式JSON数据。
4.2 请求地址
https://api.kuaidi100.com/bsamecity/order
请求参数:
参数名 | 是否必填 | 类型 | 说明 |
---|---|---|---|
method | 是 | string | 业务类型(默认:cancel) |
key | 是 | string | 授权码,请到快递100页面申请企业版接口获取 |
sign | 是 | string | 32位大写,签名,用于验证身份,按MD5 (param +t+key+ secret)的顺序进行MD5加密,不需要加上“+”号。secret在企业管理后台获取 |
t | 是 | string | 时间戳如:1576123932000 |
param | 是 | param | 由其他字段拼接 |
param数据结构:
参数名 | 是否必填 | 类型 | 说明 |
---|---|---|---|
taskId | 是 | string | 下单时返回的taskId |
orderId | 是 | string | 订单ID |
cancelMsgType | 是 | Int | 取消原因类型,详见参数字典:四、取消原因类型对照表 |
cancelMsg | 否 | string | 取消原因 |
4.3 返回结果
字段 | 类型 | 说明 | 备注 |
---|---|---|---|
success | boolean | 提交结果 | true提交成功,false失败 |
code | Int | 返回编码 | 200为成功 |
message | string | 返回报文描述 | |
data | Object |
data数据结构
字段 | 类型 | 说明 | 备注 |
---|---|---|---|
cancelFee | string | 取消费用 |
4.4 提供数据内容
请求参数示例
返回结果示例
4.5 信息代码含义
信息代码 | 信息内容描述 | 原因及建议处理方式 |
---|---|---|
200 | 成功 | 成功 |
-1 | 服务器错误 | 快递100的服务器出现间歇或临时性异常,有时如果因为不按规范提交请求,比如快递公司参数写错等,也会报此错误 |
30001 | 参数错误 | 请根据技术文档请求,注意参数类型及是否必填 |
30002 | 验证签名失败 | 检查加密方式,param +t+key+ secret的顺序进行MD5加密,加密后字符串转32位大写,不用加上“+”号 |
30003 | 账号信息不正确 | 检查key是否正确 |
30004 | 账号余额不足 | 余额不足需要充值 |
30005 | 快递公司返回异常 | 例:订单已取消,照描述可以自行检查参数的数据类型是否正确 |
30006 | 参数转换异常 | 按照描述可以自行检查参数的数据类型是否正确 |
五、同城配送加小费接口
订单创建后,在骑手未接单的情况下通过该接口对订单进行加小费,促进订单接单,截止订单完成前,都可以对订单加小费。
5.1 接口格式
提供统一格式的HTTP POST或GET调用接口,并返回统一格式JSON数据。
5.2 请求地址
https://api.kuaidi100.com/bsamecity/order
请求参数:
参数名 | 是否必填 | 类型 | 说明 |
---|---|---|---|
method | 是 | string | 业务类型(默认:addfee) |
key | 是 | string | 授权码,请到快递100页面申请企业版接口获取 |
sign | 是 | string | 32位大写,签名,用于验证身份,按MD5 (param +t+key+ secret)的顺序进行MD5加密,不需要加上“+”号。secret在企业管理后台获取 |
t | 是 | string | 时间戳如:1576123932000 |
param | 是 | param | 由其他字段拼接 |
param数据结构:
参数名 | 是否必填 | 类型 | 说明 |
---|---|---|---|
taskId | 是 | string | 下单时返回的taskId |
orderId | 是 | string | 订单ID |
tips | 是 | string | 小费金额,单位:元 |
remark | 否 | string | 备注 |
5.3 返回结果
字段 | 类型 | 说明 | 备注 |
---|---|---|---|
success | boolean | 提交结果 | true提交成功,false失败 |
code | Int | 返回编码 | 200为成功 |
message | string | 返回报文描述 | |
data | string | 相应的数据 |
5.4 提供数据内容
请求参数示例
返回结果示例
5.5 信息代码含义
信息代码 | 信息内容描述 | 原因及建议处理方式 |
---|---|---|
200 | 成功 | 成功 |
-1 | 服务器错误 | 快递100的服务器出现间歇或临时性异常,有时如果因为不按规范提交请求,比如快递公司参数写错等,也会报此错误 |
30001 | 参数错误 | 请根据技术文档请求,注意参数类型及是否必填 |
30002 | 验证签名失败 | 检查加密方式,param +t+key+ secret的顺序进行MD5加密,加密后字符串转32位大写,不用加上“+”号 |
30003 | 账号信息不正确 | 检查key是否正确 |
30005 | 快递公司返回异常 | 例:订单已取消,照描述可以自行检查参数的数据类型是否正确 |
六、同城配送订单状态回调接口
当订单状态发生变更时,将会通过下单时传入的callbackUrl回推信息。回调后如果没有得到合作方正确返回,会重复回调多2次,即最多回调3次,间隔1分钟。
6.1 接口格式
提供统一格式的HTTP POST或GET调用接口,并返回统一格式JSON数据。
6.2 请求地址
由贵司在下单接口中通过callBackUrl字段提供
请求参数
参数名 | 类型 | 说明 |
---|---|---|
taskId | string | 任务ID |
sign | string | 加密字符串签名:MD5 (param +salt) |
param | param | 参数主体 |
param数据结构:
参数名 | 类型 | 说明 |
---|---|---|
orderId | string | 订单ID (对应下单时返回的orderId ) |
kuaidicom | param | 快递公司编码 |
status | Int | 订单状态,0:下单成功;100:已接单;210:待取件;230:已到店;310:配送中;515:转单改派中;510:订单状态异常(非终态);520:已完成;;720:订单取消;710:用户取消订单 |
statusDesc | string | 订单状态描述 |
courierName | string | 骑手姓名 |
courierMobile | string | 骑手电话 |
expectFinishTime | string | 预计送达时间(格式 yyyy-MM-dd HH:mm:ss) |
updateTime | string | 状态更新时间 |
6.3 返回结果
字段 | 类型 | 说明 | 备注 |
---|---|---|---|
result | boolean | 提交结果 | true提交成功,false失败 |
returnCode | string | 返回编码 | |
message | string | 返回报文描述 |
6.4 提供数据内容
请求结果示例
返回结果示例
说明:
字段名称 | 字段含义 | |
---|---|---|
result | true表示成功,false表示失败。如果提交回调接口的地址失败,1分钟后重新回调,3次仍旧失败的,自动放弃 | |
returnCode | 200: 提交成功 500: 服务器错误 其他错误请自行定义 | |
message | 返回的提示 |
其他信息快递100会忽略。