快递100API电子面单接口可支持45 家快递公司(四通一达、百世、邮政、顺丰、德邦等)。并且可与顺丰对接,与顺丰对接时可选择使用顺丰的电子面单服务或者快递100API的电子面单服务。
快递100API为独立电商、仓储和物流等系统平台提供电子面单接口,客户在快递100API网络上选择快递公司并进行在线发货。如需查看官方技术文档请访问:https://api.kuaidi100.com/document/5eb9f5b686b0df41883139f4.html
此篇java demo内容包括:
- 电子面单图片接口
- 电子面单html接口
- 电子面单打印接口
- 自定义云打印接口
- 附件云打印接口
- 电子面单复打接口
- 物流状态及营销短信发送接口
方便开发者实现:运营前端下单寄件后自动自动生成电子面单、发货单、营销物料——>仓储人员自动获取运营生成的电子面单、发货单、营销物料并完成包装。
语言:java
电子面单API产品介绍
电子面单服务提供了获取物流单号、打印电子面单的功能,满足企业的快速打单、回传物流单号的需求。
- 电子面单打印接口 本接口支持打印电子面单,支持45 快递公司面单打印。商家需向当地快递公司的网点申请电子面单账号/月结账号,或者通过菜鸟淘宝第三方授权使用月结账号。
本接口需要使用快递100的打印设备进行打印。若商家没有打印机,可以使用快递100的云打印机进行打印,若商家已经有打印机,需要连接快递100云盒进行打印。
本接口支持快递公司面单模板的选择及自定义修改,支持远程打印及多人多部门打印。
- 电子面单图片接口 本接口支持生成电子面单图片。商家需向当地快递公司的网点申请电子面单账号/月结账号,或者通过菜鸟淘宝第三方授权使用月结账号。生成图片后,商家可以通过本地打印机进行打印。
本接口支持快递公司面单模板的选择及自定义修改。
- 电子面单HTML接口 本接口支持生成电子面单的HTML页面。商家需向当地快递公司的网点申请电子面单账号/月结账号,或者菜鸟淘宝第三方授权使用月结账号。该页面展示面单的模板不能选择,是面单的固定模板。商家可以通过本地打印机打印生成页面。
- 支持的快递公司列表 电子面单API支持45 家快递公司网点面单打印、主流电商平台(淘宝、京东、拼多多)面单打印以及国际快递公司面单打印。具体列表清查看参数字典
/**
* 电子面单图片接口
*/
@Test
public void testPrintImg() throws Exception{
PrintImgParam printImgParam = new PrintImgParam();
printImgParam.setKuaidicom(CompanyConstant.ZJS);
printImgParam.setSendManName("张三");
printImgParam.setSendManMobile("15999566666");
printImgParam.setSendManPrintAddr("广东省深圳市南山区科技南十二路");
printImgParam.setRecManName("李四");
printImgParam.setRecManMobile("15999566666");
printImgParam.setRecManPrintAddr("北京市海淀区xxx路");
printImgParam.setType("10");
printImgParam.setTempid("180c7c8f646742ca871a92c976392b05");
printImgParam.setCount("1");
String param = new Gson().toJson(printImgParam);
String t = System.currentTimeMillis() "";
String sign = SignUtils.printSign(param,t,key,secret);
PrintReq printReq = new PrintReq();
printReq.setKey(key);
printReq.setMethod(ApiInfoConstant.ELECTRONIC_ORDER_PIC_METHOD);
printReq.setSign(sign);
printReq.setParam(param);
printReq.setT(t);
IBaseClient printImg = new PrintImg();
System.out.println(printImg.execute(printReq));
}
代码语言:txt复制 /**
* 电子面单html接口
*/
@Test
public void testPrintHtml() throws Exception{
ManInfo recManInfo = new ManInfo();
recManInfo.setName("张三");
recManInfo.setMobile("15999566666");
recManInfo.setPrintAddr("广东省深圳市南山区科技南十二路");
ManInfo sendManInfo = new ManInfo();
sendManInfo.setName("李四");
sendManInfo.setMobile("15999566666");
sendManInfo.setPrintAddr("北京市海淀区xxx路");
PrintHtmlParam printHtmlParam = new PrintHtmlParam();
printHtmlParam.setKuaidicom(CompanyConstant.ZJS);
printHtmlParam.setCount(2);
printHtmlParam.setNeedChild(1);
//如果需要返回电子面单,需要设置
printHtmlParam.setNeedTemplate("1");
printHtmlParam.setSendMan(sendManInfo);
printHtmlParam.setRecMan(recManInfo);
String t = System.currentTimeMillis() "";
String param = new Gson().toJson(printHtmlParam);
String sign = SignUtils.printSign(param,t,key,secret);
PrintReq printReq = new PrintReq();
printReq.setKey(key);
printReq.setMethod(ApiInfoConstant.ELECTRONIC_ORDER_HTML_METHOD);
printReq.setT(t);
printReq.setSign(sign);
printReq.setParam(param);
IBaseClient printHtml = new PrintHtml();
System.out.println(printHtml.execute(printReq));
}
代码语言:txt复制 /**
* 电子面单打印
*/
@Test
public void testPrintCloud() throws Exception{
ManInfo recManInfo = new ManInfo();
recManInfo.setName("张三");
recManInfo.setMobile("15999566666");
recManInfo.setPrintAddr("广东省深圳市南山区科技南十二路");
ManInfo sendManInfo = new ManInfo();
sendManInfo.setName("李四");
sendManInfo.setMobile("15999566666");
sendManInfo.setPrintAddr("北京市海淀区xxx路");
PrintCloudParam printCloudParam = new PrintCloudParam();
printCloudParam.setKuaidicom(CompanyConstant.ZJS);
printCloudParam.setCount("1");
printCloudParam.setSiid(siid);
printCloudParam.setTempid("180c7c8f646742ca871a92c976392b05");
printCloudParam.setSendMan(sendManInfo);
printCloudParam.setRecMan(recManInfo);
String param = new Gson().toJson(printCloudParam);
String t = System.currentTimeMillis() "";
PrintReq printReq = new PrintReq();
printReq.setT(t);
printReq.setKey(key);
printReq.setMethod(ApiInfoConstant.ELECTRONIC_ORDER_PRINT_METHOD);
printReq.setSign(SignUtils.printSign(param,t,key,secret));
printReq.setParam(param);
IBaseClient baseClient = new PrintCloud();
System.out.println(baseClient.execute(printReq));
}
代码语言:txt复制 /**
* 云打印自定义
*/
@Test
public void testCloudCustom() throws Exception{
CloudPrintCustomParam cloudPrintCustomParam = new CloudPrintCustomParam();
cloudPrintCustomParam.setSiid(siid);
cloudPrintCustomParam.setCallBackUrl("http://www.baidu.com");
cloudPrintCustomParam.setTempid("180c7c8f646742ca871a92c976392b05");
String t = System.currentTimeMillis() "";
String param = new Gson().toJson(cloudPrintCustomParam);
PrintReq printReq = new PrintReq();
printReq.setKey(key);
printReq.setMethod(ApiInfoConstant.CLOUD_PRINT_CUSTOM_METHOD);
printReq.setT(t);
printReq.setSign(SignUtils.printSign(param,t,key,secret));
printReq.setParam(param);
IBaseClient baseClient = new CloudPrintCustom();
System.out.println(baseClient.execute(printReq));
}
代码语言:txt复制 /**
* 云打印附件
*/
@Test
public void testCloudAttachment() throws Exception{
CloudPrintAttachmentParam cloudPrintAttachmentParam = new CloudPrintAttachmentParam();
cloudPrintAttachmentParam.setSiid(siid);
cloudPrintAttachmentParam.setCallBackUrl("http://www.baidu.com");
String t = System.currentTimeMillis() "";
String param = new Gson().toJson(cloudPrintAttachmentParam);
CloudAttachmentReq cloudPrintAttachmentReq = new CloudAttachmentReq();
cloudPrintAttachmentReq.setKey(key);
cloudPrintAttachmentReq.setMethod(ApiInfoConstant.CLOUD_PRINT_ATTACHMENT_METHOD);
cloudPrintAttachmentReq.setT(t);
cloudPrintAttachmentReq.setSign(SignUtils.printSign(param,t,key,secret));
cloudPrintAttachmentReq.setParam(param);
cloudPrintAttachmentReq.setFile(new File("C:\Users\Administrator.-20171106WFEKLN\Desktop\1.jpg"));
IBaseClient baseClient = new CloudPrintAttachment();
System.out.println(baseClient.execute(cloudPrintAttachmentReq));
}
代码语言:txt复制 /**
* 复打
*/
@Test
public void testCloudPrintOld() throws Exception{
PrintReq printReq = new PrintReq();
CloudPrintOldParam cloudPrintOldParam = new CloudPrintOldParam();
cloudPrintOldParam.setTaskId("D21DB1AC74A260E6F5604FC43B4598B8");
String t = System.currentTimeMillis() "";
String param = new Gson().toJson(cloudPrintOldParam);
printReq.setKey(key);
printReq.setMethod(ApiInfoConstant.CLOUD_PRINT_OLD_METHOD);
printReq.setT(t);
printReq.setSign(SignUtils.printSign(param,t,key,secret));
printReq.setParam(param);
IBaseClient cloudPrintOld = new CloudPrintOld();
System.out.println(cloudPrintOld.execute(printReq));
}
代码语言:txt复制 /**
* 发送短信
*/
@Test
public void testSendSms() throws Exception{
SendSmsReq sendSmsReq = new SendSmsReq();
sendSmsReq.setCallback("http://www.baidu.com");
Map<String,String> content = new HashMap<String, String>();
content.put("username","测试用户");
sendSmsReq.setContent(new Gson().toJson(content));
sendSmsReq.setPhone("15994708912");
sendSmsReq.setSeller("贵司名称");
sendSmsReq.setUserid(userid);
sendSmsReq.setTid(tid);
sendSmsReq.setSign(SignUtils.smsSign(key,userid));
IBaseClient sendSms = new SendSms();
System.out.println(sendSms.execute(sendSmsReq));
}
官方技术支持:https://api.kuaidi100.com/document/5eb9f5b686b0df41883139f4.html