位置: IT常识 - 正文

微信小程序支付完整流程(前端)(微信小程序支付接口调用)

编辑:rootadmin
微信小程序支付完整流程(前端)

推荐整理分享微信小程序支付完整流程(前端)(微信小程序支付接口调用),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:微信小程序支付怎么退款,微信小程序支付宝支付接口,微信小程序支付被限制,微信小程序支付方式,微信小程序支付费率是多少,微信小程序支付方式,微信小程序支付功能怎么实现,微信小程序支付怎么退款,内容如对您有帮助,希望把文章链接给更多的朋友!

 微信小程序中,常见付款给商家的场景,下面列出企业小程序中,从0起步完整微信支付流程。

一,注册微信支付商户号(由上级或法人注册)

 

 接入微信支付 - 微信商户平台

此商户号,需要由主管及更上级领导进行注册,会成为公司收款账户(不是由前端程序员注册!!!不是由前端程序员注册!!!不是由前端程序员注册!!!)

注册非常简单,重点是需要提供企业资料,一般程序员没有权限获取这些材料,所以需要由上级注册

企业注册需要材料:营业执照,对公银行账户信息,法人身份证

二,注册小程序账号(由上级或者领导注册)

注册流程简单,企业一般注册为企业小程序,非个人,需要上传营业执照等。

小程序

三,登录商户号绑定小程序

登录之前注册好的商户账号,将当前小程序ID绑定至此商户,表明此小程序可以调用此商户支付相关接口。

微信支付 - 中国领先的第三方支付平台 | 微信支付提供安全快捷的支付方式

四,后端工程师书写接口

返回核心数据如下:

"appId": "xxxx",

        "nonceStr": "xxxx",

        "packageValue": "prepay_id=xxxxx",

        "paySign": "xxxxxx",

        "signType": "MD5",

微信小程序支付完整流程(前端)(微信小程序支付接口调用)

        "timeStamp": "xxxxxx"

这个接口是你们公司后端程序员自己写的接口,由后端工程师书写,JAVA,PHP,C++,NODE,.NET等...不是前端写!不是前端写!不是前端写!如果没有此接口就与后端工程师沟通,让他书写。

五,前端工程师调用接口1. 获取openid(当前用户真实id)

       openid为当前用户真实id,无法直接用任何接口获得,需要先调用微信login接口登录,获取登录凭证code,在通过此code(登录凭证,5分钟有效),向微信服务器换取用户openid。

原生小程序登录:

