# 订单状态变更通知
## 1、基本信息
接口描述:订单状态变更时,通过请求推送订单时的参数notify_url发起订单回调通知。
回调请求的签名方式与请求参数与API调用方式一致。
## 2、平台参数
| 参数名称 | 是否必填 | 范例 | 参数说明 |
| ---- | ---- | ---- | ---- |
| appkey | 是 | G86JM5RJ3h69ZHX286 | 为每个应用提供的唯一标识 |
| timestamp | 是 | 1604027239 | 本次调用的秒级时间戳 |
| nonce | 是 | 741852 | 随机数 |
| sign| 是 | f30fc2aeb50c984bea266ba285ce2e8d9617253f | 签名规则,详见开发须知 |
| operate | 是 | delivery_asign | 变更事件码 |
## 3、通知body参数
接入方可通过接收到body参数进行订单状态同步变更。
| 参数名称|类型| 范例 | 参数说明 |
| ---- | ---- | ---- | ---- |
| ordersn |String| 20200728144905060634| 接入方订单编号,即推送订单时传入的ordersn_third |
|status|String|3|订单状态码|
|status_cn|String|已完成|订单状态码说明|
|delivery_status|String|4|配送状态码|
|delivery_status_cn|String|已完成|配送状态码说明|
|detail|String|订单已完成|变更事件说明|
|delivery_assign_time|String|1595918956|配送员接单时间|
|delivery_success_time|String|1595918963|配送员送达时间|
|cancel_reason|String|长时间无配送员接单|取消订单理由|
|deliveryer|Array||配送员信息,同查询订单API中的deliveryer字段
消息示例
{
"ordersn": "20200728144905060634",
"status": 2,
"status_cn": "已接单",
"delivery_status": 2,
"delivery_status_cn": "待取货",
"detail": "配送员已接单",
"delivery_assign_time": "1595918956",
"delivery_success_time": "",
"deliveryer": {
"id": 1,
"title": "张三",
"sex": "男",
"mobile": "15364816003",
"location_x": "37.791461",
"location_y": "112.57536315918"
}
}
## 4、返回值说明
接入方在收到订单回调后,需返回JSON字符串{"errno":0,"message":"success"},若未按要求返回,默认回调失败,会以一定的规则继续进行回调通知。
#### 变更事件码说明 operate
|事件码|说明|
| --- | --- | --- | --- | --- | --- |
|delivery_assign|配送员已接单|
|cancel|订单已取消|
|end|订单已完成|
|delivery_instore|配送员已取货|
|delivery_transfer|订单已被配送员转单,正在重新分配配送员|
|direct_transfer_agree|订单已由新的配送员进行配送|
|re_notify_deliveryer_collect|订单已被重新调度,正在分配配送员|