來源:授權地址
作者:會編碼的熊
該文章紀錄了我在開發小程序支付過程中的具體流程
1. 申請微信支付
小程序認證後進入微信支付申請小程序的微信支付
填寫企業信息對公賬戶並上傳憑證後,微信支付會打一筆隨機金額到對公賬戶,輸入金額完成驗證後,在線簽署協議,這樣整個微信支付的申請流程完成了。注意此處申請所填寫的信息都需要真實且詳細,設置小程序的密鑰。
微信支付申請完,會發送微信支付商戶號,商戶平臺用戶名密碼等信息到註冊者郵箱。
2.配置商戶信息
申請微信支付成功後,登陸商戶平臺(pay.weixin.qq.com)進入賬戶中心,設置微信商戶的API Key與下載證書
3.配置Https服務器
小程序的前端是使用微信提供的框架開發,但是後臺依然是開發者自己的服務器。小程序發起的是 https 請求,意味着小程序開發者必須配置 https 服務器。配置 https 服務器之前,先要獲取證書,證書可以向相關機構購買,騰訊雲目前可以向用戶提供免費的證書。
證書安裝指引在這裏查看:
https://www.qcloud.com/document/product/400/4143
4.服務端準備
下載微信支付sdk,配置微信小程序信息與商戶信息,放置證書到對應目錄。調用微信申請支付JSAPI的方式生成一串驗證信息如下:
appId:"wx3*******6"//小程序id nonceStr:"qdpys6rdizbnpj12ahwvkf568a6c1sr9" //隨機字符串 package:"prepay_id=wx2016***********3" //wx的預支付交易單 paySign:"8A7DC1A560B3B6DB0C656AC382D3E6F1" signType:"MD5" timeStamp:"1481167418"
5.小程序demo:
const wechatData = payRes.data.payment;//wechatData就是上面的驗證信息 console.log(wechatData); wx.requestPayment({ 'appId':wechatData.appId, 'timeStamp': wechatData.timeStamp, 'nonceStr': wechatData.nonceStr, 'package': wechatData.package, 'signType': 'MD5', 'paySign': wechatData.paySign, 'success':function(res){ console.log(res); console.log('success'); },'fail':function(res){ console.log(res); console.log('fail'); },'complete': function(res){ console.log(res);console.log('complete'); } });console.log(2);
6.測試
開啓校驗請求域名與AppID配置,點擊預覽使用真機測試,開發工具不會響應發起支付的接口。