一切信息以微信官方文档为准。

例子:

第三方App调用微信支付接口步骤如下:

-->-->

1. 用户选择后,点击“订购按钮”

商户服务器调用此接口

微信支付服务后台生成预支付交易订单。

返回正确的预支付交易响应标识后,App内就可以调用支付了,当然在服务器调用微信服务后台之前,客户端需要把相关数据传递给服务器。

-->

2、客户端调用微信支付接口(调出微信,输入支付密码)。

函数中会返回支付结果,如果支付成功,需要在后台检查支付结果,并将实际的支付结果展示给用户。

水果。

请注意,客户端返回的结果不能作为用户支付的结果,应以服务端收到的支付通知或者查询API返回的结果为准。

-->斯维尔

3.

支付完成后微信会把相关支付结果和用户信息发送给商户,商户服务器需要接收并处理并返回响应。

如果微信收到商户的响应不成功或者超时,微信认为通知失败。微信会通过一定的策略定期重新发起通知,以最大程度提高通知的成功率,但微信不保证通知最终一定能成功。(通知频率为15/15/30/180/1800/1800/1800/1800/3600,单位:秒)

注意:同一条通知可能会多次发送给商户系统。商户系统必须能够正确处理重复通知。

推荐的做法是,在收到需要处理的通知时,先检查对应业务数据的状态,判断该通知是否已经处理完毕,若未处理则进行处理,若已处理则直接返回成功的结果。在检查处理业务数据状态之前,使用数据锁进行并发控制,避免函数重入导致数据混乱。

特别提醒:商户系统务必通知支付结果

签名验证,并检查返回的订单金额与商户端的订单金额是否一致

,防止数据泄露造成“误报”,造成经济损失。

相关文章