基础 qianmi.cloudshop.d2p.logistics.send(云订货(D2P)订单在线发货处理(支持部分发货))

云订货(D2P)订单物流发货专用接口(D2P订单专用,支持部分发货)
 用户授权类型
 公共参数
请求地址:
环境 HTTP请求地址 HTTPS请求地址
正式环境 http://gw.api.qianmi.com/api https://api.qianmi.com/api
系统级请求参数:
名称 类型 是否必须 描述
methodString 必须 API接口名称
access_tokenString 可选 用户登录授权以后,QMOP颁发给应用的授权信息,详细介绍请点击这里,当前API的用户授权类型标明:"需要授权",则此参数必传,"不需要授权",则此参数不需要传。
formatString 必须 指定响应格式,目前支持格式为json
appKeyString 必须 分配给应用的AppKey
vString 必须 API协议版本,当前可选值:1.1
signString 必须 API输入参数签名结果
timestampString 必须 请求时间戳,时区为GMT+8(北京时间),格式:"yyyy-MM-dd HH:mm:ss",例如"2012-12-20 10:20:35",开放平台允许客户端请求的最大时间误差为10分钟
 业务参数
名称 类型 是否必须 示例值 默认值 描述
pack_idString 特殊可选 201510311710018752 包裹单编号,可以先调用qianmi.cloudshop.d2p.trade.pack生成包裹单。然后调用D2P此发货接口
该参数和发货包裹清单(pack_items)任选其一,不可同时为空,
pack_itemsString 特殊可选 O20151022161017028:2;O20151103131017867:4 发货包裹清单,包含商品单编号和商品发货数量,格式:oid:num;oid:num,包裹编号;如果已经生成了包裹单,发货时填写pack_id即可
发货数量需为大于0的整数,该参数和包裹单号(pack_id)不可同时为空
company_idString 特殊可选 23123123101 admin卖家物流公司编号
ship_type_id为express时必填
deliver_timeString 可选 2015-11-11 09:10:10 发货时间,格式yyyy-MM-dd HH:mm:ss
post_feeString 可选 12.00 物流费用,单位 元,整数部分不超过999999,精确到2位小数
ship_type_idString 必须 express或自定义编号,如:100019173 配送方式 self:上门自提,express:快递,或自定义编号,参见具体订单中该字段内容
out_sidString 特殊可选 213123242 运单号,具体一个物流公司真实的运单号码
ship_type_id为express时必填
tidString 必须 T20151022161012217 订单编号
 请求示例
OpenClient client = new DefaultOpenClient(url, appKey, appSecret);
D2pLogisticsSendRequest req = new D2pLogisticsSendRequest();
req.setPackId("201511051310019371");
req.setPackItems("O20151105171018368:1;O20151105171018368:2");
req.setCompanyId("100001175");
req.setTid("T20151105171013372");
req.setPostFee("1");
req.setShipTypeId("express");
req.setOutSid("21212121");
req.setCompanyName("快递");
req.setDeliverTime("2015-11-10 09:09:09");
D2pLogisticsSendResponse response = client.execute(req, accessToken);
$client = new OpenClient;
$client->appKey = appKey;
$client->appSecret = appSecret;
$req = new D2pLogisticsSendRequest;
$req->setPackId("201511051310019371");
$req->setPackItems("O20151105171018368:1;O20151105171018368:2");
$req->setCompanyId("100001175");
$req->setTid("T20151105171013372");
$req->setPostFee("1");
$req->setShipTypeId("express");
$req->setOutSid("21212121");
$req->setCompanyName("快递");
$req->setDeliverTime("2015-11-10 09:09:09");
$res = $client->execute($req, $accessToken);
IOpenClient client = new DefaultOpenClient(url, appKey, appSecret);
D2pLogisticsSendRequest req = new D2pLogisticsSendRequest();
req.PackId = "201511051310019371";
req.PackItems = "O20151105171018368:1;O20151105171018368:2";
req.CompanyId = "100001175";
req.Tid = "T20151105171013372";
req.PostFee = "1";
req.ShipTypeId = "express";
req.OutSid = "21212121";
req.CompanyName = "快递";
req.DeliverTime = "2015-11-10 09:09:09";
D2pLogisticsSendResponse response = client.Execute(req, accessToken);
 响应参数
名称 类型 示例值 描述
shipping Shipping 返回发货是否成功 is_success
 响应示例

JSON数据格式:

 异常示例

JSON数据格式:

 {
    "errorToken": "@@$-ERROR_TOKEN$-@@",
    "code": "33",
    "message": "非法的参数",
    "solution": "请查看根据服务接口对参数格式的要求",
    "subErrors": {
      "subError": [{
          "code": "isv.invalid-paramete:XXXX",
          "message": "参数XXXX无效,格式不对、非法值、越界等"
        }]
  }
 错误码
错误码 错误描述 解决方案
isv.qianmi-cloudshop-d2p-logistics-send-service-error:01063016包裹编号和发货包裹清单同时为空传入pack_id或者pack_items
isv.qianmi-cloudshop-d2p-logistics-send-service-error:01063017发货时间早于当前时间发货时间晚于当前时间
isv.qianmi-cloudshop-d2p-logistics-send-service-error:01063004订单不存在或者商品单不存在正确传入tid或者pack_items
isv.qianmi-cloudshop-d2p-logistics-send-service-error:01063005订单已发货或者该商品已发货或者该商品发货数量超出数量传入未发货订单号和未发货商品单号,且发货商品数量要少于未发货的数量
isv.qianmi-cloudshop-d2p-logistics-send-service-error:01069991没有操作权限确认是否有操作权限
isv.qianmi-cloudshop-d2p-logistics-send-service-error:01069001本次发货数量不能大于未发货数量检查商品发货数量是否小于等于订单商品可发货数量
isv.qianmi-cloudshop-d2p-logistics-send-service-error:01069003特殊可选参数异常,发货方式为非自提时,物流公司编号和运单号必填确认入参是否正确
 FAQ