小程序調起支付API
服務商模式小程序調起支付簽名字段列表:
字段名 | 變量名 | 必填 | 類型 | 示例值 | 描述 |
---|---|---|---|---|---|
小程序ID | appId | 是 | String | wxd678efh567hg6787 | 微信分配的小程序ID,服務商模式下應為當前調起支付小程序的appid |
時間戳 | timeStamp | 是 | String | 1490840662 | 時間戳從1970年1月1日00:00:00至今的秒數,即當前的時間 |
隨機串 | nonceStr | 是 | String | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS | 隨機字符串,不長于32位。推薦隨機數生成算法 |
數據包 | package | 是 | String | prepay_id=wx2017033010242291fcfe0db70013231072 | 統(tǒng)一下單接口返回的 prepay_id 參數值,提交格式如:prepay_id=* |
簽名方式 | signType | 是 | String | MD5 | 簽名類型,默認為MD5,支持HMAC-SHA256和MD5。注意此處需與統(tǒng)一下單的簽名類型一致 |
舉例如下:
paySign = MD5(appId=wxd678efh567hg6787&nonceStr=5K8264ILTKCH16CQ2502SI8ZNMTM67VS&package=prepay_id=wx2017033010242291fcfe0db70013231072&signType=MD5&timeStamp=1490840662&key=qazwsxedcrfvtgbyhnujmikolp111111) = 22D9B4E54AB1950F51E0649E8810ACD6
詳細簽名算法請參考“簽名算法”說明
調用wx.requestPayment(OBJECT)發(fā)起微信支付
接口名稱: wx.requestPayment,詳見小程序API文檔
Object參數說明:參數 | 類型 | 必填 | 說明 |
---|---|---|---|
timeStamp | String | 是 | 時間戳從1970年1月1日00:00:00至今的秒數,即當前的時間 |
nonceStr | String | 是 | 隨機字符串,長度為32個字符以下。 |
package | String | 是 | 統(tǒng)一下單接口返回的 prepay_id 參數值,提交格式如:prepay_id=* |
signType | String | 是 | 簽名算法,暫支持 MD5 |
paySign | String | 是 | 簽名,具體簽名方案參見微信公眾號支付幫助文檔; |
success | Function | 否 | 接口調用成功的回調函數 |
fail | Function | 否 | 接口調用失敗的回調函數 |
complete | Function | 否 | 接口調用結束的回調函數(調用成功、失敗都會執(zhí)行) |
回調結果:
回調類型 | errMsg | 說明 |
---|---|---|
success | requestPayment:ok | 調用支付成功 |
fail | requestPayment:fail cancel | 用戶取消支付 |
fail | requestPayment:fail (detail message) | 調用支付失敗,其中 detail message 為后臺返回的詳細失敗原因 |
示例代碼:
wx.requestPayment(
{
"timeStamp": "",
"nonceStr": "",
"package": "",
"signType": "MD5",
"paySign": "",
"success":function(res){},
"fail":function(res){
},
"complete":function(res){}
})