首页 > API文档 > 电子面单API
电子面单API为用户提供电子面单下单服务,快递鸟连接多家物流公司,一次接入即可对接多家物流公司电子面单下单通道,为订单信息化、标准化提供保障服务。用户接通快递鸟电子面单API,即可直接下单顺丰、EMS、宅急送、邮政快递包裹等七家公司面单,无需申请开通其他服务。
快递公司支持情况
顺丰速运、EMS、邮政快递包裹、圆通速递、申通快递、德邦快递、中通快递、韵达速递、百世快递、优速快递、跨越速运、丰网速运、京东快递、速尔快递、信丰物流、品骏快递、承诺达、极兔速递、丹鸟物流、苏宁物流、众邮快递、远成快运、京广速递、宅急送、联昊通速递、东方汇、温通物流、递易家、全一快递快运公司支持情况
腾林物流、百腾物流、天地华宇、德邦快运、安能快运、京东快运、龙邦快运、百世快运、中通快运、佳吉快运、韵达快运、顺心捷达、京运达、宏递快运、汇霖速运、汇森速运、壹米滴答账号类型 | 支持快递公司 |
---|
无需申请直接打单 | 顺丰速运(SF)、宅急送(ZJS)、联昊通速递(LHT)、东方汇(EST365)、温通物流(WTWL)、递易家(DYJ) |
月结账号直接打单 | 德邦(DBL)、EMS(EMS) |
线下(网点)申请账号 | 顺丰速运(SF)、EMS(EMS)、邮政快递包裹(YZPY)、圆通速递(YTO)、申通快递(STO)、德邦快递(DBL)、中通快递(ZTO)、韵达速递(YD)、百世快递(HTKY)、优速快递(UC)、跨越速运(KYSY)、丰网速运(FWX)、京东快递(JD)、速尔快递(SURE)、信丰物流(XFEX)、品骏快递(PJ)、承诺达(CND)、极兔速递(JTSD)、丹鸟物流(DNWL)、苏宁物流(SNWL)、众邮快递(ZYE)、远成快运(YCWL)、京广速递(JGSD)、宅急送(ZJS)、全一快递(UAPEX) |
快运电子面单 | 腾林物流(TLWL)、百腾物流(BETWL)、天地华宇(HOAU)、德邦快运(DBLKY)、安能快运(ANEKY)、京东快运(JDKY)、龙邦快运(LB)、百世快运(HTKYKY)、中通快运(ZTOKY)、佳吉快运(CNEX)、韵达快运(YDKY)、顺心捷达(SX)、京运达(JYD)、宏递快运(HDWL)、汇霖速运(HUILIN56)、汇森速运(HSSY)、壹米滴答(YMDD) |
更多快递公司,陆续接入中。
下单+打印
a)商家操作发货时同步订单的发/收件人信息、货物信息,通过接口直接发送到快递公司获取电子面单单号、大头笔、电子面单打印模板等信息。通过浏览器或CS结构客户端打印工具进行打印电子面单。
商家使用流程
一、接口描述/说明
1.电子面单接口
(1)电子面单接口是快递鸟提供给独立电商、仓储管理系统、物流供应链等物流系统平台使用的下单接口。
(2)为客户解决在线发货需求,商户通过网络选择快递公司发送请求通知快递公司有快递要发货。
(3)
客户把数据通过此接口转发到快递鸟,由快递鸟为您安排快递员上门取件的服务。
(4)订单编号(OrderCode)不可重复提交,重复提交系统会返回具体错误代码。
(5)接口支持的消息接收方式为HTTP POST,请求方法的编码格式(utf-8):"application/x-www-form-urlencoded;charset=utf-8"。
(6)接口地址:
API测试地址:http://sandboxapi.kdniao.com:8080/kdniaosandbox/gateway/exterfaceInvoke.json
API正式地址:https://api.kdniao.com/api/EOrderService
请求系统级参数说明:
参数名称 | 类型 | 说明 | 必须要求 |
---|
RequestData | String | 请求内容需进行URL(utf-8)编码。请求内容JSON格式,须和DataType一致。 | 是 |
EBusinessID | String | 商户ID,请在我的服务页面查看。 | 是 |
RequestType | String | 请求指令类型:1007 | 是 |
DataSign | String | 数据内容签名:把(请求内容(未编码)+AppKey)进行MD5加密,然后Base64编码,最后
进行URL(utf-8)编码。详细过程请查看Demo。 | 是 |
DataType | String | 请求、返回数据类型:只支持JSON格式 | 否 |
2.订单取消接口
(1)只支持有成功下单记录的订单进行取消。
(2)只支持对未揽件的订单进行取消。
(3)订单取消后,订单号仍不可重复使用。
(4)订单取消后快递单号的回收规则以快递公司为准。
(5)接口地址:
API测试地址:http://sandboxapi.kdniao.com:8080/kdniaosandbox/gateway/exterfaceInvoke.json
API正式地址:https://api.kdniao.com/api/EOrderService
请求系统级参数说明:
参数名称 | 类型 | 说明 | 必须要求 |
---|
RequestData | String | 请求内容需进行URL(utf-8)编码。请求内容JSON格式,须和DataType一致。 | 是 |
EBusinessID | String | 商户ID,请在我的服务页面查看。 | 是 |
RequestType | String | 请求指令类型:1147 | 是 |
DataSign | String | 数据内容签名:把(请求内容(未编码)+AppKey)进行MD5加密,然后Base64编码,最后
进行URL(utf-8)编码。详细过程请查看Demo。 | 是 |
DataType | String | 请求、返回数据类型:只支持JSON格式 | 否 |
3.单号余量查询接口
请求系统级参数说明:
参数名称 | 类型 | 说明 | 必须要求 |
---|
RequestData | String | 请求内容需进行URL(utf-8)编码。请求内容JSON格式,须和DataType一致。 | 是 |
EBusinessID | String | 商户ID,请在我的服务页面查看。 | 是 |
RequestType | String | 请求指令类型:1127 | 是 |
DataSign | String | 数据内容签名:把(请求内容(未编码)+AppKey)进行MD5加密,然后Base64编码,最后
进行URL(utf-8)编码。详细过程请查看Demo。 | 是 |
DataType | String | 请求、返回数据类型:只支持JSON格式 | 否 |
4.客户号申请接口
请求系统级参数说明:
参数名称 | 类型 | 说明 | 必须要求 |
---|
RequestData | String | 请求内容需进行URL(utf-8)编码。请求内容JSON格式,须和DataType一致。 | 是 |
EBusinessID | String | 商户ID,请在我的服务页面查看。 | 是 |
RequestType | String | 请求指令类型:1127 | 是 |
DataSign | String | 数据内容签名:把(请求内容(未编码)+AppKey)进行MD5加密,然后Base64编码,最后
进行URL(utf-8)编码。详细过程请查看Demo。 | 是 |
DataType | String | 请求、返回数据类型:只支持JSON格式 | 否 |
5.客户号推送接口
(1)推送时会推送RequestType、RequestData和DataSign三个参数
(格式:RequestData={数据}&EBusinessID=1237100 &PushTime=2017-04-18
23:34:29&RequestType=1117) 。
请求系统级参数说明:
参数名称 | 类型 | 说明 | 必须要求 |
---|
RequestData | String | 请求内容需进行URL(utf-8)编码。请求内容JSON格式,须和DataType一致。 | 是 |
EBusinessID | String | 商户ID,请在我的服务页面查看。 | 是 |
RequestType | String | 请求指令类型:1117 | 是 |
DataSign | String | 数据内容签名:把(请求内容(未编码)+AppKey)进行MD5加密,然后Base64编码,最后
进行URL(utf-8)编码。详细过程请查看Demo。 | 是 |
DataType | String | 请求、返回数据类型:只支持JSON格式 | 否 |
二、接口参数
1.电子面单接口
请求内容字段定义:
参数名称 | 类型 | 说明 | 是否必须 |
---|
MemberID | String(50) | ERP系统、电商平台等系统或平台类型用户的会员ID或店铺账号等唯一性标识,用于区分其用户 | 否 |
CustomerName | String(50) | 电子面单客户号,需要下载《快递鸟电子面单客户号参数对照表.xlsx》,参考对应字段传值 | 否 |
CustomerPwd | String(30) | 否 |
SendSite | String(30) | 否 |
SendStaff | String(30) | 可选 |
MonthCode | String | 可选 |
CustomArea | String(500) | 商家自定义区域 | 可选 |
WareHouseID | String(30) | 发货仓编码 | 否 |
TransType | Int(1) | 运输方式 1- 陆运 2- 空运 不填默认为1 | 否 |
ShipperCode | String(10) | 快递公司编码 详细编码参考《快递鸟接口支持快递公司编码.xlsx》 | 是 |
LogisticCode | String(30) | 快递单号(仅宅急送可用) | 否 |
ThrOrderCode | String(50) | 第三方订单号 (ShipperCode为JD且ExpType为1时必填) | 可选 |
OrderCode | String(30) | 订单编号(自定义,不可重复) | 是 |
PayType | Int(1) | 邮费支付方式:1-现付,2-到付,3-月结,4-第三方支付(仅SF支持) | 是 |
ExpType | String(2) | 快递类型:1-标准快件 ,详细快递类型参考《快递公司快递业务类型.xlsx》 | 是 |
IsReturnSignBill | Int(1) | 是否要求签回单 1- 要求 0-不要求 | 否 |
OperateRequire | String(20) | 签回单操作要求(如:签名、盖章、身份证复印件等) | 否 |
Cost | Cost Double(5) | 快递运费 | 否 |
OtherCost | Double(5) | 其他费用 | 否 |
Receiver | Company | String(30) | 收件人公司 | 否 |
Name | String(30) | 收件人 | 是 |
Tel | String(20) | 电话与手机,必填一个 | 是 |
Mobile | String(20) |
PostCode | String(10) | 收件人邮编 | 可选 |
ProvinceName | String(20) | 收件省 (如广东省,不要缺少“省”;如是直辖市,请直接传北京、上海等;
如是自治区,请直接传广西壮族自治区等) | 是 |
CityName | String(20) | 收件市(如深圳市,不要缺少“市”;
如果是市辖区,请直接传北京市、上海市等) | 是 |
ExpAreaName | String(20) | 收件区/县(如福田区,不要缺少“区”或“县”) | 是 |
Address | String(100) | 收件人详细地址 | 是 |
Sender | Company | String(30) | 发件人公司 | 否 |
Name | String(30) | 发件人 | 是 |
Tel | String(20) | 电话与手机,必填一个 | 是 |
Mobile | String(20) |
PostCode | String(10) | 发件地邮编(ShipperCode为EMS、YZPY、YZBK时必填) | 可选 |
ProvinceName | String(20) | 发件省 (如广东省,不要缺少“省”;
如是直辖市,请直接传北京、上海等;
如是自治区,请直接传广西壮族自治区等) | 是 |
CityName | String(20) | 发件市(如深圳市,不要缺少“市;
如是市辖区,请直接传北京市、上海市等”) | 是 |
ExpAreaName | String(20) | 发件区/县(如福田区,不要缺少“区”或“县”) | 是 |
Address | String(100) | 发件人详细地址 | 是 |
IsNotice | Int(1) | 是否通知快递员上门揽件 0- 通知 1- 不通知 不填则默认为1 | 否 |
StartDate | Date | 上门取货时间段:"yyyy-MM-dd HH:mm:ss"格式化,本文中所有时间格式相同 | 否 |
EndDate | Date | 否 |
Weight | Double(10,3) | 包裹总重量kg
当为快运的订单时必填,不填时快递鸟将根据各个快运公司要求传对应的默认值 | 可选 |
Quantity | Int(2) | 包裹数(最多支持30件)
一个包裹对应一个运单号,如果是大于1个包裹,返回则按照子母件的方式返回母运单号和子运单号 | 是 |
Volume | Double(20,3) | 包裹总体积m3
当为快运的订单时必填,不填时快递鸟将根据各个快运公司要求传对应的默认值 | 可选 |
Remark | String(60) | 备注 | 否 |
AddServices |
AddService | Name | String(20) | 增值服务名称 (数组形式,可以有多个增值服务) | 可选 |
Value | String(30) | 增值服务值 | 可选 |
CustomerID | String(30) | 客户标识(选填) | 否 |
Commoditys |
Commodity | GoodsName | String(100) | 商品名称 | 是 |
GoodsCode | String(100) | 商品编码 | 否 |
Goodsquantity | Int(5) | 商品数量 | 否 |
GoodsPrice | Double(10) | 商品价格 | 否 |
GoodsWeight | Double(10,3) | 商品重量kg | 否 |
GoodsDesc | String(50) | 商品描述 | 否 |
GoodsVol | Double(15,3) | 商品体积m3 | 否 |
IsReturnPrintTemplate | String(1) | 返回电子面单模板:0-不需要;1-需要 | 否 |
IsSendMessage | Int(1) | 是否订阅短信:0-不需要;1-需要 | 否 |
TemplateSize | String(10) | 模板规格(默认的模板无需传值,非默认模板传对应模板尺寸) | 否 |
PackingType | Int(2) | 包装类型(快运字段)默认为0; 0- 纸 1- 纤 2- 木 3- 托膜 4- 木托
99-其他 | 可选 |
DeliveryMethod | Int(1) | 送货方式(快运字段)默认为0; 0- 自提 1- 送货上门(不含上楼) 2-
送货上楼 | 可选 |
返回参数定义:
参数名称 | 类型 | 说明 | 必须要求 |
---|
EBusinessID | String(10) | 用户ID | 是 |
Order | OrderCode | String(30) | 订单编号 | 是 |
ShipperCode | String(10) | 快递公司编码 | 是 |
LogisticCode | String(400) | 快递单号 | 是 |
MarkDestination | String(20) | 大头笔 | 否 |
OriginCode | String(20) | 始发地区域编码 | 否 |
OriginName | String(20) | 始发地/始发网点 | 否 |
DestinatioCode | String(20) | 目的地区域编码 | 否 |
DestinatioName | String(20) | 目的地/到达网点 | 否 |
SortingCode | String(20) | 分拣编码 | 否 |
PackageCode | String(20) | 集包编码 | 否 |
PackageName | String(50) | 集包地 | 否 |
DestinationAllocationCentre | String(50) | 目的地分类 | 否 |
Success | Bool(10) | 成功与否(true/false) | 是 |
SignWaybillCode | String(15) | 签回单单号 | 否 |
ResultCode | String(5) | 返回编码 | 是 |
Reason | String(50) | 失败原因 | 否 |
UniquerRequestNumber | String(50) | 唯一标识 | 是 |
PrintTemplate | String | 面单打印模板内容(html格式) | 否 |
EstimatedDeliveryTime | Date | 订单预计到货时间yyyy-mm-dd | 否 |
SubCount | Int(5) | 子单数量 | 否 |
SubOrders | String(400) | 子单单号 | 否 |
SubPrintTemplates | String(2000) | 子单模板内容(html格式) | 否 |
SignBillPrintTemplate | String(2000) | 签回单模板内容(html格式) | 否 |
ReceiverSafePhone | String(20) | 收件人安全电话 | 否 |
SenderSafePhone | String(20) | 收件人安全电话 | 否 |
DialPage | String(50) | 拨号页面网址(转换成二维码可扫描拨号) | 否 |
示例
{
"OrderCode": "012657018199",
"ShipperCode": "SF",
"PayType": 1,
"MonthCode": "1234567890",
"ExpType": 1,
"Cost": 1.0,
"OtherCost": 1.0,
"Sender": {
"Company": "LV",
"Name": "Taylor",
"Mobile": "15018442396",
"ProvinceName": "上海",
"CityName": "上海市",
"ExpAreaName": "青浦区",
"Address": "明珠路"
},
"Receiver": {
"Company": "GCCUI",
"Name": "Yann",
"Mobile": "15018442396",
"ProvinceName": "北京",
"CityName": "北京市",
"ExpAreaName": "朝阳区",
"Address": "三里屯街道"
},
"Commodity": [
{
"GoodsName": "鞋子",
"GoodsQuantity": 1,
"GoodsWeight": 1.0
},
{
"GoodsName": "衣服",
"GoodsQuantity": 1,
"GoodsWeight": 1.0
},
],
"AddService": [
{
"Name": " INSURE ",
"Value": "1000"
},
{
"Name": "COD",
"Value": "1020"
" CustomerID ": "1234567890"
}
],
"Weight": 1.0,
"Quantity": 1,
"Volume": 0.0,
"Remark": "小心轻放"
}
失败:
{
"EBusinessID": "1237100",
"ResultCode": "106",
"Reason": "该订单号已下单成功",
"UniquerRequestNumber":"5e66486b-8fbc-4131-b875-9b13d2ad1354"
}
成功:
{
"EBusinessID": "1237100",
"Order": {
"OrderCode": "012657700387",
"ShipperCode": "HTKY",
"LogisticCode": "50002498503427",
"MarkDestination": "京-朝阳(京-1)",
"OriginCode": "200000",
"OriginName": "上海分拨中心",
"PackageCode": "北京"
},
"PrintTemplate":"此处省略打印模板HTML内容",
"EstimatedDeliveryTime":"2016-03-06",
"Success": true,
"ResultCode": "100",
"Reason": "成功"
}
2.订单取消接口
请求内容字段定义:
参数名称 | 类型 | 说明 | 是否必须 |
---|
ShipperCode | String | 快递公司编码 | 是 |
OrderCode | String | 订单编号 | 是 |
ExpNo | String | 快递单号 | 是 |
CustomerName | String | 电子面单客户号 | 否 |
CustomerPwd | String | 电子面单密码 | 否 |
返回参数定义:
参数名称 | 类型 | 说明 | 必须要求 |
---|
EBusinessID | String | 用户ID | 是 |
Success | Bool | 成功与否(true/false) | 是 |
ResultCode | String | 返回编码 | 是 |
Reason | String | 失败原因 | 否 |
示例
{
"ShipperCode": "UC",
"OrderCode": "TEST201209211045",
"ExpNo": "900008664480",
"CustomerName": "80238728",
"CustomerPwd": "c0bfe0ba86b66bae5426303c53db0a8b"
}
{
"EBusinessID": "1237100",
"Success": true,
"ResultCode": "100"
}
3.单号余量查询接口
请求内容字段定义:
参数名称 | 类型 | 说明 | 是否必须 |
---|
ShipperCode | String | 快递公司编码 | 是 |
CustomerName | String | 电子面单客户号 | 否 |
CustomerPwd | String | 电子面单密码 | 否 |
StationCode | String | 网点编码 | 是 |
StationName | String | 网点名称 | 是 |
返回参数定义:
参数名称 | 类型 | 说明 | 必须要求 |
---|
EBusinessID | String | 用户ID | 是 |
Success | Bool | 成功与否(true/false) | 是 |
Reason | String | 失败原因 | 否 |
ResultCode | String | 返回编码 | 是 |
TotalNum | Int(10) | 累计充值数量,电子面单总量(包含已使用/未使用) | 否 |
AvailableNum | SInt(10) | 剩余可用量 | 否 |
示例
{
"ShipperCode": "UC",
"CustomerName": "80238728",
"CustomerPwd": "c0bfe0ba86b66bae5426303c53db0a81",
"StationCode": "3001",
"StationName": "福田网点"
}
{
"EBusinessID": "1237100",
"Success": true,
"Reason": "",
"ResultCode": "100",
"EorderBalance": {
"AvailableNum": 0,
"TotalNum": 0
}
}
4.客户号申请接口
请求内容字段定义:
参数名称 | 类型 | 说明 | 是否必须 |
---|
ShipperCode | String | 快递公司编码 | 是 |
StationCode | String | 网点编码 | 是 |
StationName | String | 网点名称 | 是 |
ApplyID | String | 申请ID(用户记录在快递公司的标识) | 否 |
Company | String | 公司名称 | 否 |
Name | String | 联系人 | 否 |
Tel | String | 电话 | 可选 |
Mobile | String | 手机 | 可选 |
ProvinceName | String | 省份 | 是 |
ProivnceCode | String | 省份编码 | 否 |
CityName | String | 城市 | 是 |
CityCode | String | 城市编码 | 否 |
ExpAreaName | String | 区县 | 是 |
ExpAreaCode | String | 区县编码 | 否 |
Address | String | 详细地址 | 是 |
返回参数定义:
参数名称 | 类型 | 说明 | 必须要求 |
---|
EBusinessID | String | 用户ID | 是 |
ApplyCode | String | 客户编号 | 是 |
Success | Bool | 成功与否(true/false) | 是 |
Reason | String | 失败原因 | 否 |
ResultCode | String | 返回编码 | 否 |
示例
{
"ShipperCode": "UC",
"Company": "快递鸟",
"ApplyID": "1237100",
"Name": "hoo123",
"Tel": "07558812345",
"Mobile": "15612344567",
"ProvinceName": "广东省",
"ProivnceCode": "440000",
"CityName": "深圳市",
"CityCode": "440300",
"ExpAreaName": "宝安区",
"ExpAreaCode": "440306",
"Address": "西乡1路",
"StationCode": "西乡网点",
"StationName": "西乡网点"
}
{
"EBusinessID": "1237100",
" ApplyCode ": "test123456",
"Success": true,
"Reason": "提交申请成功",
"ResultCode": "100"
}
5.客户号推送接口
请求内容字段定义:
参数名称 | 类型 | 说明 | 是否必须 |
---|
ApplyCode | String | 客户编号 | 是 |
CustomerName | String | 电子面单客户号 | 是 |
CustomerPwd | String | 电子面单密码 | 是 |
StationCode | String | 网点编码 | 是 |
StationName | String | 网点名称 | 是 |
返回参数定义:
参数名称 | 类型 | 说明 | 必须要求 |
---|
EBusinessID | String | 用户ID | 是 |
RequestType | String | 接口指令 | 是 |
Success | Bool | 成功与否(true/false) | 是 |
Message | String | 返回消息 | 否 |
示例
{
" ApplyCode ": "test123456",
"CustomerName": "80237910",
"CustomerPwd": "c0bfe0ba86b66bae5426303c53db0a8b",
"StationCode": "闵行八部",
"StationName": "闵行八部"
}
{
"EBusinessID": "1237100",
"Message": "成功",
"RequestType": "1117",
"Success": true
}