极兔快递电子面单打印API接口-极兔速递

更新时间:2023-05-11 13:07:06 阅读: 评论:0

极兔快递电⼦⾯单打印API接⼝-极兔速递
⽬录
前⾔
J&T 极兔速递是⼀家科技创新型互联⽹快递物流企业,致⼒于为⽤户带来优质的快递和物流体验。
2015年8⽉由印尼⾸都雅加达作为起点,进⼊快递物流市场,⽬前覆盖了印度尼西亚、越南、马来西亚、泰国、菲律宾、柬埔寨及新加坡七个国家,成为东南亚超过5.5亿⼈⼝信赖的综合性物流服务商。
电⼦⾯单模板效果图:
电⼦⾯单打印模板规格列表:
快递公司名称编码模板样式尺⼨规格TemplateSize字段CustomArea字段
极兔速递JTSD ⼀联130
宽76mm
⾼130mm
传值130⽀持⼆联180
宽100mm
⾼180mm
切点110/70
默认返回,不能传值⽀持
1.完成前期准备⼯作
1.1,去快递鸟⼀个对接账号
1.2,免费获得⼀个apiKey(接⼝权限验证需要)
1.3,完成实名认证流程
1.4,订购⼀个免费套餐
1.5,准备打印机、打印纸
打印机:
电⼦⾯单模板对打印机品牌、型号等没有要求,只要是热敏打印机即可,常见品牌如:斑马、得⼒、快麦、汉印、佳博等。
打印机可由快递⽹点提供或者在淘宝京东上购买,安装打印机及驱动程序联系打印机提供⽅;
打印纸:
打印纸可由快递⽹点提供或者在淘宝京东上购买,购买时可选择全⽩热敏纸。
2.API接⼝
2.3,请求⽅式:POST
2.4,编码格式(utf-8):application/x-www-form-urlencoded;chart=utf-8
2.5,返回类型:JSON
2.7,调试⼯具:去调试(使⽤快递鸟账号登录)
3.请求参数(Headers)
参数名称类型说明必须要求
RequestData String请求内容需进⾏URL(utf-8)编码,请求内容JSON格式,须和DataType⼀致必填
EBusinessID String⽤户ID,查看⽤户ID和ApiKey必填
RequestType String请求指令类型:1007必填
DataSign String签名数据,(Body+ApiKey)进⾏MD5加密,再进⾏Ba64编码,最后进⾏URL(utf-8)编码必填
DataType String求、返回数据类型:2-json ,默认Json选填
4.请求参数(Body)
参数名称类型说明是否必须MemberID String(50)ERP系统、电商平台等系统或平台类型⽤户的会员ID或店铺账号等唯⼀性标识,⽤于区分其⽤户O
CustomerName String(50)
电⼦⾯单客户号,需要下载《快递鸟电⼦⾯单客户号参数对照表.xlsx》,参考对应字段传值O
CustomerPwd String(30)O SendSite String(30)O SendStaff String(30)C MonthCode String C CustomArea String(500)商家⾃定义区域C WareHouID String(30)发货仓编码O
TransType Int(1)运输⽅式 1- 陆运 2- 空运不填默认为1O ShipperCode String(10)快递公司编码详细编码参考《快递鸟接⼝⽀持快递公司编码.xlsx》R LogisticCode String(30)快递单号(仅宅急送可⽤)O ThrOrderCode String(50)第三⽅订单号 (ShipperCode为JD且ExpType为1时必填)C OrderCode String(30)订单编号(⾃定义,不可重复)R PayType Int(1)邮费⽀付⽅式:1-现付,2-到付,3-⽉结,4-第三⽅⽀付(仅SF⽀持)R ExpType String(2)快递类型:1-标准快件 ,详细快递类型参考《快递公司快递业务类型.xlsx》R IsReturnSignBill Int(1)是否要求签回单 1- 要求 0-不要求O OperateRequire String(20)签回单操作要求(如:签名、盖章、⾝份证复印件等)O
Cost Cost
Double(5)快递运费O
OtherCost Double(5)其他费⽤O
Receiver Company String(30)收件⼈公司O Name String(30)收件⼈R Tel String(20)
电话与⼿机,必填⼀个R Mobile String(20)
PostCode String(10)收件⼈邮编c ProvinceName String(20)收件省 (如⼴东省,不要缺少“省”;如是直辖市,请直接传北京、上海等;如是⾃治区,请直接传⼴西壮族⾃治区等)R CityName String(20)收件市(如深圳市,不要缺少“市”;如果是市辖区,请直接传北京市、上海市等)R ExpAreaName String(20)收件区/县(如福⽥区,不要缺少“区”或“县”)R Address String(100)收件⼈详细地址R
Sender Company String(30)发件⼈公司O Name String(30)发件⼈R Tel String(20)
电话与⼿机,必填⼀个R Mobile String(20)
PostCode String(10)发件地邮编(ShipperCode为EMS、YZPY、YZBK时必填)C ProvinceName String(20)发件省 (如⼴东省,不要缺少“省”;如是直辖市,请直接传北京、上海等;如是⾃治区,请直接传⼴西壮族⾃治区等)R CityName String(20)发件市(如深圳市,不要缺少“市;如是市辖区,请直接传北京市、上海市等”)R ExpAreaName String(20)发件区/县(如福⽥区,不要缺少“区”或“县”)R Address String(100)发件⼈详细地址R
IsNotice Int(1)是否通知快递员上门揽件 0- 通知 1- 不通知不填则默认为1O
StartDate Date
上门取货时间段:"yyyy-MM-dd HH:mm:ss"格式化,本⽂中所有时间格式相同O
EndDate Date O Weight Double(10,3)包裹总重量kg 当为快运的订单时必填,不填时快递鸟将根据各个快运公司要求传对应的默认值C
Quantity Int(2)包裹数(最多⽀持30件) ⼀个包裹对应⼀个运单号,如果是⼤于1个包裹,返回则按照⼦母件的⽅式返回母运单号和⼦运单
R
Volume Double(20,3)包裹总体积m3 当为快运的订单时必填,不填时快递鸟将根据各个快运公司要求传对应的默认值C Remark String(60)备注O AddServices
AddService Name String(20)增值服务名称
(数组形式,可以有多个增值服务)
C Value String(30)增值服务值C CustomerI
D String(30)客户标识(选填)O
Commoditys
Commodity GoodsName String(100)商品名称R GoodsCode String(100)商品编码O Goodsquantity Int(5)商品数量O GoodsPrice Double(10)商品价格O GoodsWeight Double(10,3)商品重量kg O GoodsDesc String(50)商品描述O GoodsVol Double(15,3)商品体积m3O
IsReturnPrintTemplate String(1)返回电⼦⾯单模板:0-不需要;1-需要O IsSendMessage Int(1)是否订阅短信:0-不需要;1-需要O TemplateSize String(10)模板规格(默认的模板⽆需传值,⾮默认模板传对应模板尺⼨)  O PackingType Int(2)包装类型(快运字段)默认为0; 0- 纸 1- 纤 2- ⽊ 3- 托膜 4- ⽊托 99-其他C DeliveryMethod Int(1)送货⽅式(快运字段)默认为0; 0- ⾃提 1- 送货上门(不含上楼) 2- 送货上楼C
5.返回参数(Return)
参数名称类型说明必须要求
EBusinessID String(10)⽤户ID R
Order OrderCode String(30)订单编号R ShipperCode String(10)快递公司编码R LogisticCode String(400)快递单号R MarkDestination String(20)⼤头笔O OriginCode String(20)始发地区域编码O O
riginName String(20)始发地/始发⽹点O DestinatioCode String(20)⽬的地区域编码O
DestinatioName String(20)⽬的地/到达⽹点O SortingCode String(20)分拣编码O PackageCode String(20)集包编码O PackageName String(50)集包地O DestinationAllocationCentre String(50)⽬的地分类O
Success Bool(10)成功与否(true/fal)R SignWaybillCode String(15)签回单单号O ResultCode String(5)返回编码R Reason String(50)失败原因O UniquerRequestNumber String(50)唯⼀标识R PrintTemplate String⾯单打印模板内容(html格式)O EstimatedDeliveryTime Date订单预计到货时间yyyy-mm-dd O SubCount Int(5)⼦单数量O
SubOrders String(400)⼦单单号O SubPrintTemplates String(2000)⼦单模板内容(html格式)O
SignBillPrintTemplate String(2000)签回单模板内容(html格式)O
ReceiverSafePhone String(20)收件⼈安全电话O
SenderSafePhone String(20)收件⼈安全电话O
DialPage String(50)拨号页⾯⽹址(转换成⼆维码可扫描拨号)O
6.请求报⽂(⽰例)
{
"PayType": 1,
"CustomerName": "J0086030000",
"CustomerPwd": "Jt888888",
"ExpType": 1,
"ShipperCode": "JTSD",
"OrderCode": "300008886539888",
"IsNotice": 1,
"IsReturnPrintTemplate": 1,
"Commodity": [
{
"GoodsName": "其他",
"Goodsquantity": 1,
"GoodsWeight": 0
}
],
"Sender": {
"Name": "王宝剑",
"Mobile": "139********",
"ProvinceName": "北京市",
"CityName": "北京市",
"ExpAreaName": "西城区",
"Address": "北京市西城区西直门南⼩街国英1号1020"
},
"Receiver": {
"Name": "刘⼩⼑",
"Mobile": "188********",
"ProvinceName": "⼴东省",
"CityName": "深圳市",
"ExpAreaName": "福⽥区",
"Address": "⼴东省深圳市福⽥区华宝⼀号⼤厦"
}
}
7.成功返回报⽂(⽰例)
{Order={LogisticCode=JT0000131754417, PackageName=180 600-01 001, OrderCode=300008886539888,
KDNOrderCode=KDN2005141650003168, SortingCode=180 600-01 001}, PrintTemplate=打印html内容,
EBusinessID=1237100,UniquerRequestNumber=f3ba8bf3-cb4c-4f06-8aee-7fba1e0e8376, ResultCode=100, Reason=成功, Success=true} 8.失败返回报⽂(⽰例)
{
"EBusinessID": "1237100",
"ResultCode": "106",
"Reason": "该订单号已下单成功",
"UniquerRequestNumber":"5e66486b-8fbc-4131-b875-9b13d2ad1354"
}
说明:未实名认证,未订购套餐,套餐可⽤查询量已经⽤完都会返回此报⽂信息
/
9.分步讲解(C#版本)
9.1,请求数据包结构
9.2,C#调⽤代码⽰例
技术⽀持:QQ:510997342
//电商ID
string eEBusinessID = "test1617571";
//电商加密私钥,快递鸟提供,注意保管,不要泄漏
string appKey= "554343b2-7252-439b-b4eb-1af42c8f2175";
//请求url
string reqURL = ":8080/kdniaosandbox/gateway/exterfaceInvoke.json";
//请求指令
string reqType="1007";
//2-json
string dataType = "2";
//字符编码采⽤UTF-8
string chart = "UTF-8";
//JSON字符串string
string jsonStr = "json请求报⽂⽰例" ;
/
/把(jsonStr+APIKey)进⾏MD5加密
string md5Str=MD5(jsonStr + apiKey, chart);
//把md5Str 进⾏Ba64编码
string ba64Str=ba64(md5Str,chart);
//进⾏URL编码 (utf-8)
string datasign = HttpUtility.UrlEncode(ba64Str, chart);
//请求报⽂参数
string postStr = "RequestType=reqType&EBusinessID= eEBusinessID&RequestData=jsonStr
&DataSign= datasign&DataType=dataType";
//通讯协议使⽤Http协议Post请求⽅式返回轨迹数据
string post = SendPost(reqURL, postStr);
/
/获取到的post数据就是快递鸟返回的完整报⽂,接下来⾃⼰写⼀个解析json的⽅法就能获取到⾥⾯的字段信息。
9.3,C#调⽤⽅法
///<summary>
/// 字符串MD5加密
///</summary>
///<param name="str">要加密的字符串</param>
///<param name="chart">编码⽅式</param>
///<returns>密⽂</returns>
private string MD5(string str, string chart)
{
byte[] buffer = System.Text.Encoding.GetEncoding(chart).GetBytes(str);
try
{
System.Security.Cryptography.MD5CryptoServiceProvider check;
check = new System.Security.Cryptography.MD5CryptoServiceProvider();
byte[] somme = check.ComputeHash(buffer);
string ret = "";
foreach (byte a in somme)
{
if (a < 16)
ret += "0" + a.ToString("X");
el
ret += a.ToString("X");
}
return ret.ToLower();
}
catch
{
throw;
}
}
/// <summary>
/// ba64编码
/
// </summary>
/// <param name="str">内容</param>
/// <param name="chart">编码⽅式</param>
/// <returns></returns>
private string ba64(String str, String chart)
{
return Convert.ToBa64String(System.Text.Encoding.GetEncoding(chart).GetBytes(str));
}
/// <summary>
/// Post⽅式提交数据,返回⽹页的源代码
/// </summary>
/
// <param name="url">发送请求的 URL</param>
/// <param name="postData">请求报⽂参数</param>
/// <returns>远程资源的响应结果</returns>
private string SendPost(string url, string postData)
{
string result = "";
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;
request.UrAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; CLR 2.0.50727; CLR 3.0.04506.648; CLR 3.0.4506.2152;
CLR 3.5.30729)";
request.Method = "POST";
request.ContentLength = byteData.Length;
Stream stream = request.GetRequestStream();
stream.Write(byteData, 0, byteData.Length);
stream.Flush();
stream.Clo();
HttpWebRespon respon = (HttpWebRespon)request.GetRespon();
Stream backStream = respon.GetResponStream();
StreamReader sr = new StreamReader(backStream, Encoding.GetEncoding("UTF-8"));
result = sr.ReadToEnd();
sr.Clo();
backStream.Clo();
respon.Clo();
request.Abort();
}
catch (Exception ex)
{
result = ex.ToString();
}
return result;
}
10.极兔速递电⼦⾯单打印模板内容(HTML)
<style>
.item {
position: absolute;
}
</style><div class="item hline" ></div><div class="item vline"
></div><div class="item vline" ></div><div class="item hline" ></div><!--<div class="item text"
Microsoft Yahei";font-size:22px;font-weight:400;overflow:visible">Company</div>--><div class="item
hline" ></div><div class="item text"
Microsoft Yahei";font-size:20px;font-weight:400;overflow:visible; display:
none;"> 代收货款</div><div class="item text" Microsoft Yahei";font-size:12px;font-
weight:400;overflow:visible">服务热线: 400 820 1666</div><div class="item hline" style="left:3.5px;
top:151px;width:366px;height:0;border-top:1px solid #000"></div><div
class="item text" Microsoft Yahei";font-size:32px;font-weight:400;overflow:visible">180 600-01
001</div><div class="item text" Microsoft Yahei";font-size:16px;font-weight:500;overflow:visible">标
准快递</div><img class="item image"
src="data:image/png;ba64,iVBORw0KGgoAAAANSUhEUgAAACcAAAAtCAYAAAAtOHJTAAAIAUlEQVRYhe1ZeVCVVRQ/uICALD6Ex5Y+2QSFAtFxGcYlUFQUGhVNKwuptGZyyWnGXMii1KlJwX <img class="item image"
src="data:image/png;ba64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAgCAYAAAABtRhCAAAGo0lEQVRIiW2XaahOXxTG1/u65nl2zYoyDykhM8mQoQglSYb4oJBIiXzGN0lKhiQZMpQi5QOZkjFD <img class="item image"
src="data:image/png;ba64,iVBORw0KGgoAAAANSUhEUgAAADoAAAAzCAYAAADGtBvgAAAQa0lEQVRogeVa+VOc55FuYIAR930jDnHfhxCSEbosWY6PWEklqaw2qTiVylYlf8X+E5vkl7icSly162
<div class="item " > <img style="left: 40px; top: 120px; width: 270px;
height: 100px; "
src="data:image/png;ba64,iVBORw0KGgoAAAANSUhEUgAAAV4AAABkCAIAAABB388yAAAEB0lEQVR42u3dMWLDMAxDUd7/0u7eDmkSWyKhh6lLIymEvgm3tuoiIvqj8hUQETQQETQQETQQE /></div><!--<img class="item image"
src="data:image/png;ba64,iVBORw0KGgoAAAANSUhEUgAAADMAAAArCAYAAADVJLDcAAAJYUlEQVRogd1ZaVOU2RV+eu+mN+gGml0EmgYFZRFrSlM6LjGVTOnoh5nJzIdJlanK78g/SCpf5kM -><div class="item text" Microsoft Yahei";font-size:12px;font-weight:400;overflow:visible">打印时
间:</div><div class="item text" Microsoft Yahei";font-size:12px;font-
weight:400;overflow:visible">2020/05/14 16:05:12 </div><div class="item hline" ></div><div
class="item vline" ></div><div class="item text"
Microsoft Yahei";font-size:12px;font-weight:400;overflow:hidden;ine-height: 95%">刘⼩⼑
   188********    </div><div class="item text" Microsoft Yahei";font-
