1. 简介

需要对接千易的三方物流商,需要看该文档

2. 环境要求及基础约定

授权:accessId(客户ID)、secretKey(密钥,用于验证报文信息)。对仓库来说,用双方约定的key作为验签用key。

接口地址:第三方提供服务地址供千易调用。

请求方式:

  • Method: POST
  • Content-Type: application/x-www-form-urlencoded

公共请求:

字段名 类型 必填 备注
accessId String 第三方授权给千易客户ID。gwms这个字段传空
method String 接口方法名
content String 业务参数
sign String 签名

header参数:

字段名 类型 必填 备注
logisticsType String N 物流类型
secret String N 第三方仓秘钥。gwms用双方约定的秘钥验签
accessToken String N accessToken
refreshToken String N refreshToken
authInfo String N gwms传物流商这边用到的授权信息。json格式
apiUrl String N 服务请求域名: https://www.baidu.com

authInfo 传值举例: "authInfo":[ {"authInfoKey":"MERCHANT_ID", "value":"BG2447"}, {"authInfoKey":"SECRET_KEY", "value":"f1dafc7b7c934d21327d990b0ea56cfcf4814ef699345a37010c07e02d5219a9"}, {"authInfoKey":"PRINT_SIZE", "value":""} ] 其中,MERCHANT_ID,SECRET_KEY,PRINT_SIZE均为物流商约定要传的字段,不同的物流商字段可能不同,都通过 json格式统一请求。

公共响应:

字段名 类型 必填 备注
success boolean 业务处理是否成功
message String 业务处理异常消息

签名方式:

1、将accessId和content组成json字符串{"accessId":"accessId","content":"具体业务参数"},content为空时{"accessId":"accessId"}。gwms传的accessId为空

2、将第三方分配的客户secretKey添加到json的末尾,得到待加密字串{"accessId":"accessId","content":"具体业务参数"}secretKey。gwms传的secretKey为双方约定的key

3、对待加密字串做sha1加密得到签名(org.apache.commons.codec.digest.DigestUtils.sha1Hex(待加密字串))

4、将签名赋值到公共请求的sign字段

3. 渠道列表

方法名:

  • channels

返回信息:

字段名 字段描述 类型 必填 备注
channelList 渠道信息 Array
└ channelCode 渠道代码 String 必填 需具有唯一性
└ channelName 渠道名称 String 必填
└ carrierName 承运商名称 String N

请求示例:

{ "accessId": "3215435", "content": "", "method": "channels", "sign": "11fbd649164860b5571cb60dfc99baccb375f392" }

返回示例:

{ "success": "true", "message": "", "channelList": [ { "channelCode": "FedexGround", "channelName": "FedEx Ground", "carrierName": "FEDEX" } ] }

4. 创建物流订单(申请单号)

方法名:

  • createOrder

接口参数:

