微信支付v3接口回调
微信支付V3接口回调
微信支付V3接口回调是微信支付系统向商户服务器发送的通知消息,用于确认交易结果、更新订单状态等。下面我们将详细描述微信支付V3接口回调的内容。
1. 回调类型
微信支付V3接口回调有两种类型:
* 同步回调:当商户服务器向微信支付系统发送请求时,微信支付系统会立即返回结果。
* 异步回调:当商户服务器向微信支付系统发送请求后,微信支付系统会在一定时间内(通常为几秒到几分钟)向商户服务器发送回调消息。
2. 回调内容
微信支付V3接口回调的内容包括:
* 通知类型:表示回调消息的类型,例如“TRADE_STATE”或“REFUND_STATE”。
* 通知时间:表示回调消息的发送时间。
* 商户订单号:表示商户系统中的订单号。
* 微信订单号:表示微信支付系统中的订单号。
* 交易金额:表示交易金额。
* 交易类型:表示交易类型,例如“TRADE_TYPE_APP”或“TRADE_TYPE_JSAPI”。
3. 回调消息格式
回调消息的格式如下:
```json{
"notify_type": "TRADE_STATE",
"notify_time": "2022-01-0112:00:00",
"out_trade_no": "商户订单号",
"transaction_id": "微信订单号",
"total_amount": "交易金额",
"trade_type": "交易类型"
}
```
4. 回调消息处理
当收到回调消息后,商户服务器需要进行以下处理:
* 验证签名:验证回调消息的签名是否正确。
* 更新订单状态:根据回调消息内容更新订单状态。
* 记录日志:记录回调消息的接收时间和内容。
5. 回调消息错误处理
当收到错误的回调消息时,商户服务器需要进行以下处理:
* 验证签名失败:如果签名验证失败,则丢弃该回调消息。
* 订单状态更新失败:如果订单状态更新失败,则记录日志并重新发送请求。
6. 回调消息重试
当收到错误的回调消息时,商户服务器可以尝试重新发送请求:
* **重试次数**:最多尝试3 次。
* **重试间隔**:每次重试之间的间隔为5 秒。
**7. 回调消息日志**
当收到回调消息时,商户服务器需要记录以下信息:
* **接收时间**:回调消息的接收时间。
* **内容**:回调消息的内容。
* **处理结果**:回调消息的处理结果。
以上是微信支付V3接口回调的详细描述。