接口介绍
上游系统调用WMS的API名称:taobao.qimen.deliveryorder.confirm
业务场景:注:上游系统告知WMS需要发货的订单信息,JYCK=一般交易出库单, HHCK=换货出库单, BFCK=补发出库单 暂不支持:QTCK=其他出库单,B2BJYCK=B2B交易出库单
表格中的支持列是指 目前下游系统是否在应用该字段,默认支持,F代表不支持,如有需求,请联系我们!
请求参数
名称 | 类型 | 必须 | 描述 | 支持 |
---|---|---|---|---|
deliveryOrder | Object | false | 发货单信息 | |
packages | Object | false | 包裹信息 | |
orderLines | orderLine[] | false | 单据列表 |
deliveryOrder参数对象
名称 | 类型 | 必须 | 描述 | 支持 |
---|---|---|---|---|
deliveryOrderCode | String(50) | true | 出库单号 | |
deliveryOrderId | String(50) | false | 仓储系统出库单号,条件必填 | |
warehouseCode | String(50) | true | 仓库编码 | |
orderType | String(50) | true | 出库单类型(JYCK=一般交易出库;HHCK=换货出库;BFCK=补发出库;QTCK=其他出库单) | |
status | String(50) | false | 出库单状态(NEW-未开始处理;ACCEPT-仓库接单;PARTDELIVERED-部分发货完成;DELIVERED-发货完成;EXCEPTION-异 常;CANCELED-取消;CLOSED-关闭;REJECT-拒单;CANCELEDFAIL-取消失败;只传英文编码) | |
outBizCode | String(50) | false | 外部业务编码,条件必填(消息ID;用于去重;ISV对于同一请求;分配一个唯一性的编码。用来保证因为网络等原因导致重复传输;请求 不会被重复处理;条件必填;条件为一单需要多次确认时) | |
confirmType | Int | false | 支持出库单多次发货(多次发货后确认时;0表示发货单最终状态确认;1表示发货单中间状态确认) | |
orderConfirmTime | String(19) | false | 订单完成时间(YYYY-MM-DD HH:MM:SS) | |
operatorCode | String(50) | false | 当前状态操作员编码 | F |
operatorName | String(50) | false | 当前状态操作员姓名 | F |
operateTime | String(19) | false | 当前状态操作时间(YYYY-MM-DD HH:MM:SS) | F |
storageFee | Double(18,2) | false | 仓储费用 | F |
invoices | invoice[] | false | 发票信息 |
invoices参数对象
名称 | 类型 | 必须 | 描述 | 支持 |
---|---|---|---|---|
header | String(200) | false | 发票抬头 | F |
amount | Double(18,2) | false | 发票金额 | F |
content | String(500) | false | 发票内容 | F |
detail | invoice[] | false | 发货详情 | F |
code | String(50) | false | 发票代码(纳税企业的标识) | |
number | String(50) | false | 发票号码(纳税企业内部的发票号) |
detail参数对象
名称 | 类型 | 必须 | 描述 | 支持 |
---|---|---|---|---|
itemName | String(50) | false | 商品名称 | F |
unit | String(50) | false | 商品单位 | F |
price | Double(18,2) | false | 商品单价 | F |
quantity | Int | false | 数量 | F |
amount | Double(18,2) | false | 金额 | F |
packages参数对象
名称 | 类型 | 必须 | 描述 | 支持 |
---|---|---|---|---|
logisticsCode | String(50) | true | 物流公司编码(SF=顺丰、EMS=标准快递、EYB=经济快件、ZJS=宅急送、YTO=圆通、ZTO=中通 (ZTO)、HTKY=百世汇通、 UC=优速、STO=申通、TTKDEX=天天快递、QFKD=全峰、FAST=快捷、POSTB=邮政小包、GTO=国通、YUNDA=韵达、JD=京东配送、DD=当当宅配、 AMAZON=亚马逊物流、OTHER=其他;只传英文编码) | |
logisticsName | String(200) | false | 物流公司名称 | F |
expressCode | String(50) | true | 运单号 | |
packageCode | Double(18,2) | false | 包裹编号 | |
length | Double(18,2) | false | 包裹长度(单位:厘米) | |
width | Double(18,2) | false | 包裹宽度(单位:厘米) | |
height | Double(18,2) | false | 包裹高度(单位:厘米) | |
theoreticalWeight | Double(18,3) | false | 包裹理论重量(单位:千克) | |
weight | Double(18,3) | false | 包裹重量(单位:千克) | |
volume | Double(18,3) | false | 包裹体积(单位:升) | |
invoiceNo | String(500) | false | 发票号 | |
packageMaterialList | packageMaterial[] | false | 包材信息 | |
items | item[] | false | 商品列表 |
packageMaterialList参数对象
名称 | 类型 | 必须 | 描述 | 支持 |
---|---|---|---|---|
type | String(50) | false | 包材型号 | |
quantity | Int | false | 包材的数量 |
items参数对象
名称 | 类型 | 必须 | 描述 | 支持 |
---|---|---|---|---|
itemCode | String(50) | true | 商品编码 | |
itemId | String(50) | false | 商品仓储系统编码 | |
quantity | Int | true | 包裹内该商品的数量 |
orderLines参数对象
名称 | 类型 | 必须 | 描述 | 支持 |
---|---|---|---|---|
orderLineNo | String(50) | false | 单据行号 | |
orderSourceCode | String(50) | false | 平台交易订单编码 | |
subSourceCode | String(50) | false | 平台交易子订单编码 | F |
itemCode | String(50) | false | 商品编码 | F |
itemId | String(50) | false | 商品仓储系统编码 | |
snList | []String | false | 商品序列号 | F |
inventoryType | String(50) | false | 库存类型(ZP=正品;CC=残次;JS=机损;XS=箱损;ZT=在途库存;默认为查所有类型的库存) | |
ownerCode | String(50) | false | 货主编码 | |
itemName | String(200) | false | 商品名称 | |
extCode | String(50) | false | 交易平台商品编码 | F |
planQty | Int | false | 应发商品数量 | |
actualQty | Int | false | 实发商品数量 | |
batchCode | String(50) | false | 批次编号 | |
productDate | String(10) | false | 生产日期(YYYY-MM-DD) | |
expireDate | String(10) | false | 过期日期(YYYY-MM-DD) | |
produceCode | String(50) | false | 生产批号 | |
qrCode | String | false | 商品的二维码(类似电子产品的SN码;用来进行商品的溯源;多个二维码之间用分号;隔开) | |
batchs | batch[] | false | 批次列表 |
batchs参数对象
名称 | 类型 | 必须 | 描述 | 支持 |
---|---|---|---|---|
batchCode | String(50) | false | 批次编号 | |
productDate | String(10) | false | 生产日期(YYYY-MM-DD) | |
expireDate | String(10) | false | 过期日期(YYYY-MM-DD) | |
produceCode | String(50) | false | 生产批号 | |
inventoryType | String(50) | false | 库存类型(ZP=正品;CC=残次;JS=机损;XS=箱损;ZT=在途库存;默认为查所有类型的库存) | |
actualQty | Int | false | 实发数量(要求batchs节点下所有的实发数量之和等于orderline中的实发数量) |
响应参数
名称 | 类型 | 必须 | 描述 |
---|---|---|---|
flag | String | true | 响应结果:success|failure |
code | String | true | 响应码 |
message | String | true | 响应信息 |
请求示例
JSON格式
{
"deliveryOrder": {
"deliveryOrderCode": "FH20190823001",
"deliveryOrderId": "STFH20190823001",
"warehouseCode": "RDC09",
"orderType": "JYCK",
"status": "DELIVERED",
"outBizCode": "1001",
"confirmType": 0,
"orderConfirmTime": "2019-08-23 13:20:20",
"operatorCode": "1001",
"operatorName": "小明",
"operateTime": "2019-08-23 13:59:20",
"storageFee": 30,
"invoices": [{
"header": "阿里巴巴",
"amount": 100,
"content": "发票内容 ",
"detail": {
"items": [{
"itemName": "商品1",
"unit": "箱",
"price": 100,
"quantity": 1,
"amount": 100
}]
},
"code": "1001",
"number": "1001"
}]
},
"packages": [{
"logisticsCode": "SF",
"logisticsName": "顺丰快递",
"expressCode": "SF20190823001",
"packageCode": "FH20190823001",
"length": 100,
"theoreticalWeight": 1,
"weight": 1,
"volume": 1,
"invoiceNo": "1001",
"packageMaterialList": [{
"type": "Type1",
"quantity": 1
}],
"items": [{
"itemCode": "t1",
"itemId": "t1",
"quantity": 1
}]
}],
"orderLines": [{
"orderLineNo": "1",
"orderSourceCode": "1001",
"subSourceCode": "1001",
"ownerCode": "Test1",
"itemCode": "t1",
"itemId": "t1",
"inventoryType": "ZP",
"itemName": "商品1 ",
"extCode": "1001",
"planQty": 1,
"actualQty": 1,
"batchCode": "20190721001",
"productDate": "2019-07-21",
"expireDate": "2022-07-21",
"produceCode": "20190721001",
"batchs": [{
"batchCode": "20190721001",
"productDate": "2019-07-21",
"expireDate": "2022-07-21",
"produceCode": "20190721001",
"inventoryType": "ZP",
"actualQty": 1
}],
"qrCode": "8000990121"
}]
}
XML格式
<?xml version="1.0" encoding="utf-8"?> <request> <deliveryOrder> <deliveryOrderCode>FH20190823001</deliveryOrderCode> <deliveryOrderId>STFH20190823001</deliveryOrderId> <warehouseCode>RDC09</warehouseCode> <orderType>JYCK</orderType> <status>DELIVERED</status> <outBizCode>1001</outBizCode> <confirmType>0</confirmType> <orderConfirmTime>2019-08-23 13:20:20</orderConfirmTime> <operatorCode>1001</operatorCode> <operatorName>小明</operatorName> <operateTime>2019-08-23 13:59:20</operateTime> <storageFee>30</storageFee> <invoices> <invoice> <header>阿里巴巴</header> <amount>100.00 </amount> <content>发票内容 </content> <detail> <items> <item> <itemName>商品1</itemName> <unit>箱</unit> <price>100.00</price> <quantity>1</quantity> <amount>100.00</amount> </item> </items> </detail> <code>1001</code> <number>1001</number> </invoice> </invoices> </deliveryOrder> <packages> <package> <logisticsCode>SF</logisticsCode> <logisticsName>顺丰快递</logisticsName> <expressCode>SF20190823001</expressCode> <packageCode>FH20190823001</packageCode> <length>100.00</length> <width>100.00</width> <height>100.00 </height> <theoreticalWeight>1.000</theoreticalWeight> <weight>1</weight> <volume>1 </volume> <invoiceNo>1001</invoiceNo> <packageMaterialList> <packageMaterial> <type>Type1</type> <quantity>1</quantity> </packageMaterial> </packageMaterialList> <items> <item> <itemCode>t1</itemCode> <itemId>t1</itemId> <quantity>1</quantity> </item> </items> </package> </packages> <orderLines> <orderLine> <orderLineNo>1</orderLineNo> <orderSourceCode>1001</orderSourceCode> <subSourceCode>1001</subSourceCode> <itemCode>t1</itemCode> <itemId>t1</itemId> <inventoryType>ZP</inventoryType> <ownerCode>Test1</ownerCode> <itemName>商品1 </itemName> <extCode>1001</extCode> <planQty>1</planQty> <actualQty>1</actualQty> <batchCode>20190721001</batchCode> <productDate>2019-07-21</productDate> <expireDate>2022-07-21</expireDate> <produceCode>20190721001</produceCode> <batchs> <batch> <batchCode>20190721001</batchCode> <productDate>2019-07-21</productDate> <expireDate>2022-07-21</expireDate> <produceCode>20190721001</produceCode> <inventoryType>ZP</inventoryType> <actualQty>1</actualQty> </batch> </batchs> <qrCode>8000990121</qrCode> </orderLine> </orderLines> </request>
响应示例
相应保文JSON格式
{ "flag":"success", "code":001, "message":"成功" }
响应报文XML格式
<?xml version="1.0" encoding="UTF-8"?> <response> <flag>success</flag> <code>001</code> <message>成功</message> </response>
错误码解释
通用
适用级别:所有接口
标识(flag) | code | 备注 | 解决方案 |
---|---|---|---|
success | 001 | 成功 | |
failure | 1001 | 签名校验错误 | 核对签名算法是否一致、核对秘钥是否一致 |
failure | 1100 | customerId校验错误 | 核对customerId是否正确 |
failure | 1200 | 缺少必填参数 | 参考API文档,检查必填参数 |
failure | 1201 | 参数校验失败 | 参考API文档,检查参数类型是否一致 |
failure | 1300 | 数据格式不合法 | 检查报文是否是合法的XML编码 |
failure | 1400 | 请求被拒绝 | 重试3次,问题依然存在联系技术支持 |
failure | 1500 | 内部服务错误 | 重试3次,问题依然存在联系技术支持 |