字段名 字段描述 类型 必填 备注
customerNumber 订单号 String 必填
onlineOrderId 线上单号 String N
addedServices 签名服务 String N 签名服务 1 一般签名服务 2 承认签名服务
channelCode 发货渠道代码 String 必填
recipientAddress 收件人信息 Object 必填
└ name 收件人姓名 String 必填
└ address1 收件人地址1 String 必填
└ address2 收件人地址2 String N
└ phone1 收件人电话1 String 必填
└ phone2 收件人电话2 String N
└ email 收件人邮箱 String N
└ country 收件人国家 String 必填 国家二字码ISO 3166-1
└ province 收件人省州 String Y
└ city 收件人城市 String Y
└ town 收件人区镇 String N
└ postalCode 收件人邮编 String 必填
senderAddress 寄件人信息 Object 必填
└ name 寄件人姓名 String 必填
└ address1 寄件人地址1 String 必填
└ address2 寄件人地址2 String N
└ phone1 寄件人电话1 String 必填
└ phone2 寄件人电话2 String N
└ email 寄件人邮箱 String N
└ country 寄件人国家 String 必填 国家二字码ISO 3166-1
└ province 寄件人省州 String Y
└ city 寄件人城市 String Y
└ town 寄件人区镇 String Y
└ postalCode 寄件人邮编 String 必填
itemList 订单商品信息 Array 必填
└packageNumber 包裹唯一号 String N 当前单据唯一包裹号,packageList有值必传
└ sku 商品编码 String 必填
└ skuName 商品名称 String N
└ length String N
└ wide String N
└ high String N
└ lengthUnit 长度单位 String N cm(厘米)、In(英寸)、m(米)
└ weight 报关重量 BigDecimal Y 重量固定换算成KG,默认0
└ skuWeight 商品重量 Double N
└ weightUnit 重量单位 String N KG(千克),GRAM(克),LBS(磅)
└ color 颜色 String N
└ skuPrice 商品实付金额 BigDecimal N
└ quantity 数量 String 必填
└ price 商品金额 BigDecimal 必填 该商品总金额
└ currency 币种 String 必填 ISO 4217
└ customsCode 海关编码 String N
└ cnCustomsName 中文报关名 String N
└ enCustomsName 英文报关名 String N
codEnabled 是否是cod订单 Integer N 1:cod订单 0:非cod订单
codPayAmount cod订单金额 BigDecimal N
codCurrency cod金额币种 String N
packageList 多包裹列表 Array N
└packageNumber 包裹唯一号 String Y 当前单据包裹号
└packageLength 包裹长 Number N
└packageWide 包裹宽 Number N
└packageHigh 包裹高 Number N
└packageUnit 包裹单位 String N cm(厘米)、In(英寸)、m(米),默认值:cm
└totalWeight 总重量 Number N 单位为KG
packageLength 包裹长 Double N
packageWide 包裹宽 Double N
packageHigh 包裹高 Double N
packageUnit 包裹单位 String N cm(厘米)、In(英寸)、m(米),默认值:cm
totalWeight 总重量 BigDecimal N 单位为KG
iossNumber IOSS号 String N
taxNumber 税号 String N
receiverTaxNumber 收件人税号 String N
remarks 备注 String N

返回信息:

字段名 字段描述 类型 必填 备注
trackingNumber 运单号 String 必填
customerNumber 订单号 String N
addressType 地址类型 Integer N 地址类型1-未知2-商业3-住宅
feedBackId 回传信息 String N addressType和feedBackId两个字段不可同时返回
packageInfoList 多包裹运单号 N 多包裹信息
└packageNumber 包裹号 String N
└trackingNumber 订单号 String N
└customerNumber 运单号 String N

请求示例:

{ "accessId" : "67436533", "method" : "createOrder", "content" : "{\"senderAddress\":{\"name\":null,\"company\":null,\"address1\": null,\"address2\":null,\"fullAddress\":null,\"phone1\":null,\"phone2\":null,\"email\":null,\"country\":null,\"province\": null,\"city\":null,\"town\":null,\"postalCode\":null},\"totalWeight\": 1,\"itemList\":[{\"sku\":\"A1223\",\"cnCustomsName\":null,\"enCustomsName\":null,\"customsCode\":null,\"price\":0,\"currency\":\"MYR\",\"quantity\":1,\"weight\":1,\"skuWeight\":1.0,\"color\":null,\"weightUnit\":\"KG\",\"length\":\"1.0\",\"width\":\"1.0\",\"height\":\"1.0\",\"lengthUnit\":\"cm\",\"skuPrice\":2E+2}] ,\"codPayAmount\":null,\"recipientAddress\":{\"name\":\"0983833206\",\"company\":null,\"address1\":\"0983833206\",\"address2\": \"10310\",\"fullAddress\":\"0983833206, 10310\",\"phone1\":\"12675638889\",\"phone2\":\"\",\"email\":\"\",\"country\": \"PH\",\"province\":\"Bangkok\",\"city\":\"Huai Khwang\",\"town\":null,\"postalCode\":\"10310\"},\"customerNumber\": \"DA241112100000\",\"remarks\":null,\"channelCode\":\"5\"}", "sign" : "c77f2ad0b06d8e2b04af9aec9b8b6f7740d07249" }

