最近在做微信訂單被用戶投訴了,想讓微信抄送消息給到我們自己的api,然后我們接受后推送消息到飛書(當(dāng)然也可以釘釘或者其他)
報錯信息:“應(yīng)答的微信支付簽名驗(yàn)證失敗”
https://pay.weixin.qq.com/wiki/doc/apiv3/open/pay/chapter6_2_3.shtml

image.png
問題分析:這個問題是證書導(dǎo)致的,不應(yīng)該是商戶證書,應(yīng)該是平臺證書
- 確保你已經(jīng)安裝了 擴(kuò)展 (wechatpay-guzzle-middleware)
https://github.com/wechatpay-apiv3/wechatpay-guzzle-middleware

image.png
格式:
php vendor/wechatpay/wechatpay-guzzle-middleware/tool/CertificateDownloader.php -f 你自己的key路徑(apiclient_key.pem) -k (這個是你自己填寫的apiv3密匙不是v2) -m (填商戶號) -o 這個事生成的路徑他會生成一個文件你存在哪里 -s 商戶API證書序列號這個在微信后臺找就ok了
示例:
php vendor/wechatpay/wechatpay-guzzle-middleware/tool/CertificateDownloader.php -f public/apiclient_key.pem -k muuu4e654977ddd3f2448dd0c1f54433987 -m 1631642900 -o /Users/mac/Downloads/ -s 564689765E6BD58DE51F6F12C99C563BCD8A32134A8
最后生成出來的事一個類似于這個的東西
wechatpay_2C8EBB2F0D526E9F4399DC3F2D450F6E09512854.pem
其他:微信回調(diào)驗(yàn)證和回調(diào)數(shù)據(jù)處理
https://pay.weixin.qq.com/wiki/doc/apiv3/wechatpay/wechatpay4_1.shtml

image.png

image.png