微信小程序支付流程:
上图摘自官方文档:
https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=7_4&index=3
微信小程序支付其实很简单,我把他拆成以下几个简单的步骤:
1、登录获取code;
2、用code向服务端换取openid;
3、向服务端获取数据签名;
4、调用小程序API唤起支付弹窗;
向服务端换取签名方式、签名、时间戳、预付款id等
data = 请求数据签名返回的数据。
wx.requestPayment({
timeStamp: data.timeStamp,
nonceStr: data.nonceStr,
package: data.package,
signType: 'MD5',
paySign: data.paySign,
// 支付成功回调
success (res) { },
// 支付失败回调
fail (err) { }
})
小程序支付的限制问题
小程序支付在ios端是有一定限制的。
不知道大家有没有遇到这种情况,所购买的商品为虚拟商品时(像课程、会员等),
小程序是无法通过审核的。即使不在小程序内进行购买,引导用户到外部支付
也是不会被通过。更甚至有“购买”、显示价格的字段出现时审核也不会通过。
下面是审核不通过的原因:
针对ios端不支持虚拟支付的情况,官方给出了一些解决办法。
来看一下腾讯视频的处理方式:
更详细内容可以查看官方文档:
https://developers.weixin.qq.com/miniprogram/product/#_5-13-%E8%99%9A%E6%8B%9F%E6%94%AF%E4%BB%98%E8%A1%8C%E4%B8%BA