# immediateDelivery.onOrderQuery
本文档描述服务器端接收的消息或事件,详细说明参见消息推送。
查询订单状态
# 消息参数
# Object
| 属性 | 类型 | 说明 |
|---|---|---|
| ToUserName | string | 快递公司小程序 UserName |
| FromUserName | string | 微信团队的 OpenID (固定值) |
| CreateTime | number | 事件时间,Unix时间戳 |
| MsgType | string | 消息类型,固定为 event |
| Event | string | 事件类型,固定为 transport_query_order_status,不区分大小写 |
| shopid | string | 商家id, 由配送公司分配,可以是dev_id或者appkey |
| shop_order_id | string | 唯一标识订单的 ID,由商户生成 |
| shop_no | string | 商家门店编号, 在配送公司侧登记 |
| waybill_id | string | 配送单id |
| delivery_sign | string | 用配送公司侧提供的appSecret加密的校验串 |
# 消息返回
| 属性 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
| ToUserName | string | 是 | 原样返回请求中的 FromUserName | |
| FromUserName | string | 是 | 快递公司小程序 UserName | |
| CreateTime | number | 是 | 事件时间,Unix时间戳 | |
| MsgType | string | 是 | 消息类型,固定为 event | |
| Event | string | 是 | 事件类型,固定为 transport_query_order_status,不区分大小写 | |
| resultcode | number | 是 | 错误码 | |
| resultmsg | string | 是 | 错误描述 | |
| order_status | number | 是 | 当前订单状态,详见下方order_status 枚举值 | |
| action_msg | string | 否 | 附加信息 | |
| waybill_id | string | 是 | 配送单id |
order_status 枚举值
| 值 | 说明 |
|---|---|
| 101 | 配送公司接单阶段——等待分配骑手,即初始状态 |
| 102 | 配送公司接单阶段——分配骑手成功 |
| 103 | 配送公司接单阶段——商家取消订单, 订单结束 |
| 201 | 骑手取货阶段——骑手到店开始取货 |
| 202 | 骑手取货阶段——取货成功 |
| 203 | 骑手取货阶段——取货失败,商家取消订单, 订单结束 |
| 204 | 骑手取货阶段——取货失败,骑手因自身原因取消订单, 订单结束 |
| 205 | 骑手取货阶段——取货失败,骑手因商家原因取消订单, 订单结束 |
| 301 | 骑手配送阶段——配送中 |
| 302 | 骑手配送阶段——配送成功, 订单结束 |
| 303 | 骑手配送阶段——商家取消订单,配送物品开始返还商家 |
| 304 | 骑手配送阶段——无法联系收货人,配送物品开始返还商家 |
| 305 | 骑手配送阶段——收货人拒收,配送物品开始返还商家 |
| 401 | 骑手返回配送货品阶段——货品返还商户成功, 订单结束 |
| 501 | 因运力系统原因取消, 订单结束 |
| 502 | 因不可抗拒因素(天气,道路管制等原因)取消,订单结束 |
更多说明
- 最终状态包括成功状态302,失败状态: 103,203,204,205,401,501,502。
- 当状态更新时,我们会在关键节点给收件用户推送服务通知,告知配送状态,同一配送单常态下会收到三条通知,即【骑手已接单】、【骑手已取货,配送中】、【配送已完成】,配送异常时会下发【配送异常】服务通知。
此外,不同服务通知对应的 order_status 枚举值为
| 服务通知 | 对应的order_status值 |
|---|---|
| 骑手已接单 | 102 |
| 骑手已取货,配送中 | 202或301 |
| 配送已完成 | 302 |
| 配送异常 | 203、204、205、303、304、305、501、502 |