Login expired. Please log in again.

Feedback

0/300

Feedback

Submitted successfully

ok

Feedback

Network exception, please try again later

ok

开发指引

系统设计
合理的查单逻辑
回调信息核验
交易闭环
完整的退款逻辑
开发注意事项
重要参数
API规则
业务启动前的注意事项
业务链接测试
结算及对账

回调信息内容验证

业务场景

在QR code payment, Official Account Payment, In-APP payment, Mini Program Payment场景下,微信支付会在用户支付完成后向机构回调url下发支付结果通知,机构需要核实回调签名及回调内容,以防止收到虚假回调,产生资金的损失。

解决方案

机构或商户在收到微信支付回调信息后,需要做三件事:

  • 1验证签名

    对回调信息中的sign字段进行核验,以确认该回调为微信支付下发的回调,核验签名方式请参考API文档中的签名算法部分。

  • 2内容验证

    若sign核验通过,需检查回调中订单信息是否正确。重点需要核查订单号是否在系统中生成过,订单号与支付金额是否与系统中记录的相匹配。

  • 3返回正确信息

    若sign和业务信息都验证通过,同步订单结果到自身系统中,同时需要返回正确的回包给到微信支付。否则微信支付会判定该次回调失败,不断去进行重试,造成双方资源的浪费。

  • Complete

同样的通知可能会多次发送给商户系统。商户系统必须能够正确处理重复的通知。当收到通知进行处理时,首先检查对应业务数据的状态,判断该通知是否已经处理过,如果没有处理过再进行处理,如果处理过直接返回结果成功。在对业务数据进行状态检查和处理之前,要采用数据锁进行并发控制,以避免函数重入造成的数据混乱。

About  WeChat  Pay

Powered By Tencent & Tenpay Copyright©

2005-2024 Tenpay All Rights Reserved.

Contact Us
Wechat Pay Global

WeChat Pay Global