codecamp

微信小程序 小程序使用·addOrder

immediateDelivery.addOrder

本接口应在服务器端调用,详细说明参见服务端API

下配送单接口

请求地址

POST https://api.weixin.qq.com/cgi-bin/express/local/business/order/add?access_token=ACCESS_TOKEN

请求参数

属性类型默认值必填说明
access_tokenstring接口调用凭证
delivery_tokenstring预下单接口返回的参数,配送公司可保证在一段时间内运费不变
shopidstring商家id,由配送公司分配的appkey
shop_order_idstring唯一标识订单的 ID,由商户生成, 不超过128字节
shop_nostring商家门店编号,在配送公司登记,如果只有一个门店,美团闪送必填, 值为店铺id
delivery_signstring用配送公司提供的appSecret加密的校验串说明
delivery_idstring配送公司ID
openidstring下单用户的openid
senderObject发件人信息,顺丰同城急送必须填写,美团配送、达达、闪送,若传了shop_no的值可不填该字段
receiverObject收件人信息
cargoObject货物信息
order_infoObject订单信息
shopObject商品信息,会展示到物流通知消息中
sub_biz_idstring子商户id,区分小程序内部多个子商户

sender 的结构

属性类型默认值必填说明
namestring姓名,最长不超过256个字符
citystring城市名称,如广州市
addressstring地址(街道、小区、大厦等,用于定位)
address_detailstring地址详情(楼号、单元号、层号)
phonestring电话/手机号,最长不超过64个字符
lngnumber经度(火星坐标或百度坐标,和 coordinate_type 字段配合使用,确到小数点后6位
latnumber纬度(火星坐标或百度坐标,和 coordinate_type 字段配合使用,精确到小数点后6位)
coordinate_typenumber0坐标类型,0:火星坐标(高德,腾讯地图均采用火星坐标) 1:百度坐标

receiver 的结构

属性类型默认值必填说明
namestring姓名,最长不超过256个字符
citystring城市名称,如广州市
addressstring地址(街道、小区、大厦等,用于定位)
address_detailstring地址详情(楼号、单元号、层号)
phonestring电话/手机号,最长不超过64个字符
lngnumber经度(火星坐标或百度坐标,和 coordinate_type 字段配合使用,确到小数点后6位
latnumber纬度(火星坐标或百度坐标,和 coordinate_type 字段配合使用,精确到小数点后6位)
coordinate_typenumber0坐标类型,0:火星坐标(高德,腾讯地图均采用火星坐标) 1:百度坐标

cargo 的结构

属性类型默认值必填说明
goods_valuenumber货物价格,单位为元,精确到小数点后两位(如果小数点后位数多于两位,则四舍五入保留两位小数),范围为(0-5000]
goods_heightnumber货物高度,单位为cm,精确到小数点后两位(如果小数点后位数多于两位,则四舍五入保留两位小数),范围为(0-45]
goods_lengthnumber货物长度,单位为cm,精确到小数点后两位(如果小数点后位数多于两位,则四舍五入保留两位小数),范围为(0-65]
goods_widthnumber货物宽度,单位为cm,精确到小数点后两位(如果小数点后位数多于两位,则四舍五入保留两位小数),范围为(0-50]
goods_weightnumber货物重量,单位为kg,精确到小数点后两位(如果小数点后位数多于两位,则四舍五入保留两位小数),范围为(0-50]
goods_detailObject货物详情,最长不超过10240个字符
goods_pickup_infostring货物取货信息,用于骑手到店取货,最长不超过100个字符
goods_delivery_infostring货物交付信息,最长不超过100个字符
cargo_first_classstring品类一级类目, 详见品类表
cargo_second_classstring品类二级类目

goods_detail 的结构

属性类型默认值必填说明
goodsArray.<Object>货物列表

goods 的结构

属性类型默认值必填说明
good_countnumber货物数量
good_namestring货品名称
good_pricenumber货品单价,精确到小数点后两位(如果小数点后位数多于两位,则四舍五入保留两位小数)
good_unitstring货品单位,最长不超过20个字符

order_info 的结构

属性类型默认值必填说明
delivery_service_codestring配送服务代码 不同配送公司自定义, 顺丰和达达不填
order_typenumber0订单类型, 0: 即时单 1 预约单,如预约单,需要设置expected_delivery_time或expected_finish_time或expected_pick_time
expected_delivery_timenumber0期望派单时间(达达支持,表示达达系统调度时间, 到那个时间才会有状态更新的回调通知),unix-timestamp, 比如1586342180
expected_finish_timenumber0期望送达时间(美团、顺丰同城急送支持),unix-timestamp, 比如1586342180
expected_pick_timenumber0期望取件时间(闪送、顺丰同城急送支持,闪送需要设置两个小时后的时间,顺丰同城急送只需传expected_finish_time或expected_pick_time其中之一即可,同时都传则以expected_finish_time为准),unix-timestamp, 比如1586342180
poi_seqstring门店订单流水号,建议提供,方便骑手门店取货,最长不超过32个字符
notestring备注,最长不超过200个字符
order_timenumber用户下单付款时间, 顺丰必填, 比如1555220757
is_insurednumber0是否保价,0,非保价,1.保价
declared_valuenumber保价金额,单位为元,精确到分
tipsnumber小费,单位为元, 下单一般不加小费
is_direct_deliverynumber是否选择直拿直送(0:不需要;1:需要。选择直拿直送后,同一时间骑手只能配送此订单至完成,配送费用也相应高一些,闪送必须选1,达达可选0或1,其余配送公司不支持直拿直送)
cash_on_deliverynumber骑手应付金额,单位为元,精确到分
cash_on_pickupnumber骑手应收金额,单位为元,精确到分
rider_pick_methodnumber物流流向,1:从门店取件送至用户;2:从用户取件送至门店
is_finish_code_needednumber收货码(0:不需要;1:需要。收货码的作用是:骑手必须输入收货码才能完成订单妥投)
is_pickup_code_needednumber取货码(0:不需要;1:需要。取货码的作用是:骑手必须输入取货码才能从商家取货)

shop 的结构

属性类型默认值必填说明
wxa_pathstring商家小程序的路径,建议为订单页面
img_urlstring商品缩略图 url
goods_namestring商品名称
goods_countnumber商品数量
wxa_appidstring若结算方式为:第三方向配送公司统一结算,商户后续和第三方结算,则该参数必填;在该结算模式下,第三方用自己的开发小程序替授权商户发起下单,并将授权小程序的appid给平台,后续配送通知中可回流授权商户小程序。

返回值

Object

属性类型说明
errcodenumber错误码, 当errcode==0或者不存在还需要看resultcode
errmsgstring错误描述
resultcodenumber运力返回的错误码
resultmsgstring运力返回的错误描述
feenumber实际运费(单位:元),运费减去优惠券费用
deliverfeenumber运费(单位:元)
couponfeenumber优惠券费用(单位:元)
tipsnumber小费(单位:元)
insurancefeenumber保价费(单位:元)
distancenumber配送距离(整数单位:米)
waybill_idstring配送单号
order_statusnumber配送状态
finish_codenumber收货码
pickup_codenumber取货码
dispatch_durationnumber预计骑手接单时间,单位秒,比如5分钟,就填300, 无法预计填0

使用场景

商家可调用本接口向配送公司请求下配送单,配送公司会返回这一单的配送单号、配送费、预计骑手接单时间等信息。如遇下单错误,请先确认一下编码方式,python建议 json.dumps(b, ensure_ascii=False),php建议 json_encode($arr, JSON_UNESCAPED_UNICODE) 可预约时间:达达:72小时内,闪送2小时以后,48小时以内

请求示例

{
   "cargo": {
       "cargo_first_class": "美食夜宵",
       "cargo_second_class": "零食小吃",
       "goods_detail": {
           "goods": [
               {
                   "good_count": 1,
                   "good_name": "水果",
                   "good_price": 10,
                   "good_unit": "元"
               },
               {
                   "good_count": 2,
                   "good_name": "蔬菜",
                   "good_price": 20,
                   "good_unit": "元"
               }
           ]
       },
       "goods_height": 1,
       "goods_length": 3,
       "goods_value": 5,
       "goods_weight": 1,
       "goods_width": 2
   },
   "delivery_id": "SFTC",
   "delivery_sign": "01234567890123456789",
   "openid": "oABC123456",
   "order_info": {
       "delivery_service_code": "",
       "expected_delivery_time": 0,
       "is_direct_delivery": 0,
       "is_finish_code_needed": 1,
       "is_insured": 0,
       "is_pickup_code_needed": 1,
       "note": "test_note",
       "order_time": 1555220757,
       "order_type": 0,
       "poi_seq": "1111",
       "tips": 0
   },
   "receiver": {
       "address": "xxx地铁站",
       "address_detail": "2号楼202",
       "city": "北京市",
       "coordinate_type": 0,
       "lat": 40.1529600000,
       "lng": 116.5060300000,
       "name": "老王",
       "phone": "18512345678"
   },
   "sender": {
       "address": "xx大厦",
       "address_detail": "1号楼101",
       "city": "北京市",
       "coordinate_type": 0,
       "lat": 40.4486120000,
       "lng": 116.3830750000,
       "name": "刘一",
       "phone": "13712345678"
   },
   "shop": {
       "goods_count": 2,
       "goods_name": "宝贝",
       "img_url": "https://mmbiz.qpic.cn/mmbiz_png/xxxxxxxxx/0?wx_fmt=png",
       "wxa_path": "/page/index/index"
   },
   "shop_no": "12345678",
   "sub_biz_id": "sub_biz_id_1",
   "shop_order_id": "SFTC_001",
   "shopid": "122222222",
   "delivery_token": "xxxxxxxx"
}

返回示例

下单成功

{
  "resultcode": 0,
  "resultmsg": "ok",
  "fee": 10,
  "deliverfee": 10,
  "couponfee": 0,
  "tips": 0,
  "insurancfee": 0,
  "distance": 1000,
  "waybill_id": "123456789",
  "order_status": 101,
  "finish_code": 1024,
  "pickup_code": 2048,
  "dispatch_duration": 300
}

下单失败

{
  "resultcode": 1010,
  "resultmsg": "收件人信息不正确"
}


微信小程序 小程序使用·abnormalConfirm
微信小程序 小程序使用·addTip
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

微信小程序 指南

目录结构

开放能力

微信小程序 调试

微信小程序 实时日志

微信小程序 小程序测速

微信小程序 基础组件

微信小程序 API

媒体

界面

微信小程序API 绘图

微信小程序 服务端

接口调用凭证

统一服务消息

微信小程序 服务市场

微信小程序 生物认证

微信小程序 云开发

服务端

微信小程序云开发服务端API 数据库

SDK文档

微信小程序 扩展能力

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }