文档

电子运单说明

  1. 1. 电子运单打印服务必须接入开放平台速运类的下单接口服务,其余通过电话、填写四联纸质运单等下发的订单均无法使用。
  2. 2. 使用电子运单必须遵循电子运单的使用规范。
  3. 3. 电子运单的使用说明。

电子运单使用规范

详细请下载“顺丰电子运单规格说明”: 顺丰电子运单规格说明.xlsx

电子运单模板及开发包下载

详细请下载“电子运单模板及开发包示例”: 顺丰电子运单模板及示例.zip

电子运单的使用说明

  1. 1. 使用顺丰开放平台“电子运单图片下载接口”
    当客户选择使用顺丰电子运单时(申请运单号),在下单结果通知该订单已经被成功处理后, 即可通过此接口下载电子运单图片,返回的结果为经过BASE64编码的图片字符,需要解码后重新生成图片。 使用此种方式生成的电子运单图片大小约为200kb,可能会影响您的网络带
    宽,因此请评估您的系统情况后选择使用。 (详细的接口使用请接口规范中的相关说明
  2. 2. 使用顺丰开放平台电子运单打印SDK点击下载电子运单打印服务SDK.zip
    电子运单打印SDK为本地的打印服务,支持直接打印。该SDK为可执行的jar包,运行时依赖java环境,需要本地预先安装jdk(1.6或以上版本)。 详细配置使用见如下介绍:
          第一步、 安装jdk,版本为1.6或以上
          详细的安装说明可自行百度,有非常详尽的安装和配置说明。
          第二步、 启动SDK本地服务
          a. 方式一, windows环境将openapi_waybill_print_service_V1.0.jar和run-sf-printer.bat置于同一目录下,双击run-sf-printer.bat文件即可开启本地运单打印服务
          b. 方式二,使用命令打开执行
              java -jar path [port],示例:java -jar E:/openapi_waybill_print_service_V1.X.jar 8888。如不填写端口,则默认为4040
          c. 验证服务运行情况
              打开浏览器,输入:http://localhost:4040/servertest.jsp (启动端口),如显示“OK!”即表示启动成功
          d. 使用打印服务
          
     java实例代码
    	URL myURL = new URL("http://127.0.0.1:4040/sf/waybill/print?type=A5&output=print");
    	
    	 //其中127.0.0.1:4040为打印服务部署的地址(端口如未指定,默认为4040),
    	 //type为模板类型(支持两联,尺寸为100mm*150mm,type为poster_100mm150mm)
    	 //output为输出类型,值为print或image,如不传,
    	 //默认为print(print 表示直接打印,image表示获取图片的BASE64编码字符串)
    	
    	HttpURLConnection httpConn = (HttpURLConnection) myURL.openConnection();
    	httpConn.setDoOutput(true);
    	httpConn.setDoInput(true);
    	httpConn.setUseCaches(false);
    	httpConn.setRequestMethod("POST");
    	httpConn.setRequestProperty("Content-Type", "application/json;charset=utf-8");
    	httpConn.setConnectTimeout(5000);
    	httpConn.setReadTimeout(2 * 5000);
    	
    	List<WaybillDto> waybillDtoList = new ArrayList<WaybillDto>();
    	WaybillDto dto = new WaybillDto();
    	
    	dto.setAppId("");//客户APPID 必填
    	dto.setAppKey("");//客户APPKEY 必填
    	dto.setMailNo("120000000001");//顺丰运单号码
    	//dto.setMailNo("120000000001,001000000002") //子母单方式
    	
    	//增值服务
    	dto.setInsureValue("1999");//声明保价价值 --属于增值服务项  保价
    	dto.setCodValue("1999");// 代收货款价值 单位/元(RMB) --属于增值服务项	
    	//收件人信息  
    	dto.setConsignerProvince("广东省");
    	dto.setConsignerCity("深圳市");
    	dto.setConsignerCounty("南山区");
    	dto.setConsignerAddress("学府路软件产业基地2B12楼"); //详细地址限制最多23个字  字段过长影响打印效果
    	dto.setConsignerCompany("顺丰科技");
    	dto.setConsignerMobile("15820456987");
    	dto.setConsignerName("风一样的旭哥");
    	dto.setConsignerShipperCode("5180000");
    	dto.setConsignerTel("0755-33066758");
    	//寄件人信息
    	dto.setDeliverProvince("浙江省");
    	dto.setDeliverCity("杭州市");
    	dto.setDeliverCounty("拱墅区");
    	dto.setDeliverCompany("神罗科技集团有限公司");
    	dto.setDeliverAddress("舟山东路5199号");
    	dto.setDeliverName("詹妮丝");
    	dto.setDeliverMobile("15889379999");
    	dto.setDeliverShipperCode("310000");
    	dto.setDeliverTel("0571-26508888");
    
    	dto.setDestCode("755"); //目的地代码 
    	dto.setZipCode("571");  //原寄地代码
    	dto.setExpressType(1);//1-标准快递   2-顺丰特惠   5-顺丰次晨 6-顺丰即日  3-电商特惠  7-电商速配   15-生鲜速配
    	dto.setMonthAccount("7550385912");//月结卡号  
    	dto.setOrderNo("SFAPI00000000000000099");
    	dto.setPayMethod(1);//付款方式 1 寄付 2到付 3第三方月结卡号支付
    	
    	 //打印在电子运单上的商户logo,可以采用本地路径,也可以使用远程地址路径,
    	 //如http://www.sf-express.com/.galleries/logoSC.png
    	dto.setLogo("F:/sflogo.jpg");//顺丰logo 必填
    	dto.setSftelLogo("F:/95338-openAPI.jpg");//顺丰95338热线logo 必填
    	
    	CargoInfoDto cargo = new CargoInfoDto();
    	cargo.setCargo("文件");
    	cargo.setCargoCount(1);
    	cargo.setCargoUnit("件");
    	cargo.setSku("00015645");
    	cargo.setRemark("重要文件");
    	
    	CargoInfoDto cargo2 = new CargoInfoDto();
    	cargo2.setCargoCount(1);
    	cargo2.setCargo("文件2");
    	cargo2.setCargoUnit("件");
    	cargo2.setSku("00015645");//货物sku码 可不传 
    	cargo2.setRemark("重要文件");
    	
    	List<CargoInfoDto> cargoInfoList = new ArrayList<CargoInfoDto>();
    	cargoInfoList.add(cargo2);
    	cargoInfoList.add(cargo);
    	
    	dto.setCargoInfoDtoList(cargoInfoList);
    	waybillDtoList.add(dto);
    	ObjectMapper objectMapper = new ObjectMapper();
    	StringWriter stringWriter = new StringWriter();
    	objectMapper.writeValue(stringWriter,waybillDtoList);
    	
    	httpConn.getOutputStream().write(stringWriter.toString().getBytes());
    	httpConn.getOutputStream().flush();
    	httpConn.getOutputStream().close();
    	InputStream in = httpConn.getInputStream();
    
    

          e. 请求参数说明
     请求参数
    			   
    请求体参数:
    {
        "appId": "",
        "appKey": "",
        "codValue": "1999",
        "consignerAddress": "学府路软件产业基地2B12楼",
        "consignerCity": "深圳市",
        "consignerCompany": "顺丰科技",
        "consignerCounty": "南山区",
        "consignerMobile": "15820456987",
        "consignerName": "风一样的旭哥",
        "consignerProvince": "广东省",
        "consignerShipperCode": "5180000",
        "consignerTel": "0755-33066758",
        "deliverAddress": "舟山东路5199号",
        "deliverCity": "杭州市",
        "deliverCompany": "神罗科技集团有限公司",
        "deliverCounty": "拱墅区",
        "deliverMobile": "15889379999",
        "deliverName": "詹妮丝",
        "deliverProvince": "浙江省",
        "deliverShipperCode": "310000",
        "deliverTel": "0571-26508888",
        "destCode": "755",
        "electric": "",
        "expressType": "1",
        "insureValue": "1999",
        "logo": "F:/sflogo.jpg",
        "mailNo": "755123457777",
        "monthAccount": "7550385912",
        "orderNo": "SFAPI00000000000000099",
        "payArea": "",
        "payMethod": "1",
        "returnTrackingNo": "",
        "sftelLogo": "F:/95338-openAPI.jpg",
        "zipCode": "571",
        "cargoInfoDtoList": [
            {
                "cargo": "文件2",
                "cargoAmount": "",
                "cargoCount": "1",
                "cargoTotalWeight": "",
                "cargoUnit": "件",
                "cargoWeight": "",
                "parcelQuantity": "",
                "remark": "重要文件",
                "sku": "00015646"
            },
            {
                "cargo": "文件",
                "cargoAmount": "",
                "cargoCount": "1",
                "cargoTotalWeight": "",
                "cargoUnit": "件",
                "cargoWeight": "",
                "parcelQuantity": "",
                "remark": "重要文件",
                "sku": "00015645"
            }
        ]
    }