java裂变_微信现金红包单一红包、裂变红包(Java版)
1.开通条件。
商户注册超过90天且,连续30天有交易,可以每天支付1元来刷,目前测试可行。随后在微信商户平台 - 产品管理自动开启,然后需要申请。
疑问:
必须是公众号的appid。
官方明文标注,移动应用的openID不支持现金红包,未测试。
补充:以下均已测试。
移动平台appid指定不能用,小程序的appid也不能用,必须公众号appid。小程序appid调用报错如下:
{
"re_openid": "oNicp49yn6IS4g7_OymNyWKuJ9O0",
"total_amount": "100",
"err_code": "ILLEGAL_APPID",
"return_msg": "非法appid,请确认是否为公众号的appid",
"result_code": "FAIL",
"err_code_des": "非法appid,请确认是否为公众号的appid",
"mch_id": "1545047571",
"return_code": "SUCCESS",
"wxappid": "wxdfc5c46e8cee32ca",
"mch_billno": "201912182735503554873384960"
}
Attention:如果主体里面有括号,注意英文括号和中文括号区别;
2.此类接口使用场景。
无论是微信还是支付宝,现金红包,单笔转账,企业转账等资金支出类接口都可以用作,活动营销、招新、邀请好友发送奖励、企业内部报销、合伙人团长提现等场景。
注意点:
a.微信商户账号需要有余额;
b.根据实际业务,比如发红包,需要做并发和同步锁处理,同时建议在商户平台开启防盗刷处理;
c.调用三方接口,看好官方文档,参数获取的对,传递的对,工具类找的好,基本就ok了;
d.不支持给非实名用户付款,如果报错,请处理,并且展示给前端可理解字段;
e.消息触达是通过公众号来的。是不是必须有公众号才行?
f.注意IP,和小程序的话是否开通红包。如下图。
调用成功返回参数示例:(已JSON化)
{
"re_openid": "oyKWXv5Qi6Niy6QeVkcfHFrhwhfU",
"total_amount": "100",
"err_code": "SUCCESS",
"return_msg": "发放成功",
"result_code": "SUCCESS",
"err_code_des": "发放成功",
"mch_id": "1545047571",
"send_listid": "1000041701201912183000095214356",
"return_code": "SUCCESS",
"wxappid": "wx81711a5ad592b",
"mch_billno": "201912182735817827822592000"
}
效果图:
未关注公众号将通过服务消息发送:
3.裂变红包。
注:因为是裂变,发放的时候随机红包,每个红包平均金额应该大于1元(微信商户平台可设置区间),如果设置3个人,至少要发放3000分。默认0.3元最低。
裂变红包,会有个分享好友按钮,可以红包分享出去。
请求成功示例:
{
"re_openid": "oyKWXv5Qi6Niy6QeVkcfHFrhwhfU",
"total_amount": "600",
"total_num": "6",
"err_code": "SUCCESS",
"return_msg": "发放成功",
"result_code": "SUCCESS",
"err_code_des": "发放成功",
"mch_id": "1545047571",
"send_listid": "1000041701201912183000114012418",
"return_code": "SUCCESS",
"wxappid": "wx81711a5公众号appidb",
"mch_billno": "201912182736124721187512320"
}
4.查询红包,支持普通和裂变。
注:查询红包返回XML不包含sign参数,所以无需对sign进行验证;另外,如果返回单据不存在,可能是红包还没落地;如下如果有list返回,xmlToMap还需要优化,出现了\n;
刚发送:
{
"send_type": "API",
"err_code": "SUCCESS",
"return_msg": "OK",
"err_code_des": "OK",
"hb_type": "GROUP",
"mch_id": "154504",
"detail_id": "1000041701201912183000122269301",
"mch_billno": "201912182736275882477608960",
"send_time": "2019-12-18 20:51:02",
"total_amount": "600",
"total_num": "6",
"result_code": "SUCCESS",
"return_code": "SUCCESS",
"status": "SENT"
}
一个人领取:
{
"send_type": "API",
"err_code": "SUCCESS",
"return_msg": "OK",
"err_code_des": "OK",
"hb_type": "GROUP",
"mch_id": "15450471",
"detail_id": "1000041701201912183000122269301",
"mch_billno": "201912182736275882477608960",
"send_time": "2019-12-18 20:51:02",
"total_amount": "600",
"total_num": "6",
"hblist": "\n\noyKWXv5Qi6Niy6QeVkcfHFrhwhfU\n227\n2019-12-18 20:52:48\n\n",
"result_code": "SUCCESS",
"return_code": "SUCCESS",
"status": "RECEIVED"
}
额外:
接口文档官方地址:https://pay.weixin.qq.com/wiki/doc/api/tools/cash_coupon.php?chapter=13_1
微信企业付款到零钱:https://blog.csdn.net/qq_31708763/article/details/103557402
获取用户公众号openID源码:https://gitee.com/JaneYork/tempwxuser
java裂变_微信现金红包单一红包、裂变红包(Java版)相关推荐
- 现金红包 java开发_微信现金红包开发1(JAVA)
参数3 : 商户订单号 mch_billno String mch_billno = mch_id + GenerateSequenceUtil.generateSequenceNo(); 些一个G ...
- 微信小程序java服务_微信小程序访问webService(Java)
在前台UI确认后,终于进入到后台服务的搭建及实现中.所及而来的问题就出现了,为了提高后台程序的可用性.设计初期决定,通过搭建java WebService实现.准备工作还是比较充分的,创建WebSer ...
- 微信公众平台java接口_微信公众平台自动消息接口(JAVA)
一个小DEMO,通过发送地理位置,获取今明两天的气温情况. 代码部署在了OpenShift平台:地区定位以及天气服务由雅虎提供. 微信文档: http://mp.weixin.qq.com/cgi-b ...
- 如何使用Java技术实现微信公众号海报裂变功能
海豚精灵:https://www.whhtjl.com:优课GO:https://mgo.whhtjl.com:张新民:财务报表分析 我们先看效果图: 项目地址:https://mgo.whhtjl. ...
- java 模板接口开发_微信公众平台 发送模板消息(Java接口开发)
前言:最近一直再弄微信扫码推送图文消息和模板消息发送,感觉学习到了不少东西.今天先总结一下微信公众平台模板消息的发送.因为这个自己弄了很久,开始很多地方不明白,所以今天好好总结一下. 微信公众平台技术 ...
- java读取微信消息_微信公众平台开发中使用Java如何实现获取用户的信息
微信公众平台开发中使用Java如何实现获取用户的信息 发布时间:2020-11-18 15:09:28 来源:亿速云 阅读:93 作者:Leah 本篇文章为大家展示了微信公众平台开发中使用Java如何 ...
- 微信公众号开发java流程_微信公众号开发教程java 编程语言的特点及选择
微信公众号开发教程java 编程语言的特点及选择 微信公众号为用户提供了相关的工具,来对微信公众号进行一个简单的开发.但是如果想实现一些复杂的功能,其实还是要借助于一些编程语言的使用.所以要了解,在微 ...
- java 分析java死锁_有益的CountDownLatch和棘手的Java死锁
java 分析java死锁 您是否曾经使用过java.util.concurrent.CountDownLatch ? 这是在两个或多个线程之间实现同步的非常方便的类,在该类中,一个或多个线程可以等待 ...
- aix系统java堆_浅谈AIX环境下的Java性能调优
1.什么是Java Java 是一种面向对象的编程语言.它以 C++ 为模型,被设计成小的.简单的.在源和二进制级别跨平台的可移植的语言,Java 程序(applets 和应用程序)可以运行于任何已经 ...
- 安装java环境_(一)环境安装之Java
安装java 点击 JDK8下载,根据自己的平台,选择相应的版本进行下载. 小知识: Java环境分JDK和JRE ,JDK就是Java Development Kit.简单的说JDK是面向开发人员使 ...
最新文章
- 使用java9的uuid生成方式,让uuid生成速度提升一个档次...
- 单元格自适应宽度_Dynamic Conv:自适应卷积内核有效提升网络模型的表征能力不增加模型深度和宽度,牺牲一点延迟...
- json数据交互---SpringMVC学习笔记(十二)
- 2020.8.26广联达笔试第二题——魔法师四种元素平衡(Python)
- 根据实例说数据库设计(一)—— 人员管理
- ERP与SCM之区别
- scrapy爬虫系列之三--爬取图片保存到本地
- 如何让mysql索引更快一点
- (王道408考研操作系统)第一章计算机系统概述-第一节1:操作系统基本概念以及目标和功能
- 遍历结果集java_java – 循环遍历while循环后如何将结果集重置为第一行
- SQL Server IF Exists 判断数据库对象是否存在的用法
- S11 day 94 RestFramework 之 APIView视图
- 于仕琪的人脸检测算法
- NSIS打包工具用法介绍与NSIS相关软件下载
- [资源]世界国家中英文名称以及地区区号json格式
- java中subject类_RxJava中常见的几种Subject
- 基于ppg和fft神经网络的光学血压估计【翻译】
- 用微信怎么定位别人手机位置
- 序数是什么意思_vlookup 列序数是什么意思
- 浙江理工大学校园网DNS性能测试脚本