1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 微信小程序(6)说说微信小程序的支付流程?

微信小程序(6)说说微信小程序的支付流程?

时间:2018-12-10 04:25:48

相关推荐

微信小程序(6)说说微信小程序的支付流程?

一、前言

微信小程序为电商类小程序,提供了非常完善、优秀、安全的支付功能

在小程序内可调用微信的API完成支付功能,方便、快捷

场景如下图所示:

用户通过分享或扫描二维码进入商户小程序,用户选择购买,完成选购流程

调起微信支付控件,用户开始输入支付密码

密码验证通过,支付成功。商户后台得到支付成功的通知

返回商户小程序,显示购买成功

微信支付公众号下发支付凭证

二、流程

以电商小程序为例

支付流程图如下所示:

具体的做法:

打开某小程序,点击直接下单

wx.login获取用户临时登录凭证code,发送到后端服务器换取openId

在下单时,小程序需要将购买的商品Id,商品数量,以及用户的openId传送到服务器

服务器在接收到商品Id、商品数量、openId后,生成服务期订单数据,同时经过一定的签名算法,向微信支付发送请求,获取预付单信息(prepay_id),同时将获取的数据再次进行相应规则的签名,向小程序端响应必要的信息

小程序端在获取对应的参数后,调用wx.requestPayment()发起微信支付,唤醒支付工作台,进行支付

接下来的一些列操作都是由用户来操作的包括了微信支付密码,指纹等验证,确认支付之后执行鉴权调起支付

鉴权调起支付:在微信后台进行鉴权,微信后台直接返回给前端支付的结果,前端收到返回数据后对支付结果进行展示

推送支付结果:微信后台在给前端返回支付的结果后,也会向后台也返回一个支付结果,后台通过这个支付结果来更新订单的状态

其中后端响应数据必要的信息则是wx.requestPayment方法所需要的参数,大致如下:

wx.requestPayment({//时间戳timeStamp:'',//随机字符串nonceStr:'',//统一下单接口返回的prepay_id参数值package:'',//签名类型signType:'',//签名paySign:'',//调用成功回调success(){},//失败回调fail(){},//接口调用结束回调complete(){}})

参数表如下所示:

三、结束

小程序支付和以往的网页、APP微信支付大同小异,可以说小程序的支付变得更加简洁,不需要设置支付目录、域名授权等操作

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。