背景:

近期一个朋友公司要做活动,活动放在小程序上。小程序开发倒是不难,不过要使用小程序给微信用户发红包,这个就有点麻烦

确定模式:

小程序目前没有发红包接口,要实现的话,只能是模拟红包,即小程序上做出红包的效果,实质使用别的支付方式代替

1、首先想到的是企业支付,简单快捷,只要在后端调用企业支付的接口即可。不过这种方式有一个很大的弊端,支付最低金额限制为1元。而公司营销为了节约成本,大多数都是几毛钱的红包

2、使用公众号代替小程序发红包,先在微信公众平台关联小程序和公众号,由于每个用户针对小程序和公众号各有一个openid,所以只能使用unionid关联。

方法:

   (1)、先通过公众号接口获取access_token

   (2)、在服务器调用接口获取已关注公众号的微信用户列表,列表能返回关注公众号的用户的openid(每个微信号针对每个公众号有唯一的openid)

     (3)、在服务器调用接口逐个获取用户基本信息,将获取到的unionid和openid保存

      (4)、通过小程序以同样的方法获取unionid及公众号的openid,在小程序服务端调用公众号发红包接口,给对应的微信用户发公众号红包

缺点:要通过公众号发放红包,达不到最好的效果,而且在有设置活动的前提下,才能发低于1元的红包

  3、使用第三方平台发放红包,比如聚分云等,不过效果也很差,暂时没实践

4、使用模拟红包,保存发放的金额。当总余额大于等于1的时候,允许用户提现。实质是使用企业支付

结语:

以上就是几种使用小程序发红包的方式,开发过程中也是一直踩坑。目前微信小程序有发红包的接口,但是还是内测。只能将就着用了

微信小程序发红包的更多相关文章

  1. 微信小程序红包开发 小程序发红包 开发过程中遇到的坑 微信小程序红包接口的

    最近公司在开发一个小程序红包系统,客户抢到红包需要提现.也就是通过小程序来给用户发红包. 小程序如何来发红包呢?于是我想到两个方法. 之前公众号开发一直用了的.一个是红包接口,一个是企业支付接口.一开 ...

  2. 微信小程序红包开发 小程序发红包 开发过程中遇到的坑 微信小程序红包接口的

    微信小程序红包开发 小程序发红包 开发过程中遇到的坑 微信小程序红包接口的   最近公司在开发一个小程序红包系统,客户抢到红包需要提现.也就是通过小程序来给用户发红包. 小程序如何来发红包呢?于是我想 ...

  3. 微信小程序发送红包功能。填坑记录

    微信官方文档 1.开通条件 (1)商户号已入驻90日 (2)商户号有连续30天正常交易 (3)只有企业资质的商户才有资格申请 2.注意事项 (1)目前小程序红包仅支持用户微信扫码打开小程序 (2)小程 ...

  4. 小程序红包开发跳坑记 微信小程序红包接口开发过程中遇到的问题 微信小程序红包开发

    现在做小程序的越来越多,商家推广也是一个瓶颈,谁不发点红包,都很难找到人来用你的微信小程序了.于是不管你开发什么小程序功能,你或多或少都要用到小程序来发红包吧.  我们自己之前做公众号发红包,做了两三 ...

  5. 小程序语音红包开发中 汉字转拼音的问题 微信小程序红包开发遇到的坑

    公司最近在开发微信小程序的红包功能,语音红包需要用到文字转拼音的功能. 之前介绍过怎么将中文的汉字转为拼音的,具体看下面这篇文章. 微信语音红包小程序开发如何提高精准度 红包小程序语音识别精准度 微信 ...

  6. 微信小程序红包开发思路 微信红包小程序开发思路讲解

    之前公司开发小程序红包,将自己在开发的过程中遇到的一些坑分享到了博客里.不少人看了以后,还是不明白怎么开发.也加了我微信咨询.所以今天,我就特意再写一篇文章,这次就不谈我开发中遇到的坑了.就主要给大家 ...

  7. 小程序发微信红包后端Nodejs实现

    前提条件 1.有一个微信开放平台 https://open.weixin.qq.com/ 2.有一个微信公众平台 https://mp.weixin.qq.com  并且开通微信支付 3.有一个微信小 ...

  8. 微信小程序访问豆瓣api403问题解决方发法

    微信小程序访问豆瓣api403问题解决方法一览:通过豆瓣api可以获取很多电影.书籍等的数据信息.昨晚上用微信小程序请求豆瓣api,竟然被豆瓣拒绝了.(豆瓣设置了小程序的访问权限):下面就跟着小编一起 ...

  9. 最近火到不行的微信小程序的常识

    满网都是微信小程序,技术dog们不关注都不行了.先别忙着去学怎么开发小程序,先纠正一下你对微信小程序的三观吧~~~~ 小程序目前被炒得沸沸扬扬,无数媒体和企业借机获取阅读流量. 这再次证明一点,微信想 ...

随机推荐

  1. linux配置jdk环境变量

    首先在Linux解压后缀为.tar.gz的jdk压缩文件 解压到当前的文件夹 tar -zcvf /root/java/jdk版本编号 指令: cd 目录路径     -> 是进入该目录路径 c ...

  2. Linux查找文件内容

    从当前目录递归查找文件名为 .py 中包含 conf 的文件名: find -name "*.py" | xargs grep "conf"

  3. 关于ML.NET v0.5的发布说明

    适逢.NET Conf 2018举办,ML.NET v0.5也正式宣布发布了.作为面向.NET开发人员的跨平台开源机器学习框架,新的预览版本在不断演变,每次发布除了有新的功能添加,API也会进行调整, ...

  4. Android--从系统Camera和Gallery获取图片优化

    前言 之前有两篇博客讲解了如何从系统内已有的Camera和Gallery应用中获取图片的例子,看到评论里有朋友说有时候会报错,导致程序崩溃的问题.本篇博客主要就这个问题分析讲解一下,最后将以一个简单的 ...

  5. 理解和使用Promise.all和Promise.race

    一.Pomise.all的使用 Promise.all可以将多个Promise实例包装成一个新的Promise实例.同时,成功和失败的返回值是不同的,成功的时候返回的是一个结果数组,而失败的时候则返回 ...

  6. StackExchange.Redis .net core Timeout performing 超时问题

    最近在做的一个项目,用的.net core 2.1,然后缓存用的Redis,缓存相关封装是同事写的,用的驱动是StackExchange.Redis version 2.0.571 ,一直听说这个驱动 ...

  7. Spring Cloud学习笔记-011

    分布式配置中心:安全保护 由于配置中心存储的内容比较敏感,做一定的安全处理是必需的.为配置中心实现安全保护的方式有很多,比如物理网络限制.OAuth2授权等.由于微服务应用和配置中心都构建与Sprin ...

  8. leetcode — flatten-binary-tree-to-linked-list

    import java.util.ArrayList; import java.util.Arrays; import java.util.List; /** * Source : https://o ...

  9. PE知识复习之PE的重定位表

    PE知识复习之PE的重定位表 一丶何为重定位 重定位的意思就是修正偏移的意思.  如一个地址位 0x401234 ,Imagebase = 0x400000 . 那么RVA就是 1234.  如果Im ...

  10. 解读经典《C#高级编程》第七版 Page94-100.继承.Chapter4

    前言 今天,我们开始进入第四章的解读.本章讲的是继承.要做稍微复杂一些的开发,便不可避免的会使用到继承.本篇文章我们主要解读"实现继承". 另外,从本文开始,我开始使用Markdo ...