微信小程序支付接口開發(fā)教程
小程序支付功能要想實現(xiàn),必須在開發(fā)小程序過程中,接入支付接口,下面本文闡述如何從零開始接入小程序支付,尤其適合那些沒有微信支付接入經(jīng)驗的開發(fā)者。
小程序中微信支付的能力,是隨著小程序的發(fā)布一并推出的,然而小程序文檔里關(guān)于微信支付接口只有一個requestPayment函數(shù)的描述。
這個requestPayment函數(shù)確實是小程序前端唯一需要調(diào)用的函數(shù),但是微信支付的成功接入實際遠遠不止這一個函數(shù),對于沒有接入過微信支付的開發(fā)者,會覺得一頭霧水,完全沒法下手。
本文闡述如何從零開始接入小程序支付,尤其適合那些沒有微信支付接入經(jīng)驗的開發(fā)者。
1. 申請微信支付
小程序認證以后,可以在小程序后臺,微信支付菜單欄,申請微信支付。
填寫企業(yè)信息和對公賬戶,微信支付會打一筆隨機金額到對公賬戶,輸入金額完成驗證后,在線簽署遷移,即完成了微信支付的申請流程.。
微信支付申請完,會發(fā)送微信支付商戶號,商戶平臺用戶名密碼等信息到注冊者郵箱。
2. 準備工作
2.1 配置小程序密鑰
小程序后臺設(shè)置頁,點擊生成,管理員驗證二維碼后,會隨機生成AppSecret。請妥善保管好Appsecret,不要明文存儲于服務(wù)器,AppSecret用于和微信服務(wù)器交互。比如獲取用戶的openid接口就需要用到.
2.2 設(shè)置密鑰和下載證書
用申請微信支付獲得的用戶名和密碼,登錄商戶平臺(http://pay.weixin.qq.com),在賬戶中心,API安全中下載證書和設(shè)置密鑰。
密鑰是32位,設(shè)置以后需要妥善保管,因為無法查看密鑰,所有微信支付相關(guān)的接口都會使用這個密鑰加密。
2.3 配置Https服務(wù)器
小程序的前端是使用微信提供的框架開發(fā),但是后臺依然是開發(fā)者自己的服務(wù)器。小程序發(fā)起的是https請求,意味著小程序開發(fā)者必須配置https服務(wù)器。
配置https服務(wù)器之前,先要獲取證書,證書可以向相關(guān)機構(gòu)購買,騰訊云目前可以向用戶提供免費的證書.
證書安裝指引,可以參考這里: https://www.qcloud.com/doc/product/400/4143
3. 微信支付流程
微信支付有多種支付方式,包括刷卡支付,公眾號支付,掃碼支付,APP支付,所有微信支付的接口都可以在這里找到:https://pay.weixin.qq.com/wiki/doc/api/index.html
小程序是在微信里調(diào)起支付的,其實是公眾號支付,關(guān)于公眾號支付的詳細文檔可以這里找到: https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_1
所有公眾號支付相關(guān)的鏈接都可以在此鏈接找到,開發(fā)者首先需要大概了解這些接口
小程序公眾號支付的主要流程如下(本圖只考慮了正常流程,異常流程參考公眾號支付文檔):
3.1 關(guān)于openid
上述流程中請求openid,用的是小程序最新api中的接口,開發(fā)者可以查看小程序的登錄接口。
開發(fā)者從第三方服務(wù)器獲得的openid,在統(tǒng)一下單的接口里面需要使用到.
3.2 關(guān)于小程序調(diào)起微信支付
上述流程中的小程序調(diào)起微信支付,用的是小程序微信支付接口wx.requestPayment,該接口的詳細描述可以查看小程序的微信支付API。
這個接口中的package和timeStamp參數(shù)是從開發(fā)者的第三方服務(wù)器返回的,package是第三方服務(wù)器從統(tǒng)一下單接口回復(fù)中獲得。
接口中其他的參數(shù),appId,noceStr,signType以及paySign則由小程序這邊存儲或者計算而得。
其中paySign是簽名,簽名算法文檔在這里:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_3&t=20161107
整個公眾號支付的主要流程基本都是在第三方服務(wù)器上實現(xiàn),開發(fā)者需要熟讀公眾號支付文檔,了解消息交互流程以及每個接口。
這里并沒有描述正常微信支付必不可少的一些功能:異常處理,查詢訂單,發(fā)起退款,下載對賬單等等。
4. 小程序與JSSDK微信支付比較
JSSDK的微信支付接口是公眾號里用JS調(diào)起公眾號支付的方法,具體可以參考公眾平臺的文檔。
可以看到,小程序和JSSDK的微信支付非常類似,這里比較一下2者的區(qū)別:
以上是微信小程序支付接口開發(fā)教程,更多關(guān)于微信小程序其他接口開發(fā),可以關(guān)注本網(wǎng)站,謝謝。
HiShop小程序工具提供多類型商城/門店小程序制作,可視化編輯 1秒生成5步上線。通過拖拽、拼接模塊布局小程序商城頁面,所看即所得,只需要美工就能做出精美商城。更多小程序請查看:小程序商店