14.订单状态推送接口
<h3>功能描述</h3>
<ul>
<li>该接口用于:成功下单后,小哥上门揽收前,顺丰对订单进行调度的信息集合。可获取到对应小哥的联系方式;</li>
<li>客户需提供一个符合以下规范的HTTP/HTTPS URL,以接收顺丰快递管家通用接口推送的信息:
1.路由信息为JSON格式,通过HTTP/HTTPS POST方式推送给客户;
2.在客户处理完订单状态信息后,向顺丰快递管家通用接口返回响应JSON信息,响应JSON报文结果只能为OK/ERR,如为ERR,顺丰快递管家通用接口将重新推送该订单状态信息,失败3次后不再推送;</li>
</ul>
<pre><code>注:1.此接口建议客户方系统做验签功能,规避被恶意攻击的风险;
2.建议使用订单号作为筛选条件进行订单信息的更新,因为运单号存在可能为子单号/签回单号的情况;
3.测试环境如需测试该接口,请将测试环境下单后的订单号与运单号发给顺丰研发接口人,便于其生成相关测试数据;
4.推送方式为增量推送,对于同一个顺丰运单的同一条信息,推送成功则不重复推送,推送失败则会再次推送,失败3次后不再推送;
5.以防推送接口有延迟,建议配合对应查询接口,对一段时间内没有收到推送消息的订单,主动查询订单状态信息;</code></pre>
<h3>接口定义</h3>
<table>
<thead>
<tr>
<th style="text-align: center;">服务名称</th>
<th style="text-align: center;">批量交易</th>
<th style="text-align: center;">接口类型</th>
<th style="text-align: center;">接口uri</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: center;">订单状态推送接口</td>
<td style="text-align: center;">不支持</td>
<td style="text-align: center;">推送/POST</td>
<td style="text-align: center;">客户方提供</td>
</tr>
</tbody>
</table>
<h3>元素<请求></h3>
<table>
<thead>
<tr>
<th style="text-align: center;">序号</th>
<th style="text-align: center;">字段名</th>
<th style="text-align: center;">类型(约束)</th>
<th style="text-align: center;">必填</th>
<th style="text-align: left;">描述</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: center;">1</td>
<td style="text-align: center;">orderNo</td>
<td style="text-align: center;">String(64)</td>
<td style="text-align: center;">是</td>
<td style="text-align: left;">客户订单号</td>
</tr>
<tr>
<td style="text-align: center;">2</td>
<td style="text-align: center;">waybillNo</td>
<td style="text-align: center;">String(64)</td>
<td style="text-align: center;">否</td>
<td style="text-align: left;">顺丰运单号</td>
</tr>
<tr>
<td style="text-align: center;">3</td>
<td style="text-align: center;">orderStateCode</td>
<td style="text-align: center;">String(20)</td>
<td style="text-align: center;">是</td>
<td style="text-align: left;">订单状态,见附录【4.订单状态】</td>
</tr>
<tr>
<td style="text-align: center;">4</td>
<td style="text-align: center;">orderStateDesc</td>
<td style="text-align: center;">String(200)</td>
<td style="text-align: center;">否</td>
<td style="text-align: left;">订单状态描述</td>
</tr>
<tr>
<td style="text-align: center;">5</td>
<td style="text-align: center;">empCode</td>
<td style="text-align: center;">String(100)</td>
<td style="text-align: center;">否</td>
<td style="text-align: left;">收件员工工号</td>
</tr>
<tr>
<td style="text-align: center;">6</td>
<td style="text-align: center;">empPhone</td>
<td style="text-align: center;">String(100)</td>
<td style="text-align: center;">否</td>
<td style="text-align: left;">收件员手机号</td>
</tr>
<tr>
<td style="text-align: center;">7</td>
<td style="text-align: center;">netCode</td>
<td style="text-align: center;">String(20)</td>
<td style="text-align: center;">否</td>
<td style="text-align: left;">网点</td>
</tr>
<tr>
<td style="text-align: center;">8</td>
<td style="text-align: center;">lastTime</td>
<td style="text-align: center;">date</td>
<td style="text-align: center;">否</td>
<td style="text-align: left;">最晚上门时间</td>
</tr>
<tr>
<td style="text-align: center;">9</td>
<td style="text-align: center;">bookTime</td>
<td style="text-align: center;">date</td>
<td style="text-align: center;">否</td>
<td style="text-align: left;">客户预约时间</td>
</tr>
<tr>
<td style="text-align: center;">10</td>
<td style="text-align: center;">carrierCode</td>
<td style="text-align: center;">String(10)</td>
<td style="text-align: center;">是</td>
<td style="text-align: left;">承运商代码(SF)</td>
</tr>
<tr>
<td style="text-align: center;">11</td>
<td style="text-align: center;">createTm</td>
<td style="text-align: center;">date</td>
<td style="text-align: center;">否</td>
<td style="text-align: left;">状态操作时间</td>
</tr>
</tbody>
</table>
<h3>元素<响应></h3>
<table>
<thead>
<tr>
<th style="text-align: center;">序号</th>
<th style="text-align: center;">字段名</th>
<th style="text-align: center;">类型(约束)</th>
<th style="text-align: center;">必填</th>
<th style="text-align: center;">字段说明</th>
<th style="text-align: left;">描述</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: center;">1</td>
<td style="text-align: center;">status</td>
<td style="text-align: center;">String(10)</td>
<td style="text-align: center;">是</td>
<td style="text-align: center;">接收推送信息状态</td>
<td style="text-align: left;">OK-成功,ERR-失败;失败会重推两次,共推送三次,全部返回ERR则不再推送。</td>
</tr>
</tbody>
</table>
<h3>报文范例</h3>
<ul>
<li>
<p><strong>请求报文</strong></p>
<pre><code>{
"orderNo": "52840aa5ec1c4f52a20864baad9c70c5",
"waybillNo": "SF1011853605618",
"orderStateCode": "04-40001",
"orderStateDesc": "调度成功+收派员信息",
"empCode": "01381324",
"empPhone": "13888888888",
"netCode": "755A",
"lastTime": "2021-01-02 01:01:01",
"bookTime": "2020-03-02 01:01:01",
"carrierCode": "SF",
"createTm": "2020-03-02 01:01:01"
}</code></pre>
</li>
<li>
<p><strong>响应报文</strong></p>
<ol>
<li>
<p>成功报文</p>
<pre><code>{
"status":"OK"
}</code></pre>
</li>
<li>失败报文
<pre><code>{
"status":"ERR"
}</code></pre></li>
</ol>
</li>
</ul>