wx.login({ success (res) { if (res.code) { // code: 用户登录凭证(有效期五分钟) // 使用 code 可以换取 openid、unionid、session_key 等核心信息 } else { console.log('登录失败!' + res.errMsg) } }})

uniapp登录:

uni.login({ provider: 'weixin', success (res) { if (res.code) { //code: 用户登录凭证(有效期五分钟) //使用 code 可以换取 openid、unionid、session_key 等核心信息 } else { console.log('登录失败!' + res.errMsg) } }})

发送请求调用微信官方接口,用code凭证换取用户openid(真实用户id)

原生小程序:wx.request     uniapp: uni.request, 流程无差别

uni.request({ url: `https://api.weixin.qq.com/sns/jscode2session`, //微信官方接口 data: { appid: '小程序appId', secret: '小程序密钥,在小程序appId下一行,放一块在', js_code: '刚才获取的code', grant_type: 'authorization_code' //固定值 }, success: (res) => { //获取openid:用户真实唯一id console.log(res.data.openid); }})3. 调用公司后端接口,获取支付核心数据// 调用后端接口uni.request({ url: '你们公司的后端接口地址,获取支付核心数据', method: 'POST', data: { 接口需要什么参数就传给接口,包含扣款金额,订单id等 }, success(obj) { console.log(obj) }})

此接口必须返回以下6个核心数据,都是由后台计算生成。

"appId": "xxxx",

        "nonceStr": "xxxx",

        "packageValue": "prepay_id=xxxxx",

        "paySign": "xxxxxx",

        "signType": "MD5",

        "timeStamp": "xxxxxx"

3. 调用微信官方支付接口,弹出支付界面uni.request({ url: '你们公司的后端接口地址,获取支付核心数据', method: 'POST', data: { 接口需要什么参数就传给接口,包含扣款金额,订单id等 }, success(obj) { //调用微信官方支付接口弹出付款界面,输入密码扣款 wx.requestPayment({ timeStamp: obj.xxxx.timeStamp, //后端返回的时间戳 nonceStr: obj.xxxx.nonceStr, //后端返回的随机字符串 package: obj.xxxx.packageValue, //后端返回的prepay_id signType: 'MD5', //后端签名算法,根据后端来,后端MD5这里即为MD5 paySign: obj.xxxx.paySign, //后端返回的签名 success (res) { console.log('用户支付扣款成功', res) }, fail (res) { console.log('用户支付扣款失败', res) } }) }})

调用后,弹出付款界面,模拟器需要扫码支付。

点击真机调试会直接弹出微信付款界面。

六,总结

前端调用uni.login/wx.login调用微信接口,获取code,code相当于临时身份证

前端调公司后台获取openid的接口,获取openid

前端调公司后台预支付接口,传递openid、商品id、商品单价、商品数量,获取那5个参数。【时间戳timeStamp,随机字符串nonceStr,预支付id package,签名算法signType,签名paySign】

前端调用uni/wx.requestPayment调用微信支付方法,传递5个参数,获取支付结果(成功或失败)

本文链接地址:https://www.jiuchutong.com/zhishi/299448.html 转载请保留说明!

上一篇:Java Timer(定时器)(java定时器怎么用)

下一篇:新必应申请与使用教程:让你体验人工智能搜索引擎(新必应申请使用资格)

  • 退税现金流量表做哪里
  • 交通事故的支出是否可以个税税前扣除
  • 个人劳务报酬所得汇算清缴
  • 新成立的公司企业所得税怎么申报
  • 社保缴费基数什么意思
  • 盘盈资产开具发票是否符合规定
  • 企业走账的会计处理
  • 应付账款的进项税分录
  • 公司开业前期费用处理
  • 电商刷单的成本如何处理?
  • 设备的配件怎么做分录
  • 差旅补贴需要缴纳个税吗
  • 房产税和土地使用税计入什么科目
  • 房产增值税是怎么交的呢
  • 增普票付款要不要从公户走?
  • 录入凭证利息收入负数怎么录入?
  • 食堂货款报账明细表
  • 定额备用金的账务怎么做
  • 营改增后兼营非应税劳务的税务处理怎么做?
  • 小企业短期投资的核算应设置的会计科目有
  • valorant!
  • 银行承兑汇票接收
  • 差旅费账务处理例子
  • php获取图片
  • php ftp功能
  • 超过认证期的发票怎么办
  • 博茨瓦纳热吗
  • laravel debug rce
  • php 反代
  • 盘盈的存货计入哪个科目
  • ai模拟
  • yolo算法百度百科
  • phpcms是什么意思
  • wordpress怎么用
  • 企业在建工程领用原材料的会计分录
  • 筹建期间发生的开办费用
  • 员工洗衣机使用制度
  • sqlserver2008数据库定时备份
  • 工厂道路设计规范
  • sql2008数据库维护计划
  • 商家的这些行为对消费者的购买行为有什么影响
  • 物业公司物业费计入什么会计科目
  • 普通发票为什么只能领一张
  • 实收资本印花税最新规定
  • 当月作废的发票是否需要报税
  • 承包经营所得个人所得税计算举例
  • 政府补贴资金如何记账
  • 银行扣款能撤回吗
  • 无形资产根据什么科目填列
  • 收到社保局的稳岗通知
  • 资产负债表中应付职工薪酬是负数
  • 汇算清缴弥补以前年度亏损多少年
  • 商品折扣计入哪个科目
  • 加计扣除要交企业所得税吗
  • 新企业建账
  • sqlserver数据库备份
  • sql server复制数据库的方法
  • win8操作
  • windowsxp休眠设置
  • linux服务器安装虚拟机
  • centos怎么查看文件
  • windows2008和win8
  • 升级win10时蓝屏
  • win8 更改电脑设置
  • win8.1系统升级win10
  • web项目可以打包成jar包吗
  • 联想 恢复
  • 电脑没有声音了是怎么回事
  • win10mobile最新版本
  • 怎么删除listview条目
  • Unity3D游戏开发标准教程
  • java多线程产生死锁
  • 你需要知道的100位艺术大师
  • python调用python代码
  • sql怎么增删改
  • [推荐]抖音上那些好看的视频和有才的帐号
  • js图片预览
  • 物业收电费有什么猫腻
  • 没盖发票专用章可以补盖吗
  • 浙江国地税联合税务局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设