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