文章目录
前言
讲述:微信小程序在使用微信支付前。需要准备的东西及配置,如果去调用微信支付SDK及API
一、使用微信支付前-配置
- 登录微信公众平台-功能-微信支付-接入微信支付。进行申请微信支付。
注意: 功能下没有微信支付一栏,那就说明该小程序主体属于个人。个人主体小程序无法开通微信支付。
a、没有商户号的:就点击申请接入,进行创建商户号
b、有商户号的:点击查看指引,看怎么进行账号关联 - 已有商户号时:小程序关联商户号
链接: 账号关联指引 - 没有商户号时:进行创建商户号
然后填写相关资料就可以了。
a、 申请材料
b、营业执照:彩色扫描件或数码照片
c、组织机构代码证:彩色扫描件或数码照片,若已三证合一,则无需提供
d、对公银行账户:包含开户行省市信息,开户账号
e、法人身份证:彩色扫描件或数码照片
链接:创建商户号
二、技术实现
商户号创建完成,且账号关联完毕。接下来就可以代码集成了。
1、微信支付SDK:
SDK | 说明 |
---|---|
JS-SDK | 微信网页 JS-SDK |
小程序 | 小程序 API |
iOS | iOS 开发工具包 |
Android | Android 开发工具包 |
小程序微信支付:使用的是小程序API-wx.requestPayment,进行唤起微信收银台的。小程序支付
注意:小程序不能通过拉起H5页面做jsapi支付,小程序内只能使用小程序支付。
2、实现思路:
- 小程序端调用 wx.login(),拿到openid,openid是调用微信的下单接口时的必填参数
- 小程序端调用自己服务端的下单接口,传 openid 和其他一些业务参数,以便拿到核心支付参数
- 服务端收到小程序端请求后,调用微信平台的下单接口进行下单,同时组装微信支付的核心参数,timeStamp, nonceStr, package, signType, paySign成功后将这些参数返回给小程序端。
- 小程序端拿到服务端参数后,调用 wx.requestPayment() 唤起微信收银台。
- 用户输入支付密码后,返回小程序中,wx.requestPayment()的回调中有支付结果。
- 在 wx.requestPayment() 支付成功的回调中,调用服务端查询订单接口,为了触发服务端自主去向微信平台及时查询订单状态。
- 小程序端返回前一个页面刷新支付状态。
wx.requestPayment({
"timeStamp": '', // 时间戳
"nonceStr": '', // 随机字符串,长度为32个字符以下
"package": '', // 统一下单接口返回的 prepay_id 参数值,提交格式如:prepay_id=***
"signType": '', // 签名算法,应与后台下单时的值一致
"paySign": '', // 签名
"success": function(res){
// 这里支付成功回调。可以查询订单状态,刷新显示
},
"fail": function(res){},
"complete": function(res){}
})
3、调用wx.requestPayment成功后,开发者工具会弹出付款界面,需要扫码支付:
更多帖子请查看:
https://blog.youkuaiyun.com/Morris_/article/details/131830761