异步通知
<p>[TOC]</p>
<h5>简要描述</h5>
<ul>
<li>异步通知,用于接受clipspay的推送结果,明确订单状态,只有明确成功和明确失败的才会有推送</li>
</ul>
<h5>通知地址</h5>
<ul>
<li>当订单处理完成时将主动调用商户后台设置-> 站点管理 添加站点时设置的回调地址,该通知将下发结果通过数据流的形式发送给商户,商户需要接收处理时,需做验签处理,验签方法和调用API的签名算法一样,但用的密钥对为回调密钥对,与API密钥对不同。其他按文档规范返回应答。</li>
</ul>
<h5>特别提醒</h5>
<ul>
<li> 商户系统对于支付结果通知的内容一定要做签名验证,并校验返回的订单金额是否与商户侧的订单金额一致,防止数据泄露导致出现“假通知”,造成资金损失。 </li>
<li> 当收到通知进行处理时,首先检查对应业务数据的状态,判断该通知是否已经处理过,如果没有处理过再进行处理,如果处理过直接返回结果成功。在对业务数据进行状态检查和处理之前,要采用数据锁进行并发控制,以避免函数重入造成的数据混乱。</li>
</ul>
<h5>通知参数说明</h5>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">orderNo</td>
<td style="text-align: left;">String</td>
<td>平台订单号</td>
</tr>
<tr>
<td style="text-align: left;">merchantOrderNo</td>
<td style="text-align: left;">String</td>
<td>商户订单号</td>
</tr>
<tr>
<td style="text-align: left;">merchantNo</td>
<td style="text-align: left;">String</td>
<td>商户号</td>
</tr>
<tr>
<td style="text-align: left;">appId</td>
<td style="text-align: left;">String</td>
<td>应用 ID</td>
</tr>
<tr>
<td style="text-align: left;">payStatus</td>
<td style="text-align: left;">String</td>
<td>下发状态 0 下发失败 1 待下发 2 已下 发 3 已到账</td>
</tr>
<tr>
<td style="text-align: left;">orderStatus</td>
<td style="text-align: left;">String</td>
<td>订单状态 0 已取消 1 审核中 2 处理中 3 已完成</td>
</tr>
<tr>
<td style="text-align: left;">sourceAmount</td>
<td style="text-align: left;">Number</td>
<td>目的金额</td>
</tr>
<tr>
<td style="text-align: left;">sourceCurrency</td>
<td style="text-align: left;">String</td>
<td>目的货币</td>
</tr>
<tr>
<td style="text-align: left;">destinationAmount</td>
<td style="text-align: left;">Number</td>
<td>目的金额</td>
</tr>
<tr>
<td style="text-align: left;">destinationCurrency</td>
<td style="text-align: left;">String</td>
<td>目的货币</td>
</tr>
<tr>
<td style="text-align: left;">destinationCountryIsoCode</td>
<td style="text-align: left;">String</td>
<td>目的国家/地区码</td>
</tr>
<tr>
<td style="text-align: left;">merchantSettlementAmount</td>
<td style="text-align: left;">String</td>
<td>结算金额</td>
</tr>
<tr>
<td style="text-align: left;">merchantSettlementCurrency</td>
<td style="text-align: left;">String</td>
<td>结算货币</td>
</tr>
<tr>
<td style="text-align: left;">totalFeeAmount</td>
<td style="text-align: left;">String</td>
<td>手续费金额</td>
</tr>
<tr>
<td style="text-align: left;">totalRate</td>
<td style="text-align: left;">String</td>
<td>汇率</td>
</tr>
<tr>
<td style="text-align: left;">payMessage</td>
<td style="text-align: left;">String</td>
<td>下发信息</td>
</tr>
</tbody>
</table>
<h5>通知参数示例</h5>
<pre><code> {
&quot;orderNo&quot;: &quot;1685503680748&quot;,
&quot;merchantOrderNo&quot;: &quot;1685503724888&quot;,
&quot;merchantNo&quot;: &quot;1683774097725&quot;,
&quot;appId&quot;: &quot;97725&quot;,
&quot;sourceAmount&quot;: 1.00,
&quot;sourceCurrency&quot;: &quot;PHP&quot;,
&quot;destinationAmount&quot;: 1.00,
&quot;destinationCurrency&quot;: &quot;PHP&quot;,
&quot;destinationCountryIsoCode&quot;: &quot;PHL&quot;,
&quot;merchantSettlementAmount&quot;: 0.08,
&quot;merchantSettlementCurrency&quot;: &quot;USD&quot;,
&quot;totalFeeAmount&quot;: 0.06,
&quot;totalRate&quot;: null,
&quot;payStatus&quot;: 3,
&quot;orderStatus&quot;: 3,
&quot;payMessage&quot;: null
}</code></pre>
<h5>备注</h5>
<ul>
<li>更多返回错误代码请看首页的错误代码描述</li>
</ul>