size:12px;font-weight:400;overflow:hidden;ine-height: 93%">⼴东省深圳市福⽥区华宝⼀号⼤厦</div><div class="item hline"
></div><div class="item text" Microsoft Yahei";font-size:10px;font-weight:400;overflow:hidden">王宝剑    139********    </div><div class="item text"
Microsoft Yahei";font-size:10px;font-weight:400;overflow:hidden"> 北京市西城区西直门南⼩街国英1
号1020</div><div class="item hline" ></div><div class="item hline"
></div><div class="item text" style="left:74.5px;top:255px;width:54px;height:20px;font-
family:"Microsoft Yahei";font-size:12px;font-weight:400;overflow:visible;">代收货款</div><div class="item text"
Microsoft Yahei";font-size:12px;font-weight:400;overflow:visible">到付运费</div><div class="item
text" Microsoft Yahei";font-size:12px;font-weight:400;overflow:visible">计件重量 </div><div
class="item vline" ></div><div class="item vline"
></div><div class="item text" Microsoft Yahei";font-size:12px;font-weight:400;overflow:visible">0</div><!--<div class="item text" Microsoft Yahei";font-size:12px;font-weight:400;overflow:visible">¥Cost</div>--><div class="item text"
Microsoft Yahei";font-size:12px;font-weight:400;overflow:visible"></div><div class="item hline"
></div><div class="item text" Microsoft Yahei";font-size:12px;font-weight:400;overflow:visible">签收⼈/时间:</div><div class="item text"
Microsoft Yahei";font-size:12px;font-weight:400;overflow:visible">您的签收代表您已接收此包裹,并
确认商品信息⽆误,包裹完好、没有划痕、破损等表⾯质量问题</div><img class="item image"
src="data:image/png;ba64,iVBORw0KGgoAAAANSUhEUgAAACcAAAAtCAYAAAAtOHJTAAAIAUlEQVRYhe1ZeVCVVRQ/uICALD6Ex5Y+2QSFAtFxGcYlUFQUGhVNKwuptGZyyWnGXMii1KlJwX <img class="item image"
src="data:image/png;ba64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAgCAYAAAABtRhCAAAGo0lEQVRIiW2XaahOXxTG1/u65nl2zYoyDykhM8mQoQglSYb4oJBIiXzGN0lKhiQZMpQi5QOZkjFD <div class="item vline" ></
div><div class="item text"
Microsoft Yahei";font-size:12px;font-weight:400;overflow:hidden">刘⼩⼑   
188********    </div><div class="item text" Microsoft Yahei";font-size:12px;font-
weight:400;overflow:hidden">⼴东省深圳市福⽥区华宝⼀号⼤厦</div><div class="item text" Microsoft
Yahei";font-size:12px;font-weight:400;overflow:hidden">王宝剑    139********    </div><div class="item text"
Microsoft Yahei";font-size:12px;font-weight:400;overflow:hidden">北京市西城区西直门南⼩街国英1号
1020</div><div class="item text" Microsoft Yahei";font-size:14px;font-weight:400;overflow:visible">
备注: 数量:1  ;重量:0kg  ;其他</div><div class="item text" Microsoft
Yahei";font-size:14px;font-weight:400;overflow:visible">已检视</div><!--<div class="item text" Microsoft Yahei";font-size:14px;font-weight:400;overflow:visible">备注</div>--><div class="item" Microsoft Yahei";font-size:14px;font-weight:400;overflow:visible"> <img
src="data:image/gif;ba64,R0lGODlhLAE3APAAAAAAAP///ywAAAAALAE3AEAI/wADCBxIsKDBgwgTKlxoEACAAA8hEnzoEGJFgRUdRpRIMaNGiyBDesQYsWTHkiRNWqQYsuVGlhpPrgT50aTKiz /></div><div class="item text" Microsoft Yahei";font-size:14px;font-
weight:400;overflow:visible">JT0000131754417</div><div class="item" Microsoft Yahei";font-
size:14px;font-weight:400;overflow:visible"> <img
src="data:image/gif;ba64,R0lGODlhtAArAPAAAAAAAP///ywAAAAAtAArAEAI/wADCBxIUCAAAAEQJiSI8GBChwYbQlwosaLEhxEzQtyokeNDhQ4PNsSY0eDAkSIrfsQocuFKlgpXXixIs2bBkCZPwow /></div><div class="item text" Microsoft Yahei";font-size:12px;font-
weight:400;overflow:visible">JT0000131754417</div><img class="item image"
src="data:image/png;ba64,iVBORw0KGgoAAAANSUhEUgAAAQQAAAEECAYAAADOCEoKAAAaxElEQVR4Xu2d0XZbRwwDm///6PTITWPZsTVzRYi+ctBXLkEQ5EIrx0l//Pz58+c//a8KVIEq8M8///y 复制以上HTML内容保存为html格式的⽂件,可以查看模板效果。
11.关于签名
快递鸟和第三⽅电⼦商务公司系统进⾏对接,有⼀定的安全机制。采⽤ IP 认证加签名
的⽅式对接,具体⽅案如下:
防⽌数据被篡改
在 POST 请求中会传递 5 个必须(R)参数
RequestData==数据内容(URL 编码:UTF-8)
EBusinessID==⽤户 ID
RequestType=请求指令类型
DataSign== 数据内容签名:把(请求内容(未编码)+ApiKey)进⾏ MD5 加密,然后 Ba64
编码,最后进⾏ URL(utf-8)编码
DataType==2(返回数据类型为 json)
注:
DataSign ⽣成后,对⽅接收到数据后,以同样的算法进⾏签名(推送接⼝ RequestType 为
101/102 不需要进⾏ URL 编码),⽣成摘要,对⽐两者的摘要是否相同,如果不同,说明传递过程中发⽣数据篡改。
调⽤接⼝的⾝份认证
注册成为快递鸟⽤户后,会⽣成对应的⽤户 ID 和 APIKey,⽤户 ID 相当于⽤户名,
APIKey 相当于密码。

本文发布于:2023-05-11 13:07:06,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/585671.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:快递   编码   模板   类型   公司   返回   请求   内容
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图