微信的微信支付終於弄好了
主要有幾個坑:
1、在微信公眾號平臺裡面查詢appId和appsecret,這個app祕鑰很多時候在開發完成之後,需要重置一下,坑!另外,appid也可以在這裡看到!
2、在微信商戶平臺裡面需要設定api祕鑰(paternerKey),所謂paternerKey意思就是夥伴的祕鑰,也就是合作商的祕鑰,所有肯定要在商戶平臺找,很多時候開發完成之後也要重設一下,坑!
3、partner即商戶id:
4、<xml><return_code><![CDATA[FAIL]]></return_code>
<return_msg><![CDATA[mch_id引數格式錯誤]]></return_msg>
</xml>
報以上的錯誤,居然原因是因為我的那個mch_id的值後面多了一個空格,坑啊,居然沒有做trim處理。
5、<xml><return_code><![CDATA[FAIL]]></return_code>
<return_msg><![CDATA[商戶號該產品許可權處罰中,請前往商戶平臺>產品中心檢查後重試]]></return_msg>
</xml>
探討同一個公司下面的多個公眾號中,其中一個被封殺了,其它公眾號是否可以繼續使用(結論:騰訊會對同一公司下面的商戶號進行處罰,非封殺公眾號可以用,但是支付不可以用了,但是可以快速對接非同一公司下面的微信支付)。
6、<xml><return_code><![CDATA[FAIL]]></return_code>
<return_msg><![CDATA[appid and openid not match]]></return_msg>
</xml>
當微信公眾號裡面的微信支付換了其他公眾號的支付,其openid也會變換的,因此這種情況下需要使用者重新生成openid。
7、網頁授權:
這個授權域名是指:比如說我用了A公眾號的支付,那麼這個A公眾號就要設定好這個域名。
換句話說,要實現公眾號的微信支付,有幾點需要注意的:
第一、公眾號裡的 介面許可權-網頁服務-網頁授權-域名需要設定,在設定之前需要把裡面的一個txt檔案複製到專案的root目錄下面,讓其可以直接訪問;
第二、公眾號裡的 微信支付-開發配置-支付授權目錄 設定成該域名下面的一個支付目錄; 第三、發起支付的時候,所用的appid必須是這個公眾號的id,所用的partner(商戶id)必須是這個公眾號對應的商戶id; 第四、需要設定app祕鑰,在 公眾號-基本配置 裡面重置即可,然後把這個祕鑰複製到程式碼的配置裡面; 第五、需要設定api祕鑰,這個祕鑰是我們自己隨便寫的,32位即可,然後把它複製到商戶平臺裡面的 api安全-設定祕鑰,把它設定上即可。 注意:支付授權目錄配置已經移到微信商戶平臺裡面了,之前在微信公眾號的: