背景:商戶號以前已經(jīng)對接了app支付功能。
經(jīng)歷的錯誤提示:
1、商戶號該產(chǎn)品權(quán)限未開通,請前往商戶平臺》產(chǎn)品中心檢查后重試
開始微信小程序賬號平臺內(nèi),微信支付已經(jīng)綁定了商戶號,以為綁定錯誤。
有在app支付的賬號平臺內(nèi),綁定微信小程序,結(jié)果一樣。
后來網(wǎng)上查資料發(fā)現(xiàn),需要進入商戶平臺,在產(chǎn)品中心》開通公眾號支付功能。此問題得以解決。
2、appid and openid not match
appid和openid不匹配,明顯就是appid需要是開通支付功能的小程序賬號的appid。開發(fā)是用的自己的賬號的appid導(dǎo)致不匹配。
解決辦法:將自己添加為公司微信小程序賬號的開發(fā)人員,將項目的appid改為公司的程序id
3、前端調(diào)取小程序支付api時,一直說收到的結(jié)果為undefined
字段大小寫寫錯了
4、此時終于成功的調(diào)出支付了,結(jié)果報錯:支付驗證簽名失敗
字面理解就是前面錯誤,
分析原因:
(1)懷疑簽名算法寫錯,經(jīng)過驗證排除。官方驗證簽名工具 https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=20_1
(2)懷疑運營人員給的支付驗證簽名的key和商戶號沒對應(yīng),經(jīng)過排查發(fā)現(xiàn)不是這個問題
驗證簽名的key就是商戶號:賬戶設(shè)置》api安全》中設(shè)置的秘鑰
(3)簽名內(nèi)容是否有誤,回頭查看小程序支付文檔https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=7_4&index=3

image.png
發(fā)現(xiàn)簽名少了一個字段appId,當時初次測試寫成了appid導(dǎo)致失敗,特別注意字段大小寫。至此小程序支付終于成功調(diào)用?;卣{(diào)接口這里不說了