## 异步回调通知
支付完成后,支付平台会把相关支付结果通过异步回调发送给商户,商户需要接收处理,并返回应答。
如果收不到商户成功接收的应答或超时,认为通知失败,会通过一定的策略定期重新发起通知(通知频率60/300/600/1200/1800,单位:秒),但不保证通知最终能成功。
注意:
1)同样的通知可能会多次发送给商户系统。商户系统必须能够正确处理重复的通知。
2)商户系统对于支付结果通知的内容一定要做签名验证,并校验返回的订单金额是否与商户侧的订单金额一致,防止数据泄漏导致出现“假通知”,造成资金损失。
3)通知数据以form形式发送,如php使用$_POST接收即可。
#### 通知参数说明
| 参数名 | 类型 | 是否必须 | 描述 |
| --- | --- | --- | --- |
| nonce | String(32) | 是 | 随机串 |
| timestamp | int | 是 | 时间戳 |
| sign | String(32) | 是 | 签名 |
| status | int | 是 | 订单状态 |
| amount | int | 是 | 订单总金额,单位为分 |
| couponFee | int | 是 | 优惠金额,单位为分 |
| cashFee | int | 是 | 实付金额,单位为分 |
| bankType | String(32) | 否 | 付款银行标识 |
| payTime | int | 是 | 支付时间 |
| orderId | String(32) | 是 | 支付平台订单号 |
| merOrderId | String(32) | 是 | 商户订单号 |
| transactionNo | String(32) | 否 | 支付交易流水号 |
| isSubscribe | int | 否 | 是否关注公众号,0-否;1-是 |
| buyerId | String(32) | 否 | 买家 ID |
| appId | String(32) | 否 | 应用 ID |
| merchantId | String(32) | 否 | 商户号 |
| extraInfo | String | 否 | 用户自定义信息 |
#### 应答信息
应答数据格式为 json 字符串,如:{"code":0}。code = 0 表示接收成功,其它信息我们会按照上述规则,陆续发送通知(最多6次)。