微信支付
哪些人 哪些账号 可以实现微信支付
- 企业账号
- 企业账号的小程序后台中 必须给开发者(微信)添加白名单
- 一个appid可以同时绑定多个开发者
- 这些开发者就可以共用这个appid 和 它的开发权限
支付流程
- 创建订单(获取订单号)
创建订单接口需要设置请求头
值为token
又因为获取token接口需要用到code参数
通过:用户登录成功(微信小程序内部登录wx-login)获取的code值
点击支付,判断缓存中是否有token,
如果有,发起创建订单请求
如果没有,跳转到授权页面,进行获取token
--
获取用户信息(getUserInfo,按钮)(拿到encryptedData,rawData,iv,signature)
获取code(wx.login)
发起请求获取token
获取到token后(存入缓存,返回上一个页面[支付页面])
在支付页面发起创建订单号请求(成功获取到订单号)
- 准备预支付(获取支付参数)
发起请求,获取支付参数[请求参数为订单号](返回的数据为调用微信支付所必须)
"pay": {
"timeStamp": "1564730510",
"nonceStr": "SReWbt3nEmpJo3tr",
"package": "prepay_id=wx02152148991420a3b39a90811023326800",
"signType": "MD5",
"paySign": "3A6943C3B865FA2B2C825CDCB33C5304"
},
- 发起微信支付(提交支付参数)
然后直接调起微信支付
wx.requestPayment({
timeStamp: '',
nonceStr: '',
package: '',
signType: 'MD5',
paySign: '',
success (res) { },
fail (res) { }
})
- 查询订单
查询后台订单状态(看一下是否真成功)
成功(跳转到订单页面)