快递鸟API电子面单接口说明文档
快递物流寄件下单api接口调用对接
快递物流寄件下单api接口调用对接为了让你对接更简单,我会分享源代码,把源码复制到你的项目上,就能快速完成电商售后退货快递寄件下单预约快递员上门取件接口对接,调用快递鸟提供的上门取件API标准接口,成功调用后,快递员会准时上门取件,同时支持快递单号物流轨迹查询,快递鸟物流单号查询api接口不区分开发语言,支持Java,C#,PHP,Python,ObjectC等开发语言的程序调用。
1 接口规范说明1.1 接口规范及说明1.1.1 报文及报文编码报文格式:Json格式请求方法的编码格式(utf-8):交互协议上统一用UTF-8,避免传递中文数据出现乱码。
1.1.2 接口数据包结构图例- 数据包结构(系统级{数据})1.1.3 JSON示例1.1.4 系统级参数*快递所有接口统一使用此系统级参数,根据不同的请求接口指令接入不同的接口。
1.1.5 流程示意图1.1.6 名词定义1.2 签名说明1.2.1 关于签名快递鸟和第三方电子商务公司系统进行对接,有一定的安全机制。
采用IP认证加签名的方式对接,具体方案如下:1. 防止数据被篡改2. 注:DataSign生成后,对方接收到数据后,以同样的算法进行签名(推送接口RequestType为101/102不需要进行URL编码),生成摘要,对比两者的摘要是否相同,如果不同,说明传递过程中发生数据篡改。
2.调用接口的身份认证注册成为快递鸟用户后,会生成对应的用户ID和APIKey,用户ID相当于用户名,APIKey相当于密码。
举例:1.假设2.那么DataSign签名的内容为3.接收方收到数据后,获得EBusinessID 和RequestData和DataSign等这几个数据。
4.接收方对EBusinessID得到APIKey,RequestData+APIKey的数据进行md5和base64后的内容就为OWFhM2I5N2ViM2U2MGRkMjc4YzU2NmVlZWI3ZDk0MmE=5.接收方判断签名后的数据跟传递过来的DataSign是否一致,如果一致进行业务操作,如果不一致返回错误。
快递鸟API查询快递接口
1.申请一个快递鸟的帐号获取授权申请/reg快递鸟的帐号使永久免费的,且申请了立即就能用的,也不需要审核。
2.按照单号识别接口和即时查询接口封装好数据3.获取返回的 json 数据输出import jsonimport urllibimport urllib.requestimport hashlibimport base64import urllib.parse# 此处为快递鸟官网申请的帐号和密码APP_id = "1266271"APP_key = "7526a46e-3a2a-4f5b-8659-d72f361e3386"def encrypt(origin_data, appkey):"""数据内容签名:把(请求内容(未编码)+AppKey)进行MD5加密,然后Base64编码""" m = hashlib.md5()m.update((origin_data+appkey).encode("utf8"))encodestr = m.hexdigest()base64_text = base64.b64encode(encodestr.encode(encoding='utf-8'))return base64_textdef sendpost(url, datas):"""发送post请求"""postdata = urllib.parse.urlencode(datas).encode('utf-8')header = {"Accept": "application/x-www-form-urlencoded;charset=utf-8","Accept-Encoding": "utf-8"}req = urllib.request.Request(url, postdata, header)get_data = (urllib.request.urlopen(req).read().decode('utf-8'))return get_datadef get_company(logistic_code, appid, appkey, url):"""获取对应快递单号的快递公司代码和名称"""data1 = {'LogisticCode': logistic_code}d1 = json.dumps(data1, sort_keys=True)requestdata = encrypt(d1, appkey)post_data = {'RequestData': d1,'EBusinessID': appid,'RequestType': '2002','DataType': '2','DataSign': requestdata.decode()}json_data = sendpost(url, post_data)sort_data = json.loads(json_data)return sort_datadef get_traces(logistic_code, shipper_code, appid, appkey, url):"""查询接口支持按照运单号查询(单个查询)"""data1 = {'LogisticCode': logistic_code, 'ShipperCode': shipper_code}d1 = json.dumps(data1, sort_keys=True)requestdata = encrypt(d1, appkey)post_data = {'RequestData': d1, 'EBusinessID': appid, 'RequestType': '1002', 'DataType': '2','DataSign': requestdata.decode()}json_data = sendpost(url, post_data)sort_data = json.loads(json_data)return sort_datadef recognise(expresscode):"""输出数据"""url = ':8081/Ebusiness/EbusinessOrderHandle.aspx' data = get_company(expresscode, APP_id, APP_key, url)if not any(data['Shippers']):print("未查到该快递信息,请检查快递单号是否有误!")else:print("已查到该", str(data['Shippers'][0]['ShipperName'])+"("+str(data['Shippers'][0]['ShipperCode'])+")", expresscode)trace_data = get_traces(expresscode, data['Shippers'][0]['ShipperCode'], APP_id, APP_key, url)if trace_data['Success'] == "false" or not any(trace_data['Traces']): print("未查询到该快递物流轨迹!")else:str_state = "问题件"if trace_data['State'] == '2':str_state = "在途中"if trace_data['State'] == '3':str_state = "已签收"print("目前状态: "+str_state)trace_data = trace_data['Traces']item_no = 1for item in trace_data:print(str(item_no)+":", item['AcceptTime'],item['AcceptStation'])item_no += 1print("\n")returnwhile True:code = input("请输入快递单号(Esc退出):")code = code.strip()if code == "esc":breakrecognise(code)【疑问解答】1、问题:快递鸟接口有并发要求吗?快递鸟即时查询接口并发不超过10次/秒,物流跟踪接口订阅不超过30次/秒,电子面单接口下单不超过20次/秒。
快递鸟API电子面单接口参数配置对照表
备注:调用电子面单时IsNotice参数可控制是否通知快递员上门揽件(*0-通知;1-不通知;不填则默认为0)表中帐号和密码指的是向快递公司网点申请开通电子面单权限后,快递公司提供的电子面单帐号和密码申通电子面单不支持测试环境,只能在正式环境下使用中通电子面单账号开通流程圆通电子面单账号开通流程快递鸟电子面单接口常见问题问题:什么是电子面单?相比传统面单而言它有什么优势?电子面单是一种新型的快递面单。
材料为热敏纸,有成本低、打印快、单号方便获取、管理等特点。
在行业内也被称为热敏纸快递标签、经济型面单,二维码面单等。
它与传统面单相比主要有如下区别和优势。
a. 效率更高n 提升打印效率:电子面单的打印效率是普通纸质面单的4-6倍,平均每单打印只需花费1-2秒钟,高效率的打单大大缓解电商等客户的大批量打单压力,轻松应对大促;n 提高发货效率:电子面单不需要把快递单和定单信息逐一匹配操作,在订单信息申请快递单号的时候就已完成了定单匹配;卖家无需再安排人员专门抽取“发货联”,操作效率进一步提升;减少了手写“大头笔”等动作,提高了分拣效率;提高了分拣的准确性;n 支持多种电商增值业务,无需人肉绑定面单(例如:货到付款,预约配送)。
b. 成本更低n 电子面单的纸张是0.1元/张,成本比传统纸质面单0.2-0.3元降低了一大半;n 降低快递公司作业成本,如取消抽单和手写大头笔,单位时间内的揽货可以提升一倍以上;c. 数据信息完整实效n 在申请电子面单运单号的时候,就匹配到具体的“大头笔”信息,既减少人工操作的成本并又可以提高准确率和效率;商家在使用电子面单的时候就会自动将数据同步给快递公司,可以在申请面单的时候就拿到第一手数据,更加真实并且提高速度。
问题:快递鸟电子面单接口如何对接?1、注册快递鸟APIkey /reg2、加技术问题交流群:200121393 在群文件中下载技术接口文档3、请贵司技术根据技术文档开发后测试(需快递网点账号)4、上线问题:各快递公司编码是什么?电子面单账号如何开通?需要提供什么?顺丰(SF)百世快递(HTKY)百世快运(BTWL)申通(STO)中通(ZTO)圆通(YTO)韵达(YD)EMS(EMS)宅急送(ZJS)德邦(DBL)全峰(QFKD)如风达(RFD)优速快递(UC)龙邦(LB)增益(ZENY)华航快递(HHKD)运通快递(YTKD)希优特(XYT)民邦物流(MB)长沙创一(CSCY)安能物流(ANE)精英速运(JYSY)问题:快递鸟电子面单接口返回的html模板包含什么内容呢?打印出来的实际效果是什么样的?针对每个快递公司,模版都会有变化嘛还是采用统一的模版样式?返回的是快递公司官方认可的html模板,电子面单接口会返回包含收件人和寄件人以及商品信息等数据的模板,用户可以直接将该电子面单模板进行打印,将返回的数据放在HTML 控件中显示就行,不同快递公司电子面单模板不一样。
免费物流查询API接口对接流程-快递鸟
目前快递鸟物流查询API接口有两种对接方式,这两种方式都需要先到快递鸟官网上填写申请信息(注册网址:/reg)填写申请信息,信息表格中“日查询次数”要选择对,如果不确认,可以先接入查询接口。
申请完成,登录就可以看到自己的ID和KEY,这个ID和KEY只能一个公司使用,保证数据的稳定性,所以这个ID和KEY都是保密的。
从这一步开始,每日查询次数≤3000次和>3000的对接方式就不一样了。
1.每日查询次数≤3000次(即时查询接口)即时查询接口,是根据快递单号和快递公司编码实时查询物流轨迹信息的接口。
注册后可以参照如下进行开发对接:1.1即时查询接口对接描述/说明(1)根据订单编号和快递公司编码查询物流轨迹信息(支持在快递鸟订单)。
(2)根据快递单号和快递公司编码查询物流轨迹信息。
(3)接口需要指定快递单号的快递公司编码,格式不对或则编码错误都会返失败的信息。
如:EMS物流单号应选择快递公司编码(EMS)查看快递公司编码(4)返回的物流跟踪信息按照发生的时间升序排列。
(5)接口支持的消息接收方式为HTTP POST,请求方法的编码格式(utf-8):"application/x-www-form-urlencoded;charset=utf-8"。
(6)请求系统级参数说明:备注:R-必填(Required),O-可选(Optional),C-报文中该参数在一定条件下可选(Conditional)。
(7)接口地址:API地址:/Ebusiness/EbusinessOrderHandle.aspx (8)接口参数请求内容字段定义返回参数定义2.每日查询次数>3000(订阅接口)订阅推送接口,用户订阅快递单号,快递鸟系统会定时推送新的物流信息。
注册后填写《用户接入表》(接入表下载网址/download),完善《用户信息登记表》、《物流数据需求表》这两个表格的内容,并发送到service@。
快递鸟API电子面单接口说明文档
快递鸟电子面单接口说明文档快递鸟2017-04-25版本一、前言1、业务背景随着电子商务和物流信息化服务的迅猛发展,电子面单已经成为了商家快速发货并连接订单与物流的有力工具。
快递鸟电子面单接口是快递鸟提供给独立电商、仓储管理系统、打单软件、物流供应链等物流系统平台使用的物流下单接口,满足商家在线发货需求并提供打印电子面单的服务。
商家通过贵司系统选择物流公司发送请求通知快递公司有快递要发货,贵公司把数据通过此接口转发到快递鸟,由快递鸟为商家通知对应的快递公司快递员上门取件。
电子面单成功下单后,快递鸟系统内将自动订阅,一旦轨迹发生变化时,快递鸟将调用贵司推送接收接口将物流信息反向推送至商家。
同时若客户使用代收货款服务,快递鸟会将代收货款的货款状态独立推送给商家用户。
电子面单具有如下特点:●打印效率高相比传统针式打印机套打模式,打印速度提升6-8倍,热敏打印机打印速度平均30-40张/分。
●发货效率高包裹出库时减少了抽底单的工序,降低了操作成本、提升操作效率,运单和订单即时绑定,无需人工再次扫描绑定发货。
目前商家在使用电子面单的过程中也存在一些情况导致部分用户无法顺畅使用,例如:●大电商有多家合作快递公司,各家快递公司的模板尺寸不一,需要使用多个打印机打印面单。
●单号作废后回收机制不完善导致电商成本升高。
●二联电子面单无底单,运费核账存在问题(部分商家货物重量以称重为准)。
●打印时发现面单号余额不足,耽误发货。
●小B电商发货量不够申请网点的电子面单服务。
快递鸟电子面单接口为解决客户以上问题,新增如下解决方案:●电子面单余量查询:可通过电子面单余量查询接口查询,并且在快递鸟官网可设置余额不足提醒值(后续会加上余额不足短信/邮件提醒功能)●电子面单取消/回收:可通过电子面单取消接口,回收部分加盟快递公司的面单号。
●通用电子面单模板,含二联、三联模板●快递公司电子面单客户号在线申请●散户模式电子面单:部分快递公司无需申请电子面单客户号即可直接打印电子面单。
快递鸟电子面单模板说明
模板说明文档目录1.宅急送电子面单 (4)1.1.接口返回参数值 (4)1.2.电子面单模板180cm (4)1.3.电子面单模板100cm (5)2.德邦电子面单 (5)2.1.接口返回参数值 (5)2.2.电子面单模板180cm (6)3.安能电子面单 (6)3.1.接口返回参数值 (6)3.2.电子面单模板180cm (7)4.EMS电子面单 (7)4.1.接口返回参数值 (7)4.2.电子面单模板150cm (8)5.快捷电子面单 (8)5.1.接口返回参数值 (8)5.2.电子面单模板180cm (9)6.国通电子面单 (9)6.1.接口返回参数值 (9)6.2.电子面单模板180cm (10)7.天天电子面单 (10)7.1.接口返回参数值 (10)7.2.电子面单模板180cm (11)8.汇通电子面单 (11)8.1.接口返回参数值 (11)8.2.电子面单模板180cm (12)9.京东电子面单 (12)9.1.接口返回参数值 (12)9.2.电子面单模板100cm (13)10.跨越电子面单 (13)10.1.接口返回参数值 (13)10.2电子面单模板150cm (14)11.全峰电子面单 (14)11.1.接口返回参数值 (14)11.2.电子面单模板180cm (15)12.申通电子面单 (15)12.1.接口返回参数值 (15)12.2.电子面单模板180cm (16)12.3.电子面单模板150cm (17)13.优速电子面单 (17)13.1.接口返回参数值 (17)13.2.电子面单模板180cm (18)14.信丰电子面单 (18)14.1.接口返回参数值 (18)14.2.电子面单模板150cm (19)15.远成电子面单 (19)15.1.接口返回参数值 (19)15.2.电子面单模板180cm (20)16.韵达电子面单 (20)16.1.接口返回参数值 (20)16.2.电子面单模板210cm (21)16.3.电子面单模板150cm (22)17.圆通电子面单 (22)17.1.接口返回参数值 (22)17.2.电子面单模板180cm (23)17.3.电子面单模板(默认模板) (24)18.邮政平邮电子面单 (24)18.1.接口返回参数值 (24)18.2.电子面单模板180cm (25)19.中通电子面单 (25)19.1.接口返回参数值 (25)19.2.电子面单模板180cm (26)20.中铁快运电子面单 (26)20.1.接口返回参数值 (26)20.2.电子面单模板150cm (27)1.宅急送电子面单1.1.接口返回参数值1.2.电子面单模板180cm2.德邦电子面单2.1.接口返回参数值3.安能电子面单3.1.接口返回参数值4.EMS电子面单4.1.接口返回参数值5.快捷电子面单5.1.接口返回参数值6.国通电子面单6.1.接口返回参数值7.天天电子面单7.1.接口返回参数值8.汇通电子面单8.1.接口返回参数值9.京东电子面单9.1.接口返回参数值10.跨越电子面单10.1.接口返回参数值11.全峰电子面单11.1.接口返回参数值12.申通电子面单12.1.接口返回参数值13.优速电子面单13.1.接口返回参数值14.信丰电子面单14.1.接口返回参数值15.远成电子面单15.1.接口返回参数值16.韵达电子面单16.1.接口返回参数值17.圆通电子面单17.1.接口返回参数值17.3.电子面单模板(默认模板)18.邮政平邮电子面单18.1.接口返回参数值19.中通电子面单19.1.接口返回参数值20.中铁快运电子面单20.1.接口返回参数值。
接口技术文档doc
快递鸟接口(API)技术文档版本日期版本说明作者2014-12-01 3.0 重新整理,根据功能分类,部分有调整杨文胜2014-01-11 3.1 对接口的说明进行了注释,提高可读性杨汉汶2014-01-13 3.2 新增推送接口杨汉汶2015-03-11 3.3 新增批量订阅推送接口,删除3.2版本推送接口杨文胜2015-10-12 3.4 新增订单分发接口,整理电子面单接口曹强2016-01-19 3.5 重新调整在线下单接口曹强2016-03-01 3.6 增加智选物流接口曹强2016-03-01 3.7 分发及订阅接口更新任海洋2016-04-07 3.7.1 推送接口更新任海洋2016-05-11 3.7.2 电子面单新增通知快递员上门字段,推送接口新增货款状态推送詹益伟2016-07-01 4.0 全新4.0接口,新增单号识别接口、智选物流接口、更新物流轨迹接口(订阅查询)詹益伟2016-9-26 4.0.1 推送接口新增DataSign字段、订阅2.0新增仓库标识ID、智选物流接口新增字段胡蕾蕾2016-11-03 4.1 新增在途监控(增值服务)曹强2016-12-13 4.1.1 电子面单新增第三方订单号ThrOrderCode胡蕾蕾2017-1-10 4.2 新增隐私快递胡蕾蕾2017-2-16 4.2.1 新增代收货款业务胡蕾蕾2017-4-13 4.3 1、即时查询接口中轨迹状态新增0-无轨迹2、普通回调接口中删除201状态3、修改智选物流接口文档4、电子面单接口添加特殊字符提示陈爱2017-4-25 4.4 1、新增申请电子面单客户号接口2、新增电子面单余额查询接口3、新增电子面单单号回收接口4、新增申请客户号信息推送接口陈爱2017-6-22 4.5 新增短信接口李旭安2017-7-14 4.6 电子面单接口新增支持邮政快递包裹吴明名词定义必须要求说明R 必填(Required)。
快递鸟电子面单API接口使用指南
快递鸟电子面单使用手册V1.0目录1 服务介绍 (1)2 服务价值 (2)3 准备工作 (2)3.1申请电子面单客户号及单号 (2)3.1.1月结模式申请客户号 (3)3.1.1快递鸟模式直接打印 (9)3.2购买或充值单号 (9)3.3准备热敏打印纸及打印机 (9)4 对接流程 (10)4.1 自营商家对接流程 (10)4.2 系统商,电商平台商家对接流程 (15)5 常见问题 (15)1服务介绍快递鸟电子面单API服务,是指由快递公司通过快递鸟电子面单API,向打单用户提供物流单号,实现种通过热敏纸打印输出纸质物流面单并发货的服务。
现该服务已支持21家快递公司,57个官方承认模板(含隐私快递),有效提高打印速度4-6倍,一次开发即可接入所有支持快递公司。
目前已支持:顺丰(SF)、EMS(EMS)、宅急送(ZJS)、圆通(YTO)、百世快递(HTKY)、中通(ZTO)、韵达(YD)、申通(STO)、德邦(DBL)、优速(UC)、京东(JD)、信丰(XFEX)、全峰(QFKD)、跨越速运(KYSY)、安能小包(ANE)、快捷快递(FAST)、国通(GTO)、天天快递(HHTT)、邮政快递包裹(YZPY)、中铁快运(ZTKY),后续更多的快递公司正在对接中。
EMS电子面单模板展示2服务价值打印速度提升:电子面单是普通纸质面单的4-6倍,平均每单打印只需花费1-2秒钟,高效率的打单大大缓解电商等客户的大批量打单压力,轻松应对大促。
提高发货效率:传统发货模式,操作员需要将已打出的快递单和订单信息匹配后再发货,电子面单不需要把快递单和定单信息逐一匹配操作,在定单信息申请快递单号的时候就已完成了定单匹配;卖家无需再安排人员专门抽取“发货联”,操作效率进一步提升。
3准备工作针对自营商家,以下工作可在对接过程中准备,以便对接完成后即可上线立即使用。
平台及系统商可参考如下流程指导平台用户自行准备。
3.1申请电子面单客户号及单号电子面单客户号即请求打印面单时的用户账号或月结编码或客户编码,不同物流服务商的叫法不同而已。
快递鸟物流接口技术文档
快递鸟接口(API)技术文档版本名词定义1 前言.............................................. 错误!未定义书签。
2 概述.............................................. 错误!未定义书签。
用户使用流程图............................. 错误!未定义书签。
接口规范及说明............................. 错误!未定义书签。
报文及报文编码............................. 错误!未定义书签。
接入步骤................................... 错误!未定义书签。
接口数据包结构............................. 错误!未定义书签。
JSON 范例.................................. 错误!未定义书签。
流程示意图................................. 错误!未定义书签。
网关地址................................... 错误!未定义书签。
签名说明................................... 错误!未定义书签。
关于签名................................... 错误!未定义书签。
(C#)DataSign签名加密代码.................. 错误!未定义书签。
3 下单.............................................. 错误!未定义书签。
预约取件接口............................... 错误!未定义书签。
接口规则................................... 错误!未定义书签。
快递鸟电子面单API接口使用指南
快递鸟电子面单使用手册V1.0目录1 服务介绍..................................................................................................... 错误!未指定书签。
2 服务价值..................................................................................................... 错误!未指定书签。
3 准备工作..................................................................................................... 错误!未指定书签。
3.1申请电子面单客户号及单号........................................................... 错误!未指定书签。
3.1.1月结模式申请客户号.................................................................... 错误!未指定书签。
3.1.1快递鸟模式直接打印.................................................................... 错误!未指定书签。
3.2购买或充值单号............................................................................... 错误!未指定书签。
3.3准备热敏打印纸及打印机............................................................... 错误!未指定书签。
快递鸟接口调试平台使用指南
快递鸟接口调试平台使用指南版本目录1、前言 (4)2、使用指南 (4)2.1登陆调试平台 (4)2.2即时查询 (6)2.3订阅推送接口 (7)2.3.1订阅接口 (8)2.3.2推送接口 (9)2.3.3推送地址修改 (14)2.4电子面单 (16)2.5单号识别 (19)3、技术支持...................................................................................... 错误!未定义书签。
1、前言快递鸟API旨在为电商、电商平台、物流工具、仓储系统等系统提供专业、稳定、优质的物流服务,为不同的用户量身定做了专业的API 接口服务,供不同的用户各取所需。
接口申请:快递鸟官网注册账号后,在后台获取私有接口秘钥,对接接口并使用。
为了方便用户接入快递鸟接口,我们提供了调试平台供用户使用。
用户可以通过调试平台进行接口测试与校验,以及推送地址自助配置。
本文档就快递鸟调试平台的使用进行详细讲解。
2、使用指南2.1登陆调试平台1、使用快递鸟账户登陆官网:2、点击左侧菜单栏【调试平台】选项3、进入调试平台。
调试平台目前包含:即时查询、订阅推送、电子面单、单号识别等接口调试功能,下面分接口进行使用详解。
2.2即时查询1、点击左侧【即时查询】菜单栏进入即时查询调试界面。
2、在ShipperCode和LogisticCode中填快递公司编码和快递单号,点击【生成】按钮后会自动在【系统级参数报文】和【应用级参数报文(RequestData)】的文本框中生成请求报文。
用户可将调试平台上生成的报文与自己程序生成的报文进行比较,校验程序生成报文是否正确。
4、点击【调用】按钮,提交请求。
【应用级参数报文】文本框中显示的就是快递鸟返回的轨迹信息。
2.3订阅推送接口点击菜单栏【订阅推送】选项进入订阅推送接口调试界面。
该页面包括【订阅】、【推送】两个tab页。
快递鸟智选物流接口对接方案
快递鸟智选物流接口对接方案1智选物流1.1对接流程1)注册快递鸟接口账号/reg2)在官网登录进入用户管理后台,进行实名认证,开通接口3)技术对接(在线开发文档:/api-subscribe)4、上线1.2JSON请求返回案例1)JSON请求{"MemberID": "123456","WarehouseID": "1","Detail": [{"OrderCode": "12345","OriginalExpCode":"SF","EstimatedShipTime":"2017-02-16 12:13:12""IsCOD": 0,"Sender": {"ProvinceName": "广东省","CityName": "广州","ExpAreaName": "龙岗区","Subdistrict": "布吉街道","Address": "518000"},"Receiver": {"ProvinceName": "广东","CityName": "梅州","ExpAreaName": "丰顺","Subdistrict": "布吉街道","Address": "518000"},"Goods": [{"ProductName": "包","Volume": "","Weight": "1"}]},{"OrderCode": "12346","IsCOD": 0,"Sender": {"ProvinceName": "广东省","CityName": "广州","ExpAreaName": "龙岗区","Subdistrict": "布吉街道","Address": "518000"},"Receiver": {"ProvinceName": "湖南","CityName": "长沙","ExpAreaName": "龙岗区","Subdistrict": "布吉街道","Address": "518000"},"Goods": [{"ProductName": "包","Volume": "","Weight": "1"}]}]}2)JSON返回{"EBusinessID": "1257227", "Success": true, "RecommendDetail": [{"ExpressList": [{"ExpCode": "ZTO","ExpName": "中通速递","LineName": "","Fee": 10.00,"EstimatedDeliveryTime": 44.20,"SpecificDeliveryTime ":"2017-02-12 09:12","IsSupport": "1","RecommendReason": 0,"Remark": ""},{"ExpCode": "ZTO","ExpName": "中通速递","LineName": "","Fee": 10.00,"EstimatedDeliveryTime": 44.20,"IsSupport": "1","RecommendReason": 1,"Remark": ""},{"ExpCode": "JYM","ExpName": "加运美","SpecificDeliveryTime ":"2017-02-12 09:12","LineName": "","EstimatedDeliveryTime": 15.23,"IsSupport": "1","RecommendReason": 2,"Remark": ""}],"OrderCode": "12345"},{"ExpressList": [{"ExpCode": "ZTO","ExpName": "中通速递","SpecificDeliveryTime ":"2017-02-12 09:12","LineName": "","Fee": 16.00,"EstimatedDeliveryTime": 48.26,"IsSupport": "1","RecommendReason": 0,"Remark": ""},{"ExpCode": "ZTO","ExpName": "中通速递","SpecificDeliveryTime ":"2017-02-12 09:12","LineName": "","Fee": 16.00,"EstimatedDeliveryTime": 48.26,"IsSupport": "1","RecommendReason": 1,"Remark": ""},{"ExpCode": "SF","ExpName": "顺丰快递","LineName": "","EstimatedDeliveryTime": 38.33,"IsSupport": "1","RecommendReason": 2,"Remark": ""}],"OrderCode": "12346"}]}1.3Demo1).NETusing System;using System.Collections.Generic;using System.IO;using System.Linq;using ;using System.Text;using System.Web;namespace KdGoldAPI{public class KdApiExpRecommend{//电商IDprivate string EBusinessID = "请申请";//电商加密私钥,注意保管,不要泄漏private string AppKey = "请申请";//请求url//测试环境private string ReqURL = ":8081/Ebusiness/EbusinessOrderHandle.aspx";//正式环境//private string ReqURL = "/Ebusiness/EbusinessOrderHandle.aspx";/// <summary>/// Json方式智选物流/// </summary>/// <returns></returns>public string getExpRecommendByJson(){string requestData = "{'MemberID':'123456','WarehouseID':'1','Detail':[{'OrderCode':'12345','IsCOD':0,'Sender':{'Provi nceName':'广东省','CityName':'广州','ExpAreaName':'龙岗区','Subdistrict':'布吉街道','Address':'518000'},'Receiver':{'ProvinceName':'广东','CityName':'梅州','ExpAreaName':'丰顺','Subdistrict':'布吉街道','Address':'518000'},'Goods':[{'ProductName':'包','Volume':'','Weight':'1'}]},{'OrderCode':'12346','IsCOD':0,'Sender':{'ProvinceName':'广东省','CityName':'广州','ExpAreaName':'龙岗区','Subdistrict':'布吉街道','Address':'518000'},'Receiver':{'ProvinceName':'湖南','CityName':'长沙','ExpAreaName':'龙岗区','Subdistrict':'布吉街道','Address':'518000'},'Goods':[{'ProductName':'包','Volume':'','Weight':'1'}]}]}";Dictionary<string, string> param = new Dictionary<string, string>();param.Add("RequestData", HttpUtility.UrlEncode(requestData, Encoding.UTF8));param.Add("EBusinessID", EBusinessID);param.Add("RequestType", "2006");string dataSign = encrypt(requestData, AppKey, "UTF-8");param.Add("DataSign", HttpUtility.UrlEncode(dataSign, Encoding.UTF8));param.Add("DataType", "2");string result = sendPost(ReqURL, param);//根据公司业务处理返回的信息......return result;}/// <summary>/// Json方式运费模板导入/// </summary>/// <returns></returns>public string importCostTemplateByJson(){string requestData ="{'MemberID':'123456','Detail':[{'ShipperCode':'YD','SendProvince':'广东','SendCity':'广州','SendExpArea':'天河','ReceiveProvince':'湖南','ReceiveCity':'长沙','ReceiveExpArea':'龙岗','FirstWeight':'1','FirstFee':'8','AdditionalWeight':'1','AdditionalFee':'10','WeightFormula':''},{'Ship perCode':'YD','SendProvince':'广东','SendCity':'广州','SendExpArea':'天河','ReceiveProvince':'湖南','ReceiveCity':'长沙','ReceiveExpArea':'雨花','FirstWeight':'1','FirstFee':'8','AdditionalWeight':'1','AdditionalFee':'10','WeightFormula':'{{w-0}-0.4}*{{{1000-w}-0.4}+1}*4.700+ {{w-1000}-0.6}*[(w-1000)/1000]*4.700)','ShippingType':'1','IntervalList':[{'StartWeight': 1.0,'EndWeight': 2.0, 'Fee': 3.0}]}]}";Dictionary<string, string> param = new Dictionary<string, string>();param.Add("RequestData", HttpUtility.UrlEncode(requestData, Encoding.UTF8));param.Add("EBusinessID", EBusinessID);param.Add("RequestType", "2004");string dataSign = encrypt(requestData, AppKey, "UTF-8");param.Add("DataSign", HttpUtility.UrlEncode(dataSign, Encoding.UTF8));param.Add("DataType", "2");string result = sendPost(ReqURL, param);//根据公司业务处理返回的信息......return result;}/// <summary>/// Post方式提交数据,返回网页的源代码/// </summary>/// <param name="url">发送请求的URL</param>/// <param name="param">请求的参数集合</param>/// <returns>远程资源的响应结果</returns>private string sendPost(string url, Dictionary<string, string> param){string result = "";StringBuilder postData = new StringBuilder();if (param != null && param.Count > 0){foreach (var p in param){if (postData.Length > 0){postData.Append("&");}postData.Append(p.Key);postData.Append("=");postData.Append(p.Value);}}byte[] byteData = Encoding.GetEncoding("UTF-8").GetBytes(postData.ToString());try{HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);request.ContentType = "application/x-www-form-urlencoded";request.Referer = url;request.Accept = "*/*";request.Timeout = 30 * 1000;erAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)";request.Method = "POST";request.ContentLength = byteData.Length;Stream stream = request.GetRequestStream();stream.Write(byteData, 0, byteData.Length);stream.Flush();stream.Close();HttpWebResponse response = (HttpWebResponse)request.GetResponse();Stream backStream = response.GetResponseStream();StreamReader sr = new StreamReader(backStream, Encoding.GetEncoding("UTF-8"));result = sr.ReadToEnd();sr.Close();backStream.Close();response.Close();request.Abort();}catch (Exception ex){result = ex.Message;}return result;}///<summary>///电商Sign签名///</summary>///<param name="content">内容</param>///<param name="keyValue">Appkey</param>///<param name="charset">URL编码</param>///<returns>DataSign签名</returns>private string encrypt(String content, String keyValue, String charset){if (keyValue != null){return base64(MD5(content + keyValue, charset), charset);}return base64(MD5(content, charset), charset);}///<summary>/// 字符串MD5加密///</summary>///<param name="str">要加密的字符串</param>///<param name="charset">编码方式</param>///<returns>密文</returns>private string MD5(string str, string charset){byte[] buffer = System.Text.Encoding.GetEncoding(charset).GetBytes(str);try{System.Security.Cryptography.MD5CryptoServiceProvider check;check = new System.Security.Cryptography.MD5CryptoServiceProvider();byte[] somme = puteHash(buffer);string ret = "";foreach (byte a in somme){if (a < 16)ret += "0" + a.ToString("X");elseret += a.ToString("X");}return ret.ToLower();}catch{throw;}}/// <summary>/// base64编码/// </summary>/// <param name="str">内容</param>/// <param name="charset">编码方式</param>/// <returns></returns>private string base64(String str, String charset){returnConvert.ToBase64String(System.Text.Encoding.GetEncoding(charset).GetBytes(str));}}}2)JAVAimport java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.io.UnsupportedEncodingException;import .HttpURLConnection;import .URL;import .URLEncoder;import java.security.MessageDigest;import java.util.HashMap;import java.util.Map;/****智选物流**/public class KdApiExpRecommend {//DEMOpublic static void main(String[] args) {KdApiExpRecommend api = new KdApiExpRecommend();try {String result = api.getOrderTracesByJson();System.out.print(result);} catch (Exception e) {e.printStackTrace();}}//电商IDprivate String EBusinessID="请申请";//电商加密私钥,注意保管,不要泄漏private String AppKey="请申请";//请求urlprivate String ReqURL="/Ebusiness/EbusinessOrderHandle.aspx";/*** Json方式智选物流* @throws Exception*/public String getExpRecommendByJson() throws Exception{String requestData= "{'MemberID':'123456','WarehouseID':'1','Detail':[{'OrderCode':'12345','IsCOD':0,'Sender':{'Provi nceName':'广东省','CityName':'广州','ExpAreaName':'龙岗区','Subdistrict':'布吉街道','Address':'518000'},'Receiver':{'ProvinceName':'广东','CityName':'梅州','ExpAreaName':'丰顺','Subdistrict':'布吉街道','Address':'518000'},'Goods':[{'ProductName':'包','Volume':'','Weight':'1'}]},{'OrderCode':'12346','IsCOD':0,'Sender':{'ProvinceName':'广东省','CityName':'广州','ExpAreaName':'龙岗区','Subdistrict':'布吉街道','Address':'518000'},'Receiver':{'ProvinceName':'湖南','CityName':'长沙','ExpAreaName':'龙岗区','Subdistrict':'布吉街道','Address':'518000'},'Goods':[{'ProductName':'包','Volume':'','Weight':'1'}]}]}";Map<String, String> params = new HashMap<String, String>();params.put("RequestData", urlEncoder(requestData, "UTF-8"));params.put("EBusinessID", EBusinessID);params.put("RequestType", "2006");String dataSign=encrypt(requestData, AppKey, "UTF-8");params.put("DataSign", urlEncoder(dataSign, "UTF-8"));params.put("DataType", "2");String result=sendPost(ReqURL, params);//根据公司业务处理返回的信息......return result;}/*** Json方式导入运费模板* @throws Exception*/public String importCostTemplateByJson() throws Exception{String requestData="{'MemberID':'123456','Detail':[{'ShipperCode':'YD','SendProvince':'广东','SendCity':'广州','SendExpArea':'天河','ReceiveProvince':'湖南','ReceiveCity':'长沙','ReceiveExpArea':'龙岗','FirstWeight':'1','FirstFee':'8','AdditionalWeight':'1','AdditionalFee':'10','WeightFormula':''},{'Ship perCode':'YD','SendProvince':'广东','SendCity':'广州','SendExpArea':'天河','ReceiveProvince':'湖南','ReceiveCity':'长沙','ReceiveExpArea':'雨花','FirstWeight':'1','FirstFee':'8','AdditionalWeight':'1','AdditionalFee':'10','WeightFormula':'{{w-0}-0.4}*{{{1000-w}-0.4}+1}*4.700+ {{w-1000}-0.6}*[(w-1000)/1000]*4.700)','ShippingType':'1','IntervalList':[{'StartWeight': 1.0,'EndWeight': 2.0, 'Fee': 3.0}]}]}";Map<String, String> params = new HashMap<String, String>();params.put("RequestData", urlEncoder(requestData, "UTF-8"));params.put("EBusinessID", EBusinessID);params.put("RequestType", "2004");String dataSign=encrypt(requestData, AppKey, "UTF-8");params.put("DataSign", urlEncoder(dataSign, "UTF-8"));params.put("DataType", "2");String result=sendPost(ReqURL, params);//根据公司业务处理返回的信息......return result;}/*** MD5加密* @param str 内容* @param charset 编码方式* @throws Exception*/@SuppressWarnings("unused")private String MD5(String str, String charset) throws Exception {MessageDigest md = MessageDigest.getInstance("MD5");md.update(str.getBytes(charset));byte[] result = md.digest();StringBuffer sb = new StringBuffer(32);for (int i = 0; i < result.length; i++) {int val = result[i] & 0xff;if (val <= 0xf) {sb.append("0");}sb.append(Integer.toHexString(val));}return sb.toString().toLowerCase();}/*** base64编码* @param str 内容* @param charset 编码方式* @throws UnsupportedEncodingException*/private String base64(String str, String charset) throws UnsupportedEncodingException{ String encoded = base64Encode(str.getBytes(charset));return encoded;}@SuppressWarnings("unused")private String urlEncoder(String str, String charset) throws UnsupportedEncodingException{ String result = URLEncoder.encode(str, charset);return result;}/*** 电商Sign签名生成* @param content 内容* @param keyValue Appkey* @param charset 编码方式* @throws UnsupportedEncodingException ,Exception* @return DataSign签名*/@SuppressWarnings("unused")private String encrypt (String content, String keyValue, String charset) throws UnsupportedEncodingException, Exception{if (keyValue != null){return base64(MD5(content + keyValue, charset), charset);}return base64(MD5(content, charset), charset);}/*** 向指定URL 发送POST方法的请求* @param url 发送请求的URL* @param params 请求的参数集合* @return 远程资源的响应结果*/@SuppressWarnings("unused")private String sendPost(String url, Map<String, String> params) {OutputStreamWriter out = null;BufferedReader in = null;StringBuilder result = new StringBuilder();try {URL realUrl = new URL(url);HttpURLConnection conn =(HttpURLConnection) realUrl.openConnection();// 发送POST请求必须设置如下两行conn.setDoOutput(true);conn.setDoInput(true);// POST方法conn.setRequestMethod("POST");// 设置通用的请求属性conn.setRequestProperty("accept", "*/*");conn.setRequestProperty("connection", "Keep-Alive");conn.setRequestProperty("user-agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");conn.setRequestProperty("Content-Type","application/x-www-form-urlencoded");conn.connect();// 获取URLConnection对象对应的输出流out = new OutputStreamWriter(conn.getOutputStream(), "UTF-8");// 发送请求参数if (params != null) {StringBuilder param = new StringBuilder();for (Map.Entry<String, String> entry : params.entrySet()) {if(param.length()>0){param.append("&");}param.append(entry.getKey());param.append("=");param.append(entry.getValue());//System.out.println(entry.getKey()+":"+entry.getValue());}//System.out.println("param:"+param.toString());out.write(param.toString());}// flush输出流的缓冲out.flush();// 定义BufferedReader输入流来读取URL的响应in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));String line;while ((line = in.readLine()) != null) {result.append(line);}} catch (Exception e) {e.printStackTrace();}//使用finally块来关闭输出流、输入流finally{try{if(out!=null){out.close();}if(in!=null){in.close();}}catch(IOException ex){ex.printStackTrace();}}return result.toString();}private static char[] base64EncodeChars = new char[] { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H','I', 'J', 'K', 'L', 'M', 'N', 'O', 'P','Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X','Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f','g', 'h', 'i', 'j', 'k', 'l', 'm', 'n','o', 'p', 'q', 'r', 's', 't', 'u', 'v','w', 'x', 'y', 'z', '0', '1', '2', '3','4', '5', '6', '7', '8', '9', '+', '/' };public static String base64Encode(byte[] data) {StringBuffer sb = new StringBuffer();int len = data.length;int i = 0;int b1, b2, b3;while (i < len) {b1 = data[i++] & 0xff;if (i == len){sb.append(base64EncodeChars[b1 >>> 2]);sb.append(base64EncodeChars[(b1 & 0x3) << 4]);sb.append("==");break;}b2 = data[i++] & 0xff;if (i == len){sb.append(base64EncodeChars[b1 >>> 2]);sb.append(base64EncodeChars[((b1 & 0x03) << 4) | ((b2 & 0xf0) >>> 4)]);sb.append(base64EncodeChars[(b2 & 0x0f) << 2]);sb.append("=");break;}b3 = data[i++] & 0xff;sb.append(base64EncodeChars[b1 >>> 2]);sb.append(base64EncodeChars[((b1 & 0x03) << 4) | ((b2 & 0xf0) >>> 4)]);sb.append(base64EncodeChars[((b2 & 0x0f) << 2) | ((b3 & 0xc0) >>> 6)]);sb.append(base64EncodeChars[b3 & 0x3f]);}return sb.toString();}}3)PHP<?php//电商IDdefined('EBusinessID') or define('EBusinessID', '请申请');//电商加密私钥,注意保管,不要泄漏defined('AppKey') or define('AppKey', '请申请');//请求url//测试地址defined('ReqURL') or define('ReqURL', ':8081/Ebusiness/EbusinessOrderHandle.aspx');//正式地址//defined('ReqURL') or define('ReqURL', '/Ebusiness/EbusinessOrderHandle.aspx');//调用获取物流轨迹//-------------------------------------------------------------$logisticResult = getExpRecommendByJson();echo $logisticResult;//-------------------------------------------------------------/*** Json方式智选物流*/function getExpRecommendByJson(){$requestData="{'MemberID':'123456','WarehouseID':'1','Detail':[{'OrderCode':'12345','IsCOD':0,'Sender':{'Provi nceName':'广东省','CityName':'广州','ExpAreaName':'龙岗区','Subdistrict':'布吉街道','Address':'518000'},'Receiver':{'ProvinceName':'广东','CityName':'梅州','ExpAreaName':'丰顺','Subdistrict':'布吉街道','Address':'518000'},'Goods':[{'ProductName':'包','Volume':'','Weight':'1'}]},{'OrderCode':'12346','IsCOD':0,'Sender':{'ProvinceName':'广东省','CityName':'广州','ExpAreaName':'龙岗区','Subdistrict':'布吉街道','Address':'518000'},'Receiver':{'ProvinceName':'湖南','CityName':'长沙','ExpAreaName':'龙岗区','Subdistrict':'布吉街道','Address':'518000'},'Goods':[{'ProductName':'包','Volume':'','Weight':'1'}]}]}";$datas = array('EBusinessID' => EBusinessID,'RequestType' => '2006','RequestData' => urlencode($requestData) ,'DataType' => '2',);$datas['DataSign'] = encrypt($requestData, AppKey);$result=sendPost(ReqURL, $datas);//根据公司业务处理返回的信息......return $result;}/*** Json方式导入运费模板*/function importCostTemplateByJson(){$requestData= "{'MemberID':'123456','Detail':[{'ShipperCode':'YD','SendProvince':'广东','SendCity':'广州','SendExpArea':'天河','ReceiveProvince':'湖南','ReceiveCity':'长沙','ReceiveExpArea':'龙岗','FirstWeight':'1','FirstFee':'8','AdditionalWeight':'1','AdditionalFee':'10','WeightFormula':''},{'Ship perCode':'YD','SendProvince':'广东','SendCity':'广州','SendExpArea':'天河','ReceiveProvince':'湖南','ReceiveCity':'长沙','ReceiveExpArea':'雨花','FirstWeight':'1','FirstFee':'8','AdditionalWeight':'1','AdditionalFee':'10','WeightFormula':'{{w-0}-0.4}*{{{1000-w}-0.4}+1}*4.700+ {{w-1000}-0.6}*[(w-1000)/1000]*4.700)','ShippingType':'1','IntervalList':[{'StartWeight': 1.0,'EndWeight': 2.0, 'Fee': 3.0}]}]}";$datas = array('EBusinessID' => EBusinessID,'RequestType' => '2004','RequestData' => urlencode($requestData) ,'DataType' => '2',);$datas['DataSign'] = encrypt($requestData, AppKey);$result=sendPost(ReqURL, $datas);//根据公司业务处理返回的信息......return $result;}/*** post提交数据* @param string $url 请求Url* @param array $datas 提交的数据* @return url响应返回的html*/function sendPost($url, $datas) {$temps = array();foreach ($datas as $key => $value) {$temps[] = sprintf('%s=%s', $key, $value);}$post_data = implode('&', $temps);$url_info = parse_url($url);if(empty($url_info['port'])){$url_info['port']=80;}$httpheader = "POST " . $url_info['path'] . " HTTP/1.0\r\n";$httpheader.= "Host:" . $url_info['host'] . "\r\n";$httpheader.= "Content-Type:application/x-www-form-urlencoded\r\n";$httpheader.= "Content-Length:" . strlen($post_data) . "\r\n";$httpheader.= "Connection:close\r\n\r\n";$httpheader.= $post_data;$fd = fsockopen($url_info['host'], $url_info['port']);fwrite($fd, $httpheader);$gets = "";$headerFlag = true;while (!feof($fd)) {if (($header = @fgets($fd)) && ($header == "\r\n" || $header == "\n")) { break;}}while (!feof($fd)) {$gets.= fread($fd, 128);}fclose($fd);return $gets;}/*** 电商Sign签名生成* @param data 内容* @param appkey Appkey* @return DataSign签名*/function encrypt($data, $appkey) {return urlencode(base64_encode(md5($data.$appkey)));}?>2运费模板导入接口2.1功能说明ERP服务商也可以将用户的协议物流公司及其协议价格先保存到接口运费模板系统中,智选物流每次计算时:若接口传递了协议公司和价格,那么默认按照接口提供的数据进行计算;若接口没有提供数据,则获取以保存的运费模板进行计算。
关于快递鸟平台在线申请安能电子面单---操作流程20171101
用户通过快递鸟官网在线申请安能电子面单服务,待安能审核通过后,向用户分配账号。
同时,用户需线下联系安能网点充值单号数量,充值成功后,即可通过快递鸟接口实时打单、获取运单号。
客户与网点产生的单号与运费双方自行结算,相关费用快递鸟不参与结算。
申请流程
一、注册快递鸟账号
登录快递鸟官网:,使用手机号进行在线注册
二、申请快递鸟会员套餐
使用注册时的手机号码进行登录,申请会员套餐(免费、收费均可)
三、申请安能电子面单服务:
可通过如下方式申请“安能”电子面单账号:
1、快递鸟官网 申请(推荐):
A、登录快递鸟官网后台→电子面单→我的快递公司→申请新的快递公司→安能
B、填写发货地址(必需填写完整省市区以及详细地址,系统才能自动匹配出对应的揽件网点(申请页面下拉框选择)--建议客户最好先了解清楚与自己合作的线下网点的名称,方便申请时选择)及联系人(用于短信接收电子面单账号)。
2、通过对接快递鸟接口文档:
对接“申请电子面单客户号”及“申请客户号信息推送”接口,具体参数详见技术文档3.5、3.6。
四、安能反馈审核结果
由安能网点联系客户确认信息并审核(提交信息是否有误及是否需要发货),开通时效约“1-2”个工作日。
如审核通过,安能通过接口及时回传“账号(快递鸟已有,只需安能审核通过)”于快递鸟,如审核不通过,亦通过接口回传,快递鸟通过如下3种方式将审核结果同步給客户:
1 快递鸟系统短信通知到客户联系人手机(提交服务申请时预留的号码)。
重点推荐
A:审核通过
2、快递鸟后台系统—电子面单—账号信息A:审核通过
3、开发”申请客户号信息推送接口“用于接收账号图片略。
关于快递鸟平台在线申请圆通电子面单(普件)操作流程
关于快递鸟平台在线申请圆通电子面单(普件)操作流程一、客户发货
通过快递鸟官网在线申请”圆通”普件电子面单客户号及密码的用户,审核通过后,客户账号单量库存自动充值100个单号(后续自行购买充值),单号与运费结算由网点与客户自行结算。
二、服务申请:
可通过如下方式申请“圆通”电子面单客户号及密码:
1、快递鸟官网申请:
登录快递鸟官网---电子面单--我的快递公司--申请新的快递公司--圆通
2、通过对接快递鸟接口文档:
对接“申请电子面单客户号”及“申请客户号信息推送”接口,具体参数详见技术文档3.5、3.6。
三、圆通审核结果
由圆通网点联系客户确认信息并审核(提交信息是否有误及是否需要发货),开通时效约“1-2”个工作日。
如审核通过,圆通将通过接口及时回传“客户及密码”于快递鸟,客户可通过以下3种方式获取客户号:
1、快递鸟系统短信通知到客户联系人手机(提交服务申请时预留的号码)。
重点推荐
2、快递鸟后台—电子面单—账号信息(只显示客户号,不显示密码)
3、开发”申请客户号信息推送接口“用于接收客户账号和密码。
快递鸟接口技术文档说明书
快递鸟接口(API)技术文档1前言 (5)2接口规范说明 (5)2.1接口规范及说明 (5)2.1.1报文及报文编码 (5)2.1.2接口数据包结构 (5)2.1.3JSON示例 (6)2.1.4系统级参数 (6)2.1.5流程示意图 (7)2.2签名说明 (7)2.2.1关于签名 (7)2.2.2(C#)DataSign签名加密代码 (9)3下单类接口 (10)3.1接入步骤 (10)3.2预约取件接口 (11)3.2.1功能说明 (11)3.2.2基本信息 (11)3.2.3接口规则 (12)3.2.4支持情况 (12)3.2.5应用级参数 (12)3.2.6返回参数 (17)3.3预约取件取消接口 (17)3.3.1功能说明 (17)3.3.2基本信息 (17)3.3.3接口规则 (18)3.3.4支持情况 (18)3.3.5应用场景 (18)3.3.6应用级参数 (18)3.3.7返回参数 (19)3.4电子面单接口 (19)3.4.1功能说明 (19)3.4.2基本信息 (19)3.4.3应用场景 (20)3.4.4接口规则 (20)3.4.6应用场景 (21)3.4.7应用级参数 (21)3.4.8返回参数 (30)3.5电子面单取消接口 (35)3.5.1功能说明 (35)3.5.2基本信息 (36)3.5.3接口规则 (36)3.5.4支持情况 (36)3.5.5应用级参数 (36)3.5.6返回参数 (37)3.6电子面单追加子单接口 (37)3.6.1功能说明 (37)3.6.2基本信息 (37)3.6.3应用级参数 (38)3.6.4返回参数 (38)3.7获取电子面单文件接口 (39)3.7.1功能说明 (39)3.7.2基本信息 (39)3.7.3应用级参数 (39)3.7.4返回参数 (40)4轨迹查询类接口 (42)4.1即时查询接口 (42)4.1.1功能说明 (42)4.1.2基本信息 (42)4.1.3接口规则 (42)4.1.4支持情况 (42)4.1.5应用场景 (42)4.1.6应用级参数 (42)4.1.7返回参数 (43)4.2物流跟踪 (45)4.2.1轨迹订阅接口 (45)4.3单号识别接口 (64)4.3.1功能说明 (64)4.3.2基本信息 (64)4.3.3接口规则 (64)4.3.4应用级参数 (64)4.3.5返回参数 (65)5增值类接口 (66)5.1在途监控-国内版 (66)5.1.1即时查询接口(增值版) (66)5.1.2物流跟踪接口(增值版) (72)5.2快递查询接口 (78)5.2.1功能说明 (78)5.2.2基本信息 (78)5.2.3接口规则 (78)5.2.4支持情况 (78)5.2.5应用场景 (78)5.2.6应用级参数 (78)5.2.7返回参数 (79)5.3在途监控-国际版 (84)5.3.1物流跟踪接口(国际版) (84)5.4物流查询地图接口 (86)5.4.1即时查询接口(地图版) (87)5.4.2物流跟踪接口(地图版) (95)5.5短信服务 (100)5.5.1短信模板接口 (101)5.5.2短信发送接口 (103)5.5.3短信黑名单接口 (105)5.6智能地址解析接口 (106)5.6.1功能说明 (106)5.6.2基本信息 (106)5.6.3应用级参数 (106)5.6.4返回参数 (107)6附录 (109)6.1对接相关资料 (109)6.2电子面单模板规格 (109)6.3返回编码列表 (116)7技术支持 (117)1前言快递鸟API旨在为电商、电商平台、物流工具、打单工具、仓储系统、移动APP等系统提供专业、稳定、优质的API接口服务,满足不同用户的物流管理需求。
快递单号查询快递鸟API接口-京东快运
快递单号查询快递鸟API接⼝-京东快运调⽤快递鸟提供的快递查询API标准接⼝,快速对接100多家快递公司的物流轨迹查询,本篇⽂章实现<京东快运>的快递单号查询。
⾸先我们准备好需要⽤到的资源,这⾥推荐⼤家去爱奇艺查看视频教程:测试商户ID:test1617571测试API key:554343b2-7252-439b-b4eb-1af42c8f2175(此Key仅限测试环境使⽤)API测试地址:接下来,我们讲解⼀下请求参数⼀、接⼝描述/说明请求系统级参数说明:参数名称类型说明必须要求RequestData String请求内容需进⾏URL(utf-8)编码。
请求内容JSON格式,须和DataType⼀致。
REBusinessID String商户ID,请在我的服务页⾯查看。
RRequestType String请求指令类型:1002RDataSign String 数据内容签名:把(请求内容(未编码)+AppKey)进⾏MD5加密,然后Base64编码,最后进⾏URL(utf-8)编码。
详细过程请查看Demo。
RDataType String请求、返回数据类型:2-json;O备注:R-必填(Required),O-可选(Optional),C-报⽂中该参数在⼀定条件下可选(Conditional)这⾥提到了系统级参数,也相当于是公⽤参数,这些参数是调⽤每个接⼝都是必须要传参的。
⼆、接⼝参数请求内容字段定义:参数名称类型说明必须要求OrderCode String订单编号OShipperCode String快递公司编码RLogisticCode String物流单号RCustomerName String寄件⼈或收件⼈的⼿机号后四位数字R接⼝参数,也叫业务参数,请求的业务接⼝不同,参数的字段,内容也不同,是跟着业务变化的,这⾥我们实现的是即时查询接⼝,请求指令类型:1002,快递鸟官⽹要求必须传递快递公司编码和物流单号,京东快运的编码是JD如要查看其他快递公司的编码,点击此链接:我们⽤京东快运的真实单号(JDVD00215296905)来完成快递单号查询接⼝的调⽤,请求的完整报⽂(URL编码以后):RequestData=%0d%0a++++++++++++%7b%27OrderCode%27%3a%27%27%2c%27ShipperCode%27%3a%27JD%27%2c%27LogisticCode%27%3a%27JDVD00215296905%27%2c%27CustomerNURL解码的请求报⽂:{'OrderCode':'','ShipperCode':'JD','LogisticCode':'JDVD00215296905','CustomerName':'12333'}&EBusinessID=1264783&RequestType=1002&DataSign=M2QzMmVmMzUwNmNkNDFhODc2MmZmMWY5OWNkODU0NmQ=&DataType=2窗体顶端窗体底端返回参数定义:参数名称类型说明必须要求EBusinessID String⽤户ID ROrderCode String订单编号OShipperCode String快递公司编码RLogisticCode String物流运单号OSuccess Bool成功与否RReason String失败原因OState String物流状态:2-在途中,3-签收,4-问RState String物流状态:2-在途中,3-签收,4-问R题件TracesAcceptTime StringAcceptStation StringRemark String返回报⽂信息-{ "LogisticCode" : "JDVD00215296905", "ShipperCode" : "JD", "Traces" : [ { "AcceptStation" : "货物已交付京东物流", "AcceptTime" : "2019-10-07 13:47:08" }, { "AcceptStation" : "配送员杨海滨已经揽收完成", "AcceptTime" : "2019-10-07 13:47:08" }, { "AcceptStation" : "受国庆假期影响,您的快递可能会延迟配送,请您耐⼼等待;", "AcceptTime" : "2019-10-07 13:47:12" }, { "AcceptStation" : "货物已到达【成都枢纽中⼼】", "AcceptTime" : "2019-10-07 20:21:41" }, { "AcceptStation" : "货物已完成分拣,离开【成都枢纽中⼼】", "AcceptTime" : "2019-10-07 23:24:14" }, { "AcceptStation" : "货物已完成分拣,离开【南充中转场】", "AcceptTime" : "2019-10-08 08:30:49" }, { "AcceptStation" : "货物已分配,等待配送", "AcceptTime" : "2019-10-08 08:42:27" }, { "AcceptStation" : "配送员开始配送,请您准备收货,配送员,张少虎,⼿机号,188********", "AcceptTime" : "2019-10-08 10:04:23" }, { "AcceptStation" : "货物已由本⼈签收,感谢您选择京东物流!", "AcceptTime" : "2019-10-08 15:46:50" } ], "State" : "3", "EBusinessID" : "1264783", "Success" : true }附上详细的接⼝⽂档给⼤家:提供源码下载:调⽤第三⽅物流接⼝,替换⾃⼰的key就能直接使⽤,主要实现了物流在线轨迹查询,订单订阅,轨迹推送,⽀持上百家家的快递查询接⼝,包括主流的四通⼀达,⽀持上门取件服务,其他接⼝调⽤,修改调⽤指令和参数就能实现。
快递鸟API电商平台物流及快递数据接口解决方案
1专注于货物流通全流程数据及货款、⻦融服务致⻦于实现发货者与快递物流的跨⻦业信息连接成为物流快递跨⻦业信息化连接第⻦服务商官⻦:2未来可能的物流困难现在的物流困难仓库发货效⻦户隐私信息保护率提升、快递成本和审单成本控制快递⻦电商平台物流与数据⻦案售后问题件、退件跟踪处理签收时效保障智选物流电⻦⻦单隐私快递预约取件在途监控3企业物流模块-业务流程与需求物流订单流转全过程相关增值服务解决⻦案订单ERP /WMS /CRM商家电商平台买家预约后的物流单号物流订单服务快递⻦智选物流 电⻦⻦单 隐私快递 预约取件 在途监控 物流短信解决⻦案关键点:⻦户提交订单时根据智选物流选择推荐的物流公司或预计送达的时效; 根据商家选择,包括退货、返修服务等产品,在线下单预约物流服务; 在商户后台提供物流管理模块,使⻦快递⻦电⻦⻦单接⻦打单,对账; 根据⻦户选择使⻦隐私快递的订单,商家选⻦快递⻦隐私快递功能下单; 电商平台接⻦快递⻦物流轨迹功能,为客户和商家提供物流轨迹展示、物流节点提醒、问题件、妥投率报表等服务;1. 2. 3. 4. 5. 快递公司发货及监控管理(⻦营商城类)快递⻦提供的解决⻦案⻦营商城具备物流服务能⻦:1、服务于买家、商家(⻦身)2、具备买家物流选择服务、查询功能并及时获得物流状态推送3、商城(卖家)具备物流订单的打单发货、监控管理能⻦。
买家下单流程买家收货流程买家退货险隐私快递货到付款智选物流买家查件物流跟踪状态推送短信通知物流评价退货取件快递柜订单审核打单发货线下配送商家物流管理商城发货智选物流电⻦⻦单预约取件隐私⻦单物流跟踪短信服务短信提醒服务客服物流监控财务对账结算仓库物流体检物流评价发货及监控管理模块(电商系统/电商平台类)快递⻦提供的解决⻦案买家下单流程买家收货流程买家退货险 买家查件 物流跟踪 状态推送 短信通知智选物流 退货取件物流评价隐私快递 货到付款快递柜/驿站订单审核 打单发货 线下配送 商家物流管理商家平台智选物流 电⻦⻦单 预约取件 隐私⻦单物流跟踪 短信服务短信提醒服务 客服物流监控 财务对账结算 仓库物流体检物流评价电商平台具备物流服务能⻦:1、⻦持服务于买家、商家、平台(⻦身)买家查件 虚假发货验证 物流体检物流跟踪监控 2、具备买家物流选择服务、查询功能并及时获得物流状态推送; 3、具备卖家打单发货、物流监控管理能⻦及平台物流监控管理;退货险多维验证为⻦户推荐最适合的物流公司,在超区、时效均保证的前提下,为⻦户节省快递费⻦。
快递鸟电子面单接口-德邦电子面单模板预览效果
快递鸟电⼦⾯单接⼝-德邦电⼦⾯单模板预览效果快递鸟现在能⽀持所有常⽤快递公司电⼦⾯单打印,四通⼀达,顺丰,邮政等,⼤部分电商需要⽤到这个接⼝,在实际对接快递鸟电⼦⾯单的时候很多⼈都会有疑问:如何解析接⼝返回的⼀⼤段json字符串,使它呈现为我们打印效果的电⼦⾯单图⽚效果?下⾯我以德邦电⼦⾯单请求为例,跟⼤家分享⼀下我的经验。
请求电⼦⾯单接⼝成功后,会返回图⼀数据,PrintTemplate参数中包含了电⼦⾯单模板的信息,我们要做的就是处理printTemplate参数中的数据,使其以html的⾯单样式显⽰。
PrintTemplate内容:<!DOCTYPE html><html lang="zh-CN"><!--100*180,110--><head><meta charset="utf-8"/><style>* {margin: 0;padding: 0;}.print_paper {font-size: 14px;font-family: "微软雅⿊";border: none;border-collapse: collapse;width: 375px;margin-top: -1px;table-layout: fixed;}.print_paper td {border: solid #000 1px;padding: 0 5px;overflow: hidden;}.x-table {border-collapse: collapse;border-spacing: 0;border: 1px solid #000;width: 375px;}.x-table td {border: 1px solid #000;padding: 0 5px;}.table_first {margin-top: 0;}.print_paper .x1 {font-size: 32px;font-weight: bold;text-align: center;letter-spacing: 5px;line-height: 0.95;font-family: "微软雅⿊";}.print_paper .x4 {font-size: 20px;font-weight: bold;font-family: "微软雅⿊";}.print_paper .xx8 {font-size: 8px;}.print_paper .xx10 {font-size: 12px;}.print_paper .xx12 {font-size: 12px;font-weight: bold;}.print_paper .xx14 {font-size: 12px;font-family: "微软雅⿊";}.print_paper .xx16 {font-size: 16px;font-weight: bold;font-family: "微软雅⿊";}.print_paper .xx18 {font-size: 8px;font-weight: bold;font-family: "微软雅⿊";text-align: right;}.print_paper .xx48 {font-size: 40px;font-weight: bold;text-align: center;font-family: "微软雅⿊";}.no_border {width: 100%;height: 100%;font-size: 14px;}.no_border td {border: none;vertical-align: top;}.fwb {font-weight: bold;}</style></head><body><table class="x-table"><tr height="34"><td><img height="30" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAG0AAAAuCAMAAAAV6memAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYW </body></html>这⾥提供两个⽅法供⼤家参考:1、使⽤C#开发语⾔,将printTemplate内容放在html页⾯的div层中显⽰:(1)、在显⽰信息的*.aspx页⾯中定义⼀个id为“printHTML”的div层。
圆通快递电子面单接口对接说明全
圆通快递电子面单接口对接说明〔全〕.接口类型说明〕接口支持的消息接收方式:〕请求方法的编码格式():""〕地址:〕接口提供:快递鸟〕快递编码:.请求系统级参数备注:必填〔〕,可选〔〕,报文中该参数在一定条件下可选〔〕。
.接口参数〕请求内容字段定义〕返回参数定义. 例如〕请求例如{"": "","": "","": ,"": ,"": ,"": ,"": {"": "","": "","": "","": "上海","": "上海","": "青浦区","": "明珠路号"},"": {"": "","": "","": "","": "北京","": "北京","": "朝阳区","": "三里屯街道雅秀大厦" },"": [{"": "鞋子","": ,"":}],"": [{"": "","": ""}],"": ,"": ,"": ,"": "小心轻放",""}〕返回例如失败:{"": "","": "","": "订单号已存在,请勿重复操作","":""}成功:{"": "","": {"": "","": "","": "","": "京朝阳(京)","": "","": "上海分拨中心","": "北京"},"":"此处省略打印模板内容","":"","":"调用时传入的","": ,"": "","": "成功"}对接源码;;;;;;;;;;;;**** 和请到官网申请:*{电商"请申请";电商加密私钥,注意保管,不要泄漏"请申请";请求, 正式环境地址:"";*** 方式电子面单**() {"{'': '',""'':'',""'',""'',""'',""'':""{""'':'','':'','':'','':'上海','':'上海','':'青浦区','':'明珠路号'},""'':""{""'':'','':'','':'','':'北京','':'北京','':'朝阳区','':'三里屯街道雅秀大厦'},""'':""[{""'':'鞋子','',''}],""'',""'',""'',""'':'小心轻放',""''}";<, > <, >();("", (, ""));("", );("", "");(, , "");("", (, ""));("", "");(, );根据公司业务处理返回的信息......;}*** 加密* 内容* 编码方式**("")( , ) {("");(());[] ();();[] ;( < ) {("");}(());}()();}*** 编码* 内容* 编码方式**( , ) {(());;}("")( , ) {(, );;}*** 电商签名生成* 内容** 编码方式** 签名*("")( , , ) ,{( ){(( , ), );}((, ), );}*** 向指定发送方法的请求* 发送请求的* 请求的参数集合* 远程资源的响应结果*("")( , <, > ) {;;();{();() ();发送请求必须设置如下两行();();方法("");设置通用的请求属性("", "**");("", "");(""," (; ; )");("", "");();获取对象对应的输出流((), "");发送请求参数( ) {();(<, > : ()) {(()>){("");}(());("");(());(()":"());}(":"());(());}输出流的缓冲();定义输入流来读取的响应(((), ""));;(( ()) ) {();}} ( ) {();}使用块来关闭输出流、输入流{{(){();}(){();}}( ){();}}();}}对接源码<电商('') ('', '请申请');电商加密私钥,注意保管,不要泄漏('') ('', '请申请');请求,接口正式地址:('') ('', '');调用获取物流轨迹构造电子面单提交信息$ [];$[""] "";$[""] "";$[""] ;$[""] ;$ [];$[""] "李先生";$[""] "";$[""] "李先生";$[""] "深圳市";$[""] "福田区";$[""] "赛格广场";$ [];$[""] "李先生";$[""] "";$[""] "李先生";$[""] "深圳市";$[""] "福田区";$[""] "赛格广场";$ [];$[""] "其他";$ [];$[] $;$[""] $;$[""] $;$[""] $;调用电子面单$ ($, );$ ($)兼容〔含〕以下"电子面单接口提交内容:<>".$; $ ($);"<><>电子面单提交结果:<>".$;解析电子面单返回结果$ ($, );"<><>返回码:".$[""]; ($[""] "") {"<>是否成功:".$[""];}{"<>电子面单下单失败";}*** 方式查询订单物流轨迹*($){$ ('' > ,'' > '','' > ($) ,'' > '',);$[''] ($, );$(, $);根据公司业务处理返回的信息......$;}*** 提交数据* $ 请求* $ 提交的数据* 响应返回的*($, $) {$ ();($ $ > $) {$[] ('', $, $);}$ ('', $);$ ($);($['']''){$[''];}$[''];$ " " . $[''] . " \\";$ ":" . $[''] . "\\";$ "\\";$ ":" . ($) . "\\";$ "\\\\";$ $;$ ($[''], $['']);($, $);$ "";$ ;(($)) {(($ ($)) ($ "\\" $ "\")) {;}}(($)) {$ ($, );}($);$;}*** 电商签名生成* 内容** 签名*($, $) {((($.$)));}************************************************************** ** 使用特定对数组中所有元素做处理* $ 要处理的字符串* $ 要执行的函数* $ 是否也应用到上*************************************************************** ($, $, $ ){$ ;($ > ) {(' ');}($ $ > $) {(($)) {($[$], $, $);} {$[$] $($);}($ ($)) {$ $($);($ $) {$[$] $[$];($[$]);}}}$;}************************************************************** ** 将数组转换为字符串〔兼容中文〕* $ 要转换的数组* 转换得到的字符串*************************************************************** ($) {($, '', );$ ($);($);}>。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
快递鸟电子面单接口说明文档快递鸟2017-04-25版本一、前言1、业务背景随着电子商务和物流信息化服务的迅猛发展,电子面单已经成为了商家快速发货并连接订单与物流的有力工具。
快递鸟电子面单接口是快递鸟提供给独立电商、仓储管理系统、打单软件、物流供应链等物流系统平台使用的物流下单接口,满足商家在线发货需求并提供打印电子面单的服务。
商家通过贵司系统选择物流公司发送请求通知快递公司有快递要发货,贵公司把数据通过此接口转发到快递鸟,由快递鸟为商家通知对应的快递公司快递员上门取件。
电子面单成功下单后,快递鸟系统内将自动订阅,一旦轨迹发生变化时,快递鸟将调用贵司推送接收接口将物流信息反向推送至商家。
同时若客户使用代收货款服务,快递鸟会将代收货款的货款状态独立推送给商家用户。
电子面单具有如下特点:●打印效率高相比传统针式打印机套打模式,打印速度提升6-8倍,热敏打印机打印速度平均30-40张/分。
●发货效率高包裹出库时减少了抽底单的工序,降低了操作成本、提升操作效率,运单和订单即时绑定,无需人工再次扫描绑定发货。
目前商家在使用电子面单的过程中也存在一些情况导致部分用户无法顺畅使用,例如:●大电商有多家合作快递公司,各家快递公司的模板尺寸不一,需要使用多个打印机打印面单。
●单号作废后回收机制不完善导致电商成本升高。
●二联电子面单无底单,运费核账存在问题(部分商家货物重量以称重为准)。
●打印时发现面单号余额不足,耽误发货。
●小B电商发货量不够申请网点的电子面单服务。
快递鸟电子面单接口为解决客户以上问题,新增如下解决方案:●电子面单余量查询:可通过电子面单余量查询接口查询,并且在快递鸟官网可设置余额不足提醒值(后续会加上余额不足短信/邮件提醒功能)●电子面单取消/回收:可通过电子面单取消接口,回收部分加盟快递公司的面单号。
●通用电子面单模板,含二联、三联模板●快递公司电子面单客户号在线申请●散户模式电子面单:部分快递公司无需申请电子面单客户号即可直接打印电子面单。
二、快递鸟电子面单方案1、编码规范目前接口支持了:顺丰(SF)、EMS(EMS)、宅急送(ZJS)、圆通(YTO)、百世快递(HTKY)、中通(ZTO)、韵达(YD)、申通(STO)、德邦(DBL)、优速(UC)、京东(JD)、信丰(XFEX)、全峰(QFKD)、跨越速运(KYSY)、安能小包(ANE)、快捷快递(FAST)、国通(GTO)、天天快递(HHTT),后续更多的快递公司正在对接中。
散户模式(无需电子面单客户号)支持快递公司:顺丰(SF)、EMS(EMS)(仅支持广东省内发货)、快捷快递(FAST)、宅急送(ZJS),后续更多的快递公司正在对接中。
电子面单客户号在线申请支持快递公司:优速(UC)、后续更多的快递公司正在对接中。
余量查询接口支持快递公司:中通(ZTO)、韵达(YD)、优速(UC)、后续更多的快递公司正在对接中。
面单回收接口支持快递公司:优速(UC)、后续更多的快递公司正在对接中。
2、业务流程⏹商家需要做什么●商家使用流程●配置物料a)电子面单需要使用热敏打印机,可与当地网点申请或自行通过淘宝、京东等电商平台购买,目前市场上支持的厂家和型号包括:斑马G886T、启锐、佳博等b)打印纸:电子面单需要使用热敏纸,可与当地网点申请打印纸物料或者自行在淘宝等电商平台、线下文具店购买,打印纸尺寸需要根据打印模板尺寸购买或定制。
●商家在线申请电子面单客户号截图:申请服务商的界面截图截图:申请服务商的提交界面截图选择网点:网点为根据发货地址自动匹配,若有多个需您自行选择,快递公司总部审核通过后会分配正确的网点。
●申请快递公司电子面单客户号说明:a)电子面单客户号即请求打印面单时的用户账号或月结编码或客户编码,不同物流服务商的叫法不同而已。
b)若商家无需月结运费,电子面单API请求参数CustomerName“电子面单客户账号”无需填写可直接请求打单,无需申请电子面单客户号。
支持快递公司:顺丰(SF)、EMS(EMS)(仅支持广东省内发货)、快捷快递(FAST)、宅急送(ZJS),后续更多的快递公司正在对接中。
c)若商家已有电子面单客户号,则对接快递鸟电子面单API请求参数CustomerName“电子面单客户号”输入商家的客户号和密码通过验证即可打单。
d)在线申请客户号说明:因为物流快递商运营模式的不同(分为加盟和直营),加盟型运营商是以网点为单位进行账户核算,所以您需要和每个快递网点建立合作,通过快递鸟申请服务后,网点会联系您审核并且办理单量充值。
而直营型服务商由快递总部与发货人绑定运费结算关系,无需再联系快递公司充值单号,直营快递公司审核通过后即可打单。
目前支持在线申请客户号的快递公司:优速(UC),后续更多的快递公司正在对接中。
●电子面单余量提醒值设置快递鸟官网-用户管理后台-电子面单-账户信息-批量设置余量不足提醒值。
⏹系统对接需要做什么●快递鸟接口对接通用流程:电子面单接口对接流程:a)注册快递鸟ID:b)实名认证:c)申请电子面单API:在快递鸟用户管理后台--申请API页面,点击申请电子面单API,快递鸟审核通过后即可开始对接。
d)对接联合注册接口:若贵司平台系统有多家发货商家,建议同时对接联合注册接口,以便区分您平台用户,并实现各发货商家独立使用代收货款服务。
接口文档参考:《快递鸟代收货款》-1.1 用户注册接口。
非必需接入。
e)对接电子面单接口:请参考第三章:接口说明f)前端界面开发:您需要为商家增加打印电子面单的组件,包括:添加电子面单打印模板(模板保存在系统本地或通过接口即时在线获取均可)、商家绑定电子面单客户账号(账号、密码、取件网点等信息,具体参考《快递鸟电子面单参数配置对照表》,建议在商家选择快递公司打印模板时让商家输入提交保存。
)、打印界面和控件调试(偏移调试)。
3、系统设计规范添加电子面单打印模板/添加快递公司界面示例:商家需要绑定电子面单账号信息,建议根据《快递鸟电子面单参数配置对照表》显示各家快递公司需要输入的字段。
4、应用场景说明下单+打印a) 商家操作发货时同步订单的发/收件人信息、货物信息,通过接口直接发送到快递公司获取电子面单单号、大头笔、电子面单打印模板等信息。
通过浏览器或CS结构客户端打印工具进行打印电子面单。
⏹筛单a)电子面单下单时快递公司需要确认订单是否在收派范围之内,故需要将订单信息的收件地址和寄件地址进行筛单校验。
⏹取消/回收单号a)已生成电子面单运单号的面单,在快递公司未揽件前可申请取消面单。
b)面单号取消后,加盟型快递公司大客户号的面单会按每家快递公司规则回收,余量对应加1。
c)每个面单号只支持取消一次。
d)每个客户号取消的单号总量不能超过获取单号数量的20%。
e)快递公司回收单号机制配置表如下:余量查询a)与网点预充值单量情况下才需要查询余量。
散户模式无需查询余量。
b)直营快递公司无需查询余量。
三、接口说明1.1电子面单1.1.1功能说明电子面单接口是快递鸟提供给独立电商、仓储管理系统、物流供应链等物流系统平台使用的下单接口,满足客户在线发货需求并提供打印面单的服务,客户通过网络选择物流公司发送请求通知贵公司有快递要发货,贵公司把数据通过此接口转发到快递鸟,由快递鸟为您通知对应的快递公司快递员上门取件。
电子面单成功下单后,快递鸟系统内将自动订阅,一旦轨迹发生变化时,快递鸟将调用客户方推送接收接口。
同时若客户使用代收货款服务,快递鸟会将代收货款的货款状态独立推送给用户。
1.1.2接口规则(1)、只支持Json格式。
接口指令1007。
(2)、订单编号(OrderCode)不可重复提交,重复提交系统会返回具体错误代码。
(3)、目前接口支持了:顺丰(SF)、EMS(EMS)、宅急送(ZJS)、圆通(YTO)、百世快递(HTKY)、中通(ZTO)、韵达(YD)、申通(STO)、德邦(DBL)、优速(UC)、京东(JD)、信丰(XFEX)、全峰(QFKD)、跨越速运(KYSY)、安能小包(ANE)、快捷快递(FAST)、国通(GTO)、天天快递(HHTT),后续更多的快递公司正在对接中。
散户模式(无需电子面单客户号)支持快递公司:顺丰(SF)、EMS(EMS)(仅支持广东省内发货)、优速(UC)、快捷快递(FAST)、宅急送(ZJS),后续更多的快递公司正在对接中。
(4)、测试地址:(5)、正式地址:(6)、请求报文中不允许出现以下特殊字符: ' " # & + < >1.1.3系统级和应用级输入参数1.1.4返回结果参数1.2电子面单余量查询接口1.2.1功能说明用户查询客户号在快递公司的单号剩余量。
1.2.2接口规则(1)、接口只支持Json格式参数,接口指令1127。
只支持POST请求方式,utf-8编码。
(2)、目前支持快递公司:优速,后续更多的快递公司正在对接中。
1.2.3系统级和应用级输入参数1.2.4返回结果参数1.2.5JSON请求示例1.2.6JSON返回示例1.3电子面单单号取消1.3.1功能说明快递鸟通用接口提交快递公司编码、快递单号,则可以取消提交单号。
仅支持未揽件状态快递单进行取消,取消后的回收规则以快递公司为准。
1.3.2接口规则(1)、接口指令1147。
(2)、目前支持快递公司:优速,后续更多的快递公司正在对接中。
1.3.3系统级和应用级输入参数1.3.4返回结果参数1.3.5Json请求示例1.3.6Json请求返回示例1.4申请电子面单客户号1.4.1功能说明客户通过快递鸟平台向快递公司申请客户号1.4.2接口规则(1)、接口只支持Json格式参数,接口指令1107。
只支持POST请求方式,utf-8编码。
(2)、测试地址:/api/apiservice(3)、正式地址:/api/apiservice(4)、目前支持快递公司:优速,后续更多的快递公司正在对接中。
1.4.3系统级和应用级输入参数1.4.4返回结果参数1.4.5Json请求示例1.4.6Json请求返回示例1.5申请客户号信息推送1.5.1功能说明将审核通过客户号信息发送到用户配置的接收地址。
1.5.2接口规则(1)、接口指令1117。
(2)目前支持快递公司:优速,后续更多的快递公司正在对接中。
1.5.3系统级和应用级输入参数1.5.4返回结果参数1.5.5Json请求示例1.5.6Json请求返回示例1.6增值服务列表信息。
四、电子面单模板五、常见问题解答Q&A➢联系快递鸟工作人员:六、返回编码列表七、技术支持文档结束。