返回示例:

{ "success": "true", "message": "", "data": { "trackingNumber": "DS35841212312",

"customerNumber":"orderNumber",

“addressType”:1 } }

5. 取消物流订单

方法名:

  • cancelOrder

接口参数:

字段名 字段描述 类型 必填 备注
customerNumber 千易订单号 String 选填 与trackingNumber按需取一即可
trackingNumber 运单号 String 选填 与customerNumber按需取一即可

请求示例:

{ "accessId": "3215435", "method": "cancelOrder", "content": "{\"orderNumber\":\"CESH210204147401\",\"trackingNumber\":\"DS35841212312\"}", "sign": "11fbd649164860b5571cb60dfc99baccb375f392" }

返回示例:

{ "success": "true", "message": "" }

6. 获取面单

方法名:

  • getLabel

接口参数:

字段名 字段描述 类型 必填 备注
customerNumber 订单号 String 必填
trackingNumber 运单号 String 必填
labelType 面单类型 String Y 模板尺寸:A4、10*15等

返回信息:

字段名 字段描述 类型 必填 备注
trackingNumber 运单号 String 必填
customerNumber 订单号 String N
labelData 面单 String 必填 PDF Base64

请求示例:

{ "accessId": "3215435", "method": "getLabel", "content": "{\"orderNumber\":\"CESH210204147401\",\"trackingNumber\":\"DS35841212312\",\"labelType\":\"10*15\"}", "sign": "11fbd649164860b5571cb60dfc99baccb375f392" }

返回示例:

{ "success": "true", "message": "", "data": { "trackingNumber": "DS35841212312",

"customerNumber":"CESH210204147401", "labelData": "5rWL6K+V6Z2i5Y2V5pWw5o2u" } }

7. 获取运单号和面单接口

接口描述: 此为扩展接口,同时获取运单号和面单的接口,注: 对接createOrder(申请单号)和 getLabel(获取面单)接口与该接口功能一致。

方法名:

  • apply

接口参数:

字段名 字段描述 类型 必填 备注
customerNumber 订单号 String 必填
addedServices 签名服务 String N 签名服务 1 一般签名服务 2 承认签名服务
channelCode 发货渠道代码 String 必填
labelType 面单类型 String 必填
recipientAddress 收件人信息 Object 必填
└ name 收件人姓名 String 必填
└ address1 收件人地址1 String 必填
└ address2 收件人地址2 String N
└ phone1 收件人电话1 String 必填
└ phone2 收件人电话2 String N
└ email 收件人邮箱 String N
└ country 收件人国家 String 必填 国家二字码ISO 3166-1
└ province 收件人省州 String Y
└ city 收件人城市 String Y
└ town 收件人区镇 String N
└ postalCode 收件人邮编 String 必填
senderAddress 寄件人信息 Object 必填
└ name 寄件人姓名 String 必填
└ address1 寄件人地址1 String 必填
└ address2 寄件人地址2 String N
└ phone1 寄件人电话1 String 必填
└ phone2 寄件人电话2 String N
└ email 寄件人邮箱 String N
└ country 寄件人国家 String 必填 国家二字码ISO 3166-1
└ province 寄件人省州 String Y
└ city 寄件人城市 String Y
└ town 寄件人区镇 String Y
└ postalCode 寄件人邮编 String 必填
itemList 订单商品信息 Array 必填
└packageNumber 包裹号 String N 当前单据唯一包裹号,packageList有值必传
└ sku 商品编码 String 必填
└ skuName 商品名称 String N
└ length String N
└ wide String N
└ high String N
└ lengthUnit 长度单位 String N cm(厘米)、In(英寸)、m(米)
└ skuPrice 商品实付金额 BigDecimal N
└ quantity 数量 String 必填
└ price 商品金额 BigDecimal N 该商品总金额
└ currency 币种 String 必填 ISO 4217
└ customsCode 海关编码 String N
└ cnCustomsName 中文报关名 String N
└ enCustomsName 英文报关名 String N
codEnabled 是否是cod订单 Integer N 1:cod订单 0:非cod订单
codPayAmount cod订单金额 BigDecimal N
codCurrency cod金额币种 String N
packageList 多包裹列表 Array N
└packageNumber 包裹唯一号 String Y 当前单据包裹号
└packageLength 包裹长 Number N
└packageWide 包裹宽 Number N
└packageHigh 包裹高 Number N
└packageUnit 包裹单位 Number N cm(厘米)、In(英寸)、m(米),默认值:cm
└totalWeight 总重量 Number N 单位为KG
packageLength 包裹长 Double N
packageWide 包裹宽 Double N
packageHigh 包裹高 Double N
packageUnit 包裹单位 String N cm(厘米)、In(英寸)、m(米),默认值:cm
totalWeight 总重量 BigDecimal N 单位为KG
remarks 备注 String N

