文档中心 > API文档

taobao.logistics.online.send (在线订单发货处理(支持货到付款))

用户调用该接口可实现在线订单发货(支持货到付款) 调用该接口实现在线下单发货,有两种情况:
如果不输入运单号的情况:交易状态不会改变,需要调用taobao.logistics.online.confirm确认发货后交易状态才会变成卖家已发货。
如果输入运单号的情况发货:交易订单状态会直接变成卖家已发货 。

公共参数

请求参数

名称 类型 是否必须 示例值 更多限制 描述
sub_tid Number [] 可选 1,2,3
  • 最大列表长度:20
  • 需要拆单发货的子订单集合,针对的是一笔交易下有多个子订单需要分开发货的场景;1次可传人多个子订单号,子订单间用逗号隔开;为空表示不做拆单发货。
    tid Number 必须 123456 淘宝交易ID
    is_split Number 可选 0 表明是否是拆单,默认值0,1表示拆单
    out_sid String 可选 123456789 运单号.具体一个物流公司的真实运单号码。淘宝官方物流会校验,请谨慎传入;
    company_code String 必须 POST 物流公司代码.如"POST"就代表中国邮政,"ZJS"就代表宅急送.调用 taobao.logistics.companies.get 获取。
    sender_id Number 可选 123456 卖家联系人地址库ID,可以通过taobao.logistics.address.search接口查询到地址库ID。如果为空,取的卖家的默认取货地址
    cancel_id Number 可选 123456 卖家联系人地址库ID,可以通过taobao.logistics.address.search接口查询到地址库ID。 如果为空,取的卖家的默认退货地址
    feature String 可选 identCode=tid:aaa,bbb;machineCode=tid2:aaa;retailStoreId=12345;retailStoreType=STORE feature参数格式 范例: identCode=tid1:识别码1,识别码2|tid2:识别码3;machineCode=tid3:3C机器号A,3C机器号B identCode为识别码的KEY,machineCode为3C的KEY,多个key之间用”;”分隔 “tid1:识别码1,识别码2|tid2:识别码3”为identCode对应的value。 "|"不同商品间的分隔符。 例1商品和2商品,之间就用"|"分开。 TID就是商品代表的子订单号,对应taobao.trade.fullinfo.get 接口获得的oid字段。(通过OID可以唯一定位到当前商品上) ":"TID和具体传入参数间的分隔符。冒号前表示TID,之后代表该商品的参数属性。 "," 属性间分隔符。(对应商品数量,当存在一个商品的数量超过1个时,用逗号分开)。 具体:当订单中A商品的数量为2个,其中手机串号分别为"12345","67890"。 参数格式:identCode=TIDA:12345,67890。 TIDA对应了A宝贝,冒号后用逗号分隔的"12345","67890".说明本订单A宝贝的数量为2,值分别为"12345","67890"。 当存在"|"时,就说明订单中存在多个商品,商品间用"|"分隔了开来。|"之后的内容含义同上。retailStoreId=12345,发货门店ID或仓信息。retailStoreType=STORE: 发货门店类别,STORE表示门店,WAREHOUSE表示电商仓。对于全渠道订单回传的商家,retailStoreId和retailStoreType字段为必填字段。
    seller_ip String 可选 192.168.1.10 商家的IP地址

    响应参数

    名称 类型 示例值 描述
    shipping Shipping de
    • └ is_success
    • Boolean
    • true
    • 返回发货是否成功。

    请求示例

    • JAVA
    • .NET
    • PHP
    • CURL
    • Python
    • C/C++
    • NodeJS
    TaobaoClient client = new DefaultTaobaoClient(url, appkey, secret);
    LogisticsOnlineSendRequest req = new LogisticsOnlineSendRequest();
    req.setSubTid("1,2,3");
    req.setTid(123456L);
    req.setIsSplit(0L);
    req.setOutSid("123456789");
    req.setCompanyCode("POST");
    req.setSenderId(123456L);
    req.setCancelId(123456L);
    req.setFeature("identCode=tid:aaa,bbb;machineCode=tid2:aaa;retailStoreId=12345;retailStoreType=STORE");
    req.setSellerIp("192.168.1.10");
    LogisticsOnlineSendResponse rsp = client.execute(req, sessionKey);
    System.out.println(rsp.getBody());

    响应示例

    • XML示例
    • JSON示例
    <logistics_online_send_response>
        <shipping>
            <is_success>true</is_success>
        </shipping>
    </logistics_online_send_response>

    异常示例

    • XML示例
    • JSON示例
    <error_response>
        <code>50</code>
        <msg>Remote service error</msg>
        <sub_code>isv.invalid-parameter</sub_code>
        <sub_msg>非法参数</sub_msg>
    </error_response>

    错误码解释

    错误码 错误描述 解决方案
    isv.logistics-online-service-error:B01 物流订单不存在 调用发货接口前要先判断tid是不是属于自身的tid,并且需要判断tid是否存在,最好用搜索出来的tid列表里面的数据传入。
    isv.logistics-online-service-error:B02 没有权限进行发货 在发货前要判断好订单的状态,只有交易存在、属于自己、并且是等待卖家发货的才能发,其余的状态无需调用这个接口。
    isv.logistics-online-service-error:B04 订单状态不对 1.遇到isv开头的错误不要在程序重试; 2.建议在发货前先调用交易API如:taobao.trade.fullinfo.get来查询这个订单的状态,根据订单状态再做相应的处理,避免状态为已发货订单进行重复发货
    isv.logistics-online-service-error:B56 没有选择物流公司 在前端对是否选择物流公司(company_code)做好校验,没有选择company_code的不允许其发货。
    isv.logistics-online-service-error:B59 运单号为空 在前端对是否填写运单号(out_sid)进行校验,没有传入out_sid不允许其发货。
    isv.logistics-online-service-error:B60 运单号不符合规则或已经被使用 每个物流公司都有特定的运单号规则,参照该运单号规则在前端对运单号是否符合对应的规则进行校验,不符合规则的不允许其发货。
    isv.invalid-parameter 参数无效,格式不对、非法值、越界等 请对照参数表
    isv.logistics-online-service-error:B101 地址库不存在或该地址库不属于当前用户 可以通过此接口查询地址库taobao.logistics.address.search
    isv.logistics-online-service-error:P01 参数为空 必填参数为空,如tid为空,请确保传入的必选参数不为空,请对照参数表
    isv.logistics-online-service-error:B27 已生成发货单 已经生成发货单的订单不能发货
    isv.logistics-online-service-error:B52 物流公司不存在或被禁用 通过taobao.logistics.companies.get查询支持自已在线下单或货到款的物流公司
    isv.logistics-online-service-error:B03 物流订单来源错误 非c2c的订单不支持款到付款发货
    isv.logistics-online-service-error:p16 未补签货到付款补充协议 请与客服联系,补签补充协议!
    isv.logistics-online-service-error:B86 该物流公司未开通COD服务 该物流公司不支持货到付款,通过taobao.logistics.partners.get查询支持货到付款的物流公司
    isv.logistics-online-service-error:B79 该物流公司揽收或派送范围不支持 可以通过此接口taobao.logistics.partners.get,查询支持揽收或派送范围的物流公司
    isp.logistics-online-service-error:S01 系统异常 1、先检查是参数是否正确。如company_code传人了运单号、订单号(tid)和sessionkey 对应的不是同一个卖家等 。2、若参数无误,报错后可稍等后重试1次 。
    isv.logistics-online-service-error:B105 该物流公司不支持在线下单 该物流公司不支持在线下单,通过taobao.logistics.companies.get查询支持在线下单的物流公司
    isv.logistics-online-service-error:B55 该交易状态不正确,不能发货 建议在发货前先调用交易API如:taobao.trade.fullinfo.get来查询这个订单的状态,根据订单状态再做相应的处理,避免状态为已发货订单进行重复发货
    isv.logistics-online-service-error:P25 top 接口不允许对拆单订单操作 top 接口不允许对拆单订单进行操作
    isv.logistics-online-service-error:F 运单号被识别为假,无法发货 请使用正确的运单号
    isv.logistics-online-service-error:F01 您填写的运单号已经过期无效,不允许用此物流运单号发货 请使用正确的运单号
    isv.logistics-online-service-error:F02 您此笔交易订单付款时间晚于快递公司揽收时间,此物流运单号不能使用 请使用正确的运单号
    isv.logistics-online-service-error:F03 您此笔交易订单收货人地址信息与快递公司签收地址信息不匹配,此物流运单号不能使用 请使用正确的运单号
    isv.logistics-online-service-error:F04 运单号已被使用,当前订单非真, 此物流单号不能使用 请使用正确的运单号
    isv.logistics-online-service-error:F05 您填写的运单号已被使用,不允许用此物流运单号发货 请使用正确的运单号
    isv.logistics-online-service-error:F06 您的收货人信息与发货人信息一致,不允许发货 请确认信息
    isv.logistics-online-service-error:CD22 订单已拆单,必须传入子交易号列表 这个是已经被拆单的,操作这个订单发货时,必须带有子订单列表
    isv.logistics-online-service-error:CD23 订单已拆单,请走拆单逻辑 订单已拆单,请走拆单逻辑
    isv.logistics-online-service-error:CD24 当前操作的订单是拆单订单,拆单标记和子订单列表都必须传递 当前操作的订单是拆单订单,拆单标记isSplit=1和subtid子订单列表都必须传递
    isv.logistics-online-service-error:CD25 拆单标记 和子订单列表两者必须都填或者都不填 拆单标记 和子订单列表两者必须都填或者都不填
    isv.logistics-online-service-error:CD26 子订单交易号为空 当传递isSplit 为1后,必须传递该订单下的子订单交易号。
    isv.logistics-online-service-error:CD27 订单已经被拆单,isSplit 必须是1 订单已经被拆单,isSplit 必须是1
    isv.logistics-online-service-error:CD28 接入拆单异常 拆单逻辑未知错误,请确认发货参数
    isv.logistics-online-service-error:P03 未找到对应子订单的物流包裹 未找到对应子订单的物流包裹
    isv.logistics-online-service-error:B05 未查到物流订单 未查到物流订单,请确认参数后重试
    isv.logistics-online-service-error:CD29 当前操作的订单不是拆单订单,拆单标记和子订单列表都不能带入 当前操作的订单不是拆单订单,拆单标记issplit=1和子订单列表subtid都不能带入
    isv.logistics-online-service-error:B06 子订单号没有精确匹配 传入的子订单交易号必须完全匹配物流包裹中的子订单
    isv.logistics-online-service-error:CD30 输入的用户Id或交易订单号不正确,未查到交易订单 请输入正确的用户ID和交易订单号
    isv.logistics-online-service-error:CD31 非拆单订单的物流订单数不等于1 请联系淘宝物流开发
    isv.logistics-offline-service-error:B98 发货类型不匹配。如虚拟商品订单、家装类订单(仅能通过卖家后台页面发货),如使用该接口发货,会出现这个报错。 报错后禁止重试,并提示用户通过淘宝后台页面操作发货。
    isv.logistics-offline-service-error:P22 feature 参数格式不对。 对照文档的示例检查 feature 参数 ,按文档说明确认正确后重试。
    isv.logistics-offline-service-error:P38 拆单校验未通过。如对一个子订单进行拆单发货、或拆单发货时sub_tid、is_split其中一个没传等 报错后禁止重试,确认入参正确后重试。
    isv.invalid-parameter:seller_nick:P17 非法的nick,无权查询 入参时tid 和sessionkey 对应的卖家nick 不是同一个导致, 确认一致后重试
    isv.logistics-offline-service-error:B150 发货异常,请稍等后重试 发货异常,请稍等后重试
    B60 运单号不符合规则或已经被使用 每个物流公司都有特定的运单号规则,参照该运单号规则在前端对运单号是否符合对应的规则进行校验,不符合规则的不允许其发货。
    B150 发货异常,请稍等后重试 发货异常,请稍等后重试,如果一直失败请联系平台技术人员
    CD25 拆单标记 和 子订单列表两者必须都填或者都不填 拆单标记 和 子订单列表两者必须都填或者都不填
    B05 未查到物流订单 未查到物流订单,请确认参数后重试
    B01 物流订单不存在 调用发货接口前要先判断tid是不是属于自身的tid,并且需要判断tid是否存在,最好用搜索出来的tid列表里面的数据传入。
    CD69 该物流公司不支持这种服务 确认物流公司是否支持
    CD08 无效的联系人 无效的联系人,请检查发货人相关信息,如手机号码,电话等
    CD06 推荐物流的订单状态为关闭状态,无需发货处理 推荐物流的订单状态为关闭状态,无需发货处理
    CD68 该物流单号为无法识别或快递公司未同平台对接 该物流单号为无法识别或快递公司未同平台对接
    CD04 没有权限进行发货 没有权限进行发货
    CD17 拆单校验未通过 拆单校验未通过
    CD01 系统异常,请重试 如果长时间一直出现,请联系平台技术,并提供api请求的requestId
    CONSIGN_FUZZY_QUERY_SUB_ORDER_MATCH_NO 物流订单子交易ID匹配不上,请检查子交易ID传的是否正确 物流订单子交易ID匹配不上,请检查子交易ID传的是否正确
    CD24 订单空校验,全量订单的订单商品列表为空 订单空校验,全量订单的订单商品列表为空
    CD28 收货人市信息不能为空 收货人市信息不能为空

    API工具

    如何获得此API

    FAQ

    返回
    顶部