小程序支付(纯前端)

小程序支付

前期准备:

1、小程序内调用登录接口,获取到用户的openid 方法见:【小程序登录API】 2、调用商户服务器支付统一下单接口,进行预支付(后台) 3、调用商户服务器再次签名接口,返回支付数据 4、小程序内完成支付,商户服务器接收支付回调通知。


wx.requestPayment({

timeStamp: preData.timeStamp+"",

nonceStr: preData.nonceStr,

package: preData.package+"",

signType: MD5,

paySign: preData.paySign,


success(res) {

console.log(支付成功);

},

fail(res) {

console.log(支付失败);

return;

},

complete: function (res) {

console.log(支付完成);

if (res.errMsg == requestPayment:ok) {

wx.showModal({

title: 提示,

content: 购买成功

});

}

return;

}

})


BUG总结

  1. 商户号未与小程序绑定
  2. 通知地址不是https类型
  3. 交易类型没指定为JSAPI
  4. 订单号重复
  1. 参数错误,会返回调用支付jsapi缺少参数:total_fee,此时与签名没关系,需要检查方法参数,随机字符串和package对应的参数值,还有就是,下预订单使用的用户openid和拉起支付的用户,必须是同一个,不然会报错,我就是遇到这个错误。
经验分享 程序员 微信小程序 职场和发展