小程序 支付流程

流程图在这里插入图片描述

实现基本思路

要知道每个人openID都是不同的,它是用户身份识别的id,也就是说,为了知道谁在支付,我们需要先获取当前用户的openid,通过openID来区分不同的用户,所以

首先使用小程序调用登陆接口通过wx.login()获取临时的登录权限code,在使用wx.request并把它传到开发者服务器( 【url:商户服务器登陆url ,code: code,method: ‘ 方法 ’ ,建议使用post安全,以及获取成功的函数和获取失败的函数 】)用来获取用户唯一标识的openid 和 会话密钥session_key,可以在获取成功的函数里获取一个token来进行用户验证,并将token存在小程序缓存中,
然后再调用一下下单接口,获取预支付信息prepay_id,将组合数据再一次签名,调用支付函数,会出现几种可能:
1,直接弹出支付,取消支付的话,去别的也页面,
2,如果购买余额足够 使用余额支付,需要传token,和订单id,
3,余额不够,取消支付不再支付,2,通过WXAPI.wxpay调用微信余额进行支付,确定支付时:通过wx.requestPayment()获取五个参数后,调起支付

//五个重要的参数
 timeStamp: res.data.timeStamp, //时间戳
        nonceStr: res.data.nonceStr,,//随机字符串
        package: res.data.package,//订单详情扩展字符串
        signType: res.data.signType//签名方式
        paySign: res.data.paySign,//签名

出现支付成功(【出现二维码扫码支付】)与支付失败(【网络不佳】)两种情况

在微信小程序中接入支付功能通常需要经过以下几个步骤: 1. **注册开发者账号**:首先,你需要在微信公众平台上注册成为开发者,并创建一个新的小程序项目。 2. **配置商户信息**:在小程序管理后台中,进入“账户中心”->“商家信息”,填写相关信息并提交审核,获取微信支付API密钥(包括AppID、AppSecret和商户号等)。 3. **引入支付SDK**:从微信官方下载微信支付JSAPI的JavaScript SDK,并将其添加到你的小程序项目中。 4. **申请支付权限**:在小程序的`app.json`文件中,设置“permission.codeManager”权限,用于处理用户的授权操作。 5. **实现支付接口**:在业务代码中,通过调用微信提供的`wx.requestPayment`函数,传入订单详情数据,如商品金额、标题等,以及上述获取的密钥。 ```javascript wx.requestPayment({ timestamp: 时间戳, nonceStr: 随机字符串, package: 'prepay_id=your_prepay_id', // 这里的prepay_id需要从前端服务器获取 signType: 'MD5', paySign: 签名, // 这里通过商户私钥生成 success: (res) => { // 支付成功回调,处理支付结果 }, fail: (err) => { // 支付失败回调,处理错误信息 } }); ``` 6. **用户授权及支付**:用户点击支付按钮后,会弹出授权窗口,同意后才会发起支付请求。支付成功后,微信会返回支付结果给你的服务器。 7. **服务器验证支付**:接收到用户的支付结果后,还需要在服务器端再次验证支付状态,并更新数据库中的订单状态。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值