微信小程序配置支付(附完整代码)

这篇具有很好参考价值的文章主要介绍了微信小程序配置支付(附完整代码)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


微信小程序配置支付(附完整代码)

1. 微信支付官网配置项

微信小程序配置支付(附完整代码)

  • 初次接入,商户号管理是没有数据的,需要申请接入。微信小程序配置支付(附完整代码)

  • 如果是在公司上班,让公司提供相关材料给你就是:
    微信小程序配置支付(附完整代码)

  • 个人开发的小程序,需要注册公司,并且开设对公账户,用于收款。如果怕麻烦,可以挂到别人公司(谨慎处理,涉及到对账什么的)
    微信小程序配置支付(附完整代码)

  • 提交资料,等待审核通过即可(一般1-3天)

  • 如果同一主体下其它小程序有已添加商户,是可以由小程序A接入小程序B的,有关联关系。关联成功如图:微信小程序配置支付(附完整代码)

  • 由此,我们会拿到一个唯一的商户号,这个是需要提供给后端的。

2. 代码配置(登录、获取openId、拉起支付等)

a. 完成登录,获取所需参数

  // 小程序加载函数
  onLoad: function (options) {
  	// 获取链接中的参数(非必需,看具体业务)
    this.setData({
      options: options
    })

    // 登录
    wx.login({
      success: res => {
      	// 获取参数
        this.setData({
          code: res.code,  // 微信传过来,做鉴权的
          sign: options.sign // 可选,根据业务来
        })
        if(this.data.options.phone){
          // 如果有电话,获取openId
          this.getOpenId()
        }
      },
      fail: err => {
        console.log(err)
      }
    })
  },

b. 获取openId

  getOpenId(){
    if(this.data.openId) {
    // 调取支付
      this.payFn();
      return
    }
    wx.request({
      method: 'GET',
      header: {
        sign: this.data.sign,
      },
      // 此处的code为上段代码获取到code,用于鉴权,
      // 请求接口,获取openId的时候,必须要带上,不然不知道是哪个用户!!!
      url: app.globalData.baseUrl + 'xxx' + '?jsCode=' + this.data.code,
      success: (res) => {
        console.log(res)
        if(res.data.status != 200) {
          return
        }
        // 存储用户信息 unionid 及 openId 后面支付会用到
        this.setData({
          userInfo: res.data.data
        })
        this.payFn();
      },
      fail: err => {
        console.log(err)
      }
    })
  }

c. 拉起支付

  payFn() {
    let sign = this.data.sign;
 	// 获取订单接口
    wx.request({
      method: 'POST',
      // 非必需的参数
      header: {
        sign: sign,
      },
      url: app.globalData.baseUrl + '/inner-crm/getOrder',
      data: {
        phone: this.data.options.phone,
        clickId: this.data.options.clickId,
        event: this.data.options.event,
        clueId: this.data.options.clueId,
        openId: this.data.userInfo.openid,
        unionid: this.data.userInfo.unionid
      },
      // 上一个接口成功,继而拉起支付(这里的逻辑也不是固定的,看需求来)
      // 因拉起支付接口的入参是从上一个接口来的
      success: (res) => {
        wx.requestPayment({
          timeStamp: res.data.data.timeStamp,  // 时间戳,必填
          nonceStr: res.data.data.nonceStr,    // 随机字符串,必填
          package: res.data.data.packages,    // 统一下单接口返回的 prepay_id 参数值,必填
          signType: "MD5",	// 签名算法 (非必填)
          paySign: res.data.data.paySign, // 签名,必填
          success(res) {
          	// 换成自己的逻辑即可
            wx.reLaunch({
              url: '/pages/xxx/index?sign='+sign,
            })
          },
          fail(err) {
            console.log('err:',err)
          }
        })
      }
    })
  },

3. 云开发示例

  • 如果服务端有使用云开发,可以通过云开发微信支付统一下单接口免鉴权获取以上所需所有参数:
// 云函数代码
const cloud = require('wx-server-sdk')
cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV
})

exports.main = async (event, context) => {
  const res = await cloud.cloudPay.unifiedOrder({
    "body" : "小秋TIT店-超市",
    "outTradeNo" : "1217752501201407033233368018",
    "spbillCreateIp" : "127.0.0.1",
    "subMchId" : "1900009231",
    "totalFee" : 1,
    "envId": "test-f0b102",
    "functionName": "pay_cb"
  })
  return res
}

// 小程序代码
wx.cloud.callFunction({
  name: '函数名',
  data: {
    // ...
  },
  success: res => {
    const payment = res.result.payment
    wx.requestPayment({
      ...payment,
      success (res) {
        console.log('pay success', res)
      },
      fail (err) {
        console.error('pay fail', err)
      }
    })
  },
  fail: console.error,
})

1. 希望本文能对大家有所帮助,如有错误,敬请指出

2. 原创不易,还请各位客官动动发财的小手支持一波(关注、评论、点赞、收藏)
3. 拜谢各位!后续将继续奉献优质好文
4. 如果存在疑问,可以私信我(主页有Q)

微信小程序配置支付(附完整代码)文章来源地址https://www.toymoban.com/news/detail-491538.html

到了这里,关于微信小程序配置支付(附完整代码)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【uniapp】将微信小程序的代码兼容支付宝小程序(持续更新)

    目前本身就有一套完善的微信小程序(兼容h5)的代码,现在的需求是将它编译成支付宝小程序,做好兼容的处理,以便后续接入支付宝服务商,在这里简单记录一下目前发现的把微信小程序编译成支付宝小程序的问题和解决方案。 建议配合其他人的记录一起看,这里只是我

    2024年02月09日
    浏览(157)
  • 微信小程序大转盘完整代码

    微信小程序大转盘完整代码 谢谢,代码简洁明了,生活不易忘多多支持,祝你前程似锦。 咨询问题,回复,“笔者”获取联系方式

    2024年02月11日
    浏览(97)
  • 微信小程序斗地主完整代码及步骤

    一、准备工作 1. 安装微信开发者工具,并登录微信小程序账号; 2. 准备斗地主游戏的图片资源; 3. 准备斗地主游戏的音效资源; 二、创建小程序 1. 打开微信开发者工具,点击“新建小程序”,输入小程序名称,选择小程序的项目目录,点击“创建”; 2. 在小程序的项目目

    2024年02月04日
    浏览(320)
  • 微信小程序:服务器请求、上传图片和提交表单开发完整代码实例

    该示例涉及服务器请求、上传图片、展示上传的图片,并提交表单,同时配合使用 WXML(微信小程序的前端页面结构)、WXSS(样式表)、以及 JavaScript(逻辑控制)。请注意,服务器端的实现将不在本示例范围内,您需要根据实际需求创建后端 API 来处理请求和上传的操作。

    2024年02月06日
    浏览(56)
  • 微信小程序使用canvas画布生成二维码海报分享图片(完整示例代码)

    canvas.js //获取应用实例 const app = getApp() Page({ /** 页面的初始数据 */ data: { // canvas _width: 0, //手机屏宽 _heigth: 0,//手机屏高 swiperHeight: 300,//主图图片高度 canvasType: false,//canvas是否显示 loadImagePath: ‘’,//下载的图片 imageUrl: ‘https://cos.myfaka.com/car/service/1.jpg’, //主图网络路径 codeU

    2024年04月12日
    浏览(99)
  • uniapp 微信小程序小票打印机打印教程(超详细讲解) 完整代码,下载后可直接使用

    天梦星官网 (tmxkj.top) https://tmxkj.top/#/   编程资源 直接上代码: html css 目录结构  核心代码代码下载 备注:核心代码在头顶上的zip当中 使用逻辑: 1.用户第一次进来点击连接,只用连接一次,只要用户不关闭程序就不会断开,可接着打印, 2.如果已经连接需要在主动加载函

    2024年02月15日
    浏览(250)
  • 【微信小程序支付功能】uniapp实现微信小程序支付功能

    场景 :要实现公司微信小程序的电商模块微信支付功能 一.实现步骤和思路 在登录状态,登录的时候获取到code,利用code获取到 openid: https://blog.csdn.net/weixin_45308405/article/details/128868377?spm=1001.2014.3001.5501 在manifest.json文件“App模块配置”项的“Payment(支付)”下,勾选“微信支付

    2024年02月11日
    浏览(61)
  • 【uni-app】UniApp实现微信小程序中拨打手机电话和长按加微信客服好友(完整代码示例)

    UniApp实现微信小程序中拨打手机电话和长按加微信客服好友(完整代码示例)

    2024年02月11日
    浏览(69)
  • 【微信支付】java-微信小程序支付-V3接口

    最开始需要在微信支付的官网注册一个商户; 在管理页面中申请关联小程序,通过小程序的 appid 进行关联;商户号和appid之间是多对多的关系 进入微信公众平台,功能-微信支付中确认关联 具体流程请浏览官方文档:接入前准备-小程序支付 | 微信支付商户平台文档中心 流程走

    2024年02月06日
    浏览(56)
  • 微信小程序支付流程

    申请微信支付,配置小程序秘钥,设置秘钥和下载证书,配置HTTPS服务器即可。 具体步骤 1、申请微信支付。小程序认证以后,可以在小程序后台,微信支付菜单栏,申请微信支付。填写企业信息和对公账户,微信支付会打一笔随机金额到对公账户,输入金额完成验证后,在

    2024年02月13日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包