返回订单API

  • 功能描述:商家可以将“正在配货”或者“等待发货”的订单修改为“已发货”,商家可以批量处理多张发货订单。本接口支持自发订单(包括COD和非COD订单),暂时不支持当当代发订单(包括COD和非COD订单)。对于“买A赠多”促销,需要处理主商品和赠品每次。

    a)如果订单当前状态是“正在配货”,则实际发货商品数量,以商家在本接口录入的商品数量为准

    b)如果订单当前状态是“等待发货”,则实际发货商品数量,以商家在后台页面操作“标记配货完成”时录入的商品数量为准

    c)参与了“多买多折”促销的商品,只能全部发货。

    d) 不支持网络课程订单发货,只能一次发货,不支持拆分包裹发货,品信息缺少则按照缺货处理

    支持最大订单量:50

    支持的数据格式:XML

    HTTP请求方式:POST

    物流公司名称代码匹配表:


    物流公司名称 物流公司编码 物流公司电话
    中通快递 ZTO 400-827-0270
    韵达快递 YUNDA 400-821-6789
    申通快递 STO 400-889-5543
    圆通快递 YTO 95554
    顺丰快递 SF 400-811-1111
    全峰快递 QFKD 400-100-0001
    百世汇通快递 BEST 400-956-5656
    天天快递 TTKDEX 4001-888-888
    宅急送快递 ZJS 400-6789-000
    国通快递 GTO 400-111-1123
    龙邦快递 LB 021-59218889
    安能快递 ANE56 400-104-0088
    优速快递 UC 400-111-1119
    EMS EMS 11185
    快捷快递 FAST 400-830-4888
    中铁物流 CRE 400-000-5566
     德邦物流
    DBWL
    400-830-5555

    YZ
    11183
    跨越速运
    KYSY
    4008-098-098
    极兔速递

    JT 

    400-820-1666
  • 接口调用时传递的v为大版本号,如对于1.1,调用时为v=1.0

    时间:2017-6-13

    版本:v3.0

    变更说明:添加对全发的支持;物流公司编码必填;3c产品必填sn编码

  • 系统级输入参数:

    请参考系统级输入参数

    应用级输入参数:


    变量名称 变量命名 变量类型 是否必填 示例 说明

    发货XML文件

    sendGoods

    file

    <input type=file..

    发货的XML文件,具体内容请参考“发货XML文件格式说明”

     

    发货XML文件格式说明:


  • 发货XML文件示例:

    <?xml version="1.0" encoding="GBK"?>
    <request>
        <functionID>dangdang.order.goods.send</functionID>
        <time>2009-03-20 15:10:50</time>
        <OrdersList>
            <OrderInfo>
                <orderID>1719544796</orderID>
                <logisticsName>申通快递</logisticsName>
                <logisticsTel>010-45675233</logisticsTel>
                <logisticsOrderID>3784938759</logisticsOrderID>
                <SendGoodsList>
                    <ItemInfo>
                        <itemID>1719544796</itemID>
                        <sendGoodsCount>1</sendGoodsCount>
                        <belongProductsPromoID>< /belongProductsPromoID>
                        <productItemId>139123712371927</productItemId>
                    </ItemInfo>
                    <ItemInfo>
                        <itemID>1719544796</itemID>
                        <sendGoodsCount>2</sendGoodsCount>
                        <belongProductsPromoID >225</belongProductsPromoID>
                        <productItemId>139123712371927</productItemId>
                    </ItemInfo>
                    <ItemInfo>
                    ......
                    </ItemInfo>
                </SendGoodsList>
            </OrderInfo>
            <OrderInfo>
            ......
            </OrderInfo>
     ......
        </OrdersList>
    </request>

  • 商家接收到的XML文件格式说明:


  • 商家接收到的XML文件实例:

    实例1:

    <?xml version="1.0" encoding="utf-8"?>
    <response>
        <functionID>dangdang.order.goods.send</functionID>
        <time>2009-03-21 15:10:50</time>
        <Result>
            <operCode>100</operCode>
            <operation>没有上传xml文件</operation>
        </Result>
    </response>



    实例2:

     <?xml version="1.0" encoding="utf-8"?>
    <response>
        <functionID>dangdang.order.goods.send</functionID>
        <time>2009-03-21 15:10:50</time>
        <Result>
            <OrdersList>
                <OrderInfo>
                    <orderID>1111</orderID>
                    <orderOperCode>0</orderOperCode>
                    <orderOperation>发货成功</orderOperation>
                </OrderInfo>
                <OrderInfo>
                    <orderID>1112</orderID>
                    <orderOperCode>3</orderOperCode>
                    <orderOperation>发货数量全为0</orderOperation>
                </OrderInfo>
            </OrdersList>
        </Result>
    </response>



  • java版

    SdkClient sdkClient= new SdkClient(appKey, appSecret, session, version) ;
    OrderGoodsSendRequest sendGoodsRequest=new OrderGoodsSendRequest();
    sendGoodsRequest.setSendGoodsFile(new FileItem(new File(path)));
    OrderGoodsSendResponse result=sdkClient.excute(sendGoodsRequest);
    System.out.println(result.toString());


    php版

    $sdkClient = new DDHttpClient(appkey,appSecret,session);
    $orderGoodsSendRequest = new OrderGoodsSendRequest();
    $orderGoodsSendRequest->setSendGoods($xmlFile);
    $sdkResponse = $sdkClient->execute($orderGoodsSendRequest);