# 更新配送单状态
接口应在服务器端调用,不可在前端(小程序、网页、APP等)直接调用,具体可参考接口调用指南。
接口英文名:updateOrder
该接口用于配送公司更新配送单状态。
# 1. 调用方式
# HTTPS 调用
POST https://api.weixin.qq.com/cgi-bin/express/local/delivery/update_order?access_token=ACCESS_TOKEN
# 云调用
- 本接口不支持云调用。
# 第三方调用
- 本接口不支持第三方平台调用。
# 2. 请求参数
# 查询参数 Query String Parameters
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| access_token | string | 是 | 接口调用凭证,可使用 access_token |
# 请求体 Request Payload
| 参数名 | 类型 | 必填 | 说明 | 枚举 |
|---|---|---|---|---|
| wx_token | string | 是 | 下单事件中推送的token字段 | - |
| order_status | number | 是 | 订单状态 | 枚举值 |
| waybill_id | string | 是 | 配送单id | - |
| action_msg | string | 否 | 附加信息 | - |
| action_time | number | 是 | 状态变更时间点,Unix秒级时间戳 | - |
| agent | object | 否 | 骑手信息, 骑手接单时需返回 | - |
| shopid | string | 是 | 商家id, 由配送公司分配,可以是dev_id或者appkey | - |
| shop_order_id | string | 是 | 唯一标识订单的 ID,由商户生成 | - |
| shop_no | string | 否 | 商家门店编号, 在配送公司侧登记 | - |
| wxa_path | string | 是 | 配送公司小程序跳转路径,用于用户收到消息会间接跳转到这个页面 | - |
| expected_delivery_time | number | 否 | 预计送达时间戳, 骑手接单时需返回 | - |
# Body.agent Object Payload
骑手信息, 骑手接单时需返回
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | string | 是 | 骑手姓名 |
| phone | string | 是 | 骑手电话 |
| is_phone_encrypted | number | 否 | 电话是否加密。默认是0不加密,1表示加密。 |
# 3. 返回参数
# 返回体 Response Payload
| 参数名 | 类型 | 说明 |
|---|---|---|
| resultcode | number | 错误码 |
| resultmsg | string | 错误描述 |
# 4. 枚举信息
# Body.order_status Enum
订单状态
| 枚举值 | 描述 |
|---|---|
| 101 | 配送公司接单阶段——等待分配骑手,即初始状态 |
| 102 | 配送公司接单阶段——分配骑手成功 |
| 103 | 配送公司接单阶段——商家取消订单, 订单结束 |
| 201 | 骑手取货阶段——骑手到店开始取货 |
| 202 | 骑手取货阶段——取货成功 |
| 203 | 骑手取货阶段——取货失败,商家取消订单, 订单结束 |
| 204 | 骑手取货阶段——取货失败,骑手因自身原因取消订单, 订单结束 |
| 205 | 骑手取货阶段——取货失败,骑手因商家原因取消订单, 订单结束 |
| 301 | 骑手配送阶段——配送中 |
| 302 | 骑手配送阶段——配送成功, 订单结束 |
| 303 | 骑手配送阶段——商家取消订单,配送物品开始返还商家 |
| 304 | 骑手配送阶段——无法联系收货人,配送物品开始返还商家 |
| 305 | 骑手配送阶段——收货人拒收,配送物品开始返还商家 |
| 401 | 骑手返回配送货品阶段——货品返还商户成功, 订单结束 |
| 501 | 因运力系统原因取消, 订单结束 |
| 502 | 因不可抗拒因素(天气,道路管制等原因)取消,订单结束 |
# 5. 注意事项
# 关于 order_status 枚举值说明
- 最终状态包括成功状态302,失败状态: 103,203,204,205,401,501,502。
- 当状态更新时,我们会在关键节点给收件用户推送服务通知,告知配送状态,同一配送单常态下会收到三条通知,即【骑手已接单】、【骑手已取货,配送中】、【配送已完成】,配送异常时会下发【配送异常】服务通知。
# 不同服务通知对应的 order_status 枚举值为
| 服务通知 | 对应的order_status值 |
|---|---|
| 骑手已接单 | 102 |
| 骑手已取货,配送中 | 202或301 |
| 配送已完成 | 302 |
| 配送异常 | 203、204、205、303、304、305、501、502 |
# 6. 代码示例
请求示例
{
"wx_token": "",
"shopid": 0,
"shop_order_id": "C1638702836167U4v252",
"shop_no": "6261889268017",
"waybill_id": "3436608931550646273",
"action_time": 1638703215,
"order_status": 202,
"action_msg": "",
"agent": {
"name": "李x利",
"phone": "1358xxxx",
"lng": 112.224839,
"lat": 22.690728
},
"wxa_path": "pages/index/index",
"expected_delivery_time": 1638705236
}
返回示例
{
"resultcode": 0,
"resultmsg": "ok"
}
# 7. 错误码
以下是本接口的错误码列表,其他错误码可参考 通用错误码;调用接口遇到报错,可使用官方提供的 API 诊断工具 辅助定位和分析问题。
| 错误码 | 错误描述 | 解决方案 |
|---|---|---|
| -1 | system error | 系统繁忙,此时请开发者稍候再试 |
# 8. 适用范围
本接口暂未明确可调用账号类型,或在业务中根据调用传参自行确定是否可调用,请以实际调用情况为准。