ThinkPHP接入微信公衆號支付

微信在生活中的地位越來越重要。人流量大,信息大的地方都是商戶營銷必爭之地,在微信公衆號中微信支付使用的場景越來越多。下面PHP程序員雷雪松就詳細的講解下ThinkPHP如何接入微信公衆號支付。

1、下載官方demo,並放到ThinkPHP/Library/Vendor/下面,建議建一個Wxpay文件夾。以後如果想接入支付寶就再建一個Alipay。這樣在多種支付的情況下目錄可能會比較清晰。

微信公衆號支付目錄

2、在WxPay.Config.php文件中修改微信支付相關的參數,並將微信支付商戶平臺下載的證書放到ThinkPHP/Library/Vendor/Wxpay/cert/文件夾下。

1
2
3
4
5
6
7
const APPID = '';//開戶郵件中可查看或者微信支付後商戶平臺
const MCHID = '';//開戶郵件中可查看或者微信支付商戶平臺
const KEY = '';//微信支付商戶平臺自行設置
const APPSECRET = '';//微信公衆號secert
// 證書路徑,注意應該填寫絕對路徑(僅退款、撤銷訂單時需要),可登錄商戶平臺下載,API證書下載地址:https://pay.weixin.qq.com/index.php/account/api_cert,下載之前需要安裝商戶操作證書)
const SSLCERT_PATH = 'cert/apiclient_cert.pem';
const SSLKEY_PATH = 'cert/apiclient_key.pem';

3、在微信公衆號中設置支付目錄,具體步驟:微信支付->開發配置->輸入微信支付的地址,須細化到二級目錄,以左斜槓“/”結尾。比如:微信支付的鏈接爲:域名/wxpay/Cart/weixinpay/o_no/20170622164600。o_no後面的訂單號是隨機的訂單號。那麼微信公衆號中支付目錄則爲:域名/wxpay/Cart/weixinpay/o_no/。

微信公衆號支付設置

4、在微信公衆號中設置JS接口安全域名設置和網頁授權域名。具體步驟:公衆號設置->功能設置。

微信公衆號設置

注意:在微信支付的時候,首先會獲取openID。獲取openID的過程是首先請求微信,微信會把code迴轉到當前的請求鏈接。簡單的理解就是微信支付的鏈接會被請求兩次,第一次是我們請求調用微信支付,第二次是微信回調獲取openID。這樣就可能在第二次運行該微信支付的鏈接?後面參數會丟失。具體代碼可以查看微信WxPay.JsApiPay.php中的GetOpenid方法。

如果把這幾個微信支付的關鍵點都搞懂了,具體的代碼應該就比較好些寫了。支付和通知都可以參考微信支付中的exmaple文件夾裏的文件。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章