微信小程序开发文档 微信小程序 运力方使用·onOrderPreAdd

2024-02-25 开发教程 微信小程序开发文档 匿名 4

immediateDelivery.onOrderPreAdd

本文档描述服务器端接收的消息或事件,详细说明参见消息推送。

并非真正发单,用来验证是否配送公司是否可以接单,并在成功时返回时效、计价等信息,也可用来验证地址以及时间是否在配送范围内。注意:预下单和下单时候由于时间差或者配送公司策略问题,返回的运费可能不一致,如果配送公司返回delivery_token,商家真正下单时候带上delivery_token,配送公司需保证在这一段时间内运费不变

消息参数

Object

属性类型说明
ToUserNamestring快递公司小程序 UserName
FromUserNamestring微信团队的 OpenID (固定值)
CreateTimenumber事件时间,Unix时间戳
MsgTypestring消息类型,固定为 event
Eventstring事件类型,固定为 transport_precreate_order,不区分大小写
shopidstring商家id, 由配送公司分配的appkey
shop_nostring商家门店编号, 在配送公司侧登记
shop_order_idstring唯一标识订单的 ID,由商户生成
delivery_signstring用配送公司侧提供的appSecret加密的校验串
senderObject发件人信息,如果配送公司能从shopid+shop_no对应到门店地址,则不需要填写,否则需填写
receiverObject收件人信息
cargoObject货物信息
order_infoObject订单信息

sender 的结构

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

receiver 的结构

属性类型说明
namestring姓名,最长不超过256个字符
citystring城市名称,如广州市
addressstring地址(街道、小区、大厦等,用于定位)
address_detailstring地址详情(楼号、单元号、层号)
phonestring电话/手机号,最长不超过64个字符
lngnumber经度(火星坐标或百度坐标,和 coordinate_type 字段配合使用,确到小数点后6位
latnumber纬度(火星坐标或百度坐标,和 coordinate_type 字段配合使用,精确到小数点后6位)
coordinate_typenumber坐标类型,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_typenumber订单类型, 0: 即时单 1 预约单,如预约单,需要设置expected_delivery_time或expected_finish_time或expected_pick_time
expected_delivery_timenumber期望派单时间(美团、达达支持,美团表示商家发单时间,达达表示系统调度时间, 到那个时间才会有状态更新的回调通知),unix-timestamp, 比如1586342180
expected_finish_timenumber期望送达时间(顺丰同城急送支持),unix-timestamp, 比如1586342180
expected_pick_timenumber期望取件时间(闪送、顺丰同城急送支持,闪送需要设置两个小时后的时间,顺丰同城急送只需传expected_finish_time或expected_pick_time其中之一即可,同时都传则以expected_finish_time为准),unix-timestamp, 比如1586342180
poi_seqstring门店订单流水号,建议提供,方便骑手门店取货,最长不超过32个字符
notestring备注,最长不超过200个字符
order_timenumber用户下单付款时间, 比如1555220757
is_insurednumber是否保价,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:需要。取货码的作用是:骑手必须输入取货码才能从商家取货)

消息返回

属性类型默认值必填说明
ToUserNamestring原样返回请求中的 FromUserName
FromUserNamestring快递公司小程序 UserName
CreateTimenumber事件时间,Unix时间戳
MsgTypestring消息类型,固定为 event
Eventstring事件类型,固定为 transport_precreate_order,不区分大小写
resultcodenumber错误码
resultmsgstring错误描述
feenumber实际运费(单位:元),运费减去优惠券费用
deliverfeenumber运费(单位:元)
couponfeenumber优惠券费用(单位:元)
tipsnumber小费(单位:元)
insurancefeenumber保价费(单位:元)
distancenumber配送距离(单位:米)
dispatch_durationnumber预计骑手接单时间,单位秒,比如5分钟,就填300, 无法预计填0
delivery_tokenstring配送公司可以返回此字段,当用户下单时候带上这个字段,配送公司可保证在一段时间内运费不变