返回信息:

字段名 字段描述 类型 必填 备注
labelDataList List Y
└packageNumber 包裹号 String N
└customerNumber 订单号 String N
└trackingNumber 运单号 String 必填
└labelDataType 面单类型 String 必填 面单类型,支持以下类型:
1、PDF ( Base64)
2、 URL
└labelData 面单 String 必填
└addressType 地址类型 Integer 必填 地址类型1-未知2-商业3-住宅
└shippingFee 运费 Double N
└carrierCode 承运商编码 String N
└carrierServiceCode 承运商服务编码 String N

请求示例:

{ "accessId": "3215435", "method": "createOrder", "content": "{\"orderNumber\":\"CESH210204147401\",\"channelCode\":\"FedexGround\",\"recipientAddress\":{\"name\":\"Kimberly White\",\"address1\":\"TestStreet1\",\"address2\":\"\",\"phone1\":\"1889838055188\",\"phone2\":\"\",\"email\":\"\",\"country\":\"US\",\"province\":\"AR\",\"city\":\"Harrison\",\"town\":null,\"postalCode\":\"72601\"},\"senderAddress\":{\"name\":\"Tally Mercy\",\"address1\":\"TestStreet2\",\"address2\":\"\",\"phone1\":\"1231434142341\",\"phone2\":\"\",\"email\":\"\",\"country\":\"US\",\"province\":\"AR\",\"city\":\"Harrison\",\"town\":null,\"postalCode\":\"72601\"},\"skuList\":[{\"sku\":\"CL0000000000001\",\"quantity\":1,\"price\":120.0,\"currency\":\"USD\",\"customsCode\":\"CL0000000000001\",\"cnCustomsName\":\"测试商品\",\"enCustomsName\":\"TEST\"}],\"codEnabled\":0,\"codPayAmount\":120.0,\"codCurrency\":\"US\",\"packageLength\":30.0,\"packageWide\":30.0,\"packageHigh\":20.0,\"packageUnit\":\"cm\",\"totalWeight\":5.0,\"remarks\":\"测试\"}", "sign": "11fbd649164860b5571cb60dfc99baccb375f392" }

返回示例:

{
    "success": "true",
    "message": "",
    "data": {
        "labelDataList": [
            {
                "trackingNumber": "DS35841212312",
                "labelDataType": "PDF",
                "labelData": "5rWL6K+V6Z2i5Y2V5pWw5o2u",
                "addressType": 1,
                "shippingFee": 1.1,
                "carrierCode": "USPS",
                "carrierServiceCode": "Priority"
            }
        ]
    }
}

8. 查询物流追踪信息

方法名:

  • getTrackingInfo

接口参数:

字段名 字段描述 类型 必填 备注
customerNumber 千易订单号 String 必填
trackingNumber 运单号 String 必填

返回信息:

字段名 字段描述 类型 必填 备注
orderNumber 千易订单号 String 必填
carrierName 承运商名称 String 必填
trackingNumber 运单号 String 必填
status 运单状态 String 必填 CREATED(待揽收) SHIPPED(已揽收) IN_TRANSIT(运输中) OUT_FOR_DELIVERY(派送中) DELIVERED(已送达) UNDELIVERABLE(无法派送) DELAYED(延迟派送) RETURNING(退回中) RETURNED(已退回)
trackingEvents 追踪信息 Array 必填
└ eventDate 事件时间 String 必填 例:2021-01-01 10:00:00
└ eventPlace 事件地点 String 必填 例:TEST中转仓,CA
└ eventDesc 事件描述 String 必填 例:到达中转站

请求示例:

{ "accessId": "3215435", "method": "getTrackingInfo", "content": "{\"orderNumber\":\"CESH210204147401\",\"trackingNumber\":\"DS35841212312\"}", "sign": "11fbd649164860b5571cb60dfc99baccb375f392" }

返回示例:

{ "success": "true", "message": "", "data": { "orderNumber": "CESH210204147401", "carrierName": "FedEx", "trackingNumber": "DS35841212312", "status": "IN_TRANSIT", "trackingEvents": [ { "eventDate": "2021-01-01 15:00:00", "eventPlace": "CA", "eventDesc": "货件已装车,派送途中" }, { "eventDate": "2021-01-01 10:00:00", "eventPlace": "CA", "eventDesc": "托运资讯发送给FedEx" } ] } }

9. 测算费用(开发中)

方法名:

  • getEstimateCost

接口参数:

字段名 字段描述 类型 必填 备注
customerOrderNo 客户单号 String 必填
sendAddress 寄件地址 Object 必填
└contactName 联系人 String N
└companyName 公司名称 String N
└cellPhone 联系电话 String N
└countryCode 国家二字码 String N
└province 省州二字码 String N
└city 城市 String N
└postCode 发件邮编 String 必填
└address 详细地址 String N
└address2 详细地址2 String N
receivingAddress 收件地址 Object 必填
└contactName 联系人 String 必填
└companyName 公司名称 String 必填
└cellPhone 联系电话 String 必填
└countryCode 国家二字码 String 必填
└province 省州二字码 String 必填
└city 城市 String 必填
└postCode 发件邮编 String 必填
└address 详细地址 String 必填
└address2 详细地址2 String 必填
cargoReqList 货箱信息 array [object] 必填
└serialNumber 箱子编号 String 必填
└weight 货箱重量 number 必填
└length number 必填
└width number 必填
└high number 必填

返回信息:

字段名 字段描述 类型 必填 备注
code 必填
message 必填
data array[Object] 必填
└productCode 渠道代码 String 必填
└weightUnit 计费重单位 String 必填
└chargedWeight 计费重 number 必填
└totalFee 总费用 number 必填
└addressType 地址类型 1-未知 2-商业 3-住宅 number 必填
└timestamp number 必填

请求示例:

{ "loginAccount": "Test001", "timestamp": 1234567898, "customerOrderNo": "test023203232", "schemeProductCodeList": [ "FEDEX-001" ], "sendAddress": { "contactName": "ONT8", "companyName":"yamax", "cellPhone": "6262652412", "countryCode": "US", "province": "CA", "city": "MORENO VALLEY", "postCode": "92551", "address": "24300 NANDINA AVE", "address2": "24300 NANDINA AVE" }, "receivingAddress": { "contactName": "ONT8", "companyName":"yamax", "cellPhone": "6262652412", "countryCode": "US", "province": "CA", "city": "MORENO VALLEY", "postCode": "92551", "address": "24300 NANDINA AVE", "address2": "24300 NANDINA AVE" }, "cargoReqList": [{ "serialNumber": "001", "weight": "15", "length": "60", "width": "50", "high": "40" }, { "serialNumber": "002", "weight": "15", "length": "60", "width": "50", "high": "40" }, { "serialNumber": "003", "weight": "15", "length": "60", "width": "50", "high": "40" }] }

返回示例:

{ "code": 0, "message": "string", "data": [ { "productCode": "string", "weightUnit": "string", "chargedWeight": 0, "totalFee": 0, "addressType": 0 } ], "timestamp": 0 }

© Copyright QianYi Team 2025 All Rights Reserved            Updated 2025-04-29 11:32:15

results matching ""

    No results matching ""