JAVA微信企业付款到零钱(十分钟搞定),附完整DEMO下载
最近帮朋友做了一个简单的微分销系统,实现从企业付款到零钱分润的功能,简单记录一下微信企业付款到零钱的开发过程,
主要就是按规则封装好请求参数调用微信接口,涉及一些签名校验;
A.接口流程

1. 获取用户OPENID ,不同用户在不同公众号下的OPENID都是唯一的, 这里主要讲企业付款到零钱,已经实现微信获取用户信息的骚年可以跳过这一步
https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140839
2. 参数签名,需要将参数签名传递到微信企业付款接口,如果之前有实现其他微信接口,可以复用原来签名方法
https://pay.weixin.qq.com/wiki/doc/api/tools/mch_pay.php?chapter=4_3
3. 调用企业付款接口
https://pay.weixin.qq.com/wiki/doc/api/tools/mch_pay.php?chapter=14_2
B.前置条件
1. 已开通微信应用(服务号或者小程序),主要用到APPID+OPENID
2. 已开通微信商户,并且开通企业付款到零钱,主要用到商户号+商户秘钥+商户证书




C.代码实现:
核心代码就是下面这个方法,其实把需要的参数准备好后逻辑就很简单了,实现的就是开发流程中定义的几个步骤;


D.最终效果

微信企业付款API的JAVA代码我打了个压缩包,有兴趣的骚年可以自己下载到本地,项目可以直接跑起来,需要把参数根据自己的实际情况进行配置;小程序和微信服务号操作流程都是一样的。
--企业付款DEMO下载-- 提取码: s7ps
E.常见问题
文章主要还是给大家提供思路,有网友留言说付款还是会遇到问题,可以加我的QQ:2172931891,尽可能帮助定位;
我了解反馈最多的是下面这几类问题,如果有遇到的话可以先自己排查下:
app_id (商户关联的应用ID)
mch_id (商户ID)
key (商户秘钥)
1.SIGNERROR 签名错误
-- 请求时编码要是全部设置为UTF-8;
-- key传的不正确,key和app_id一定要对的上,如果已经接入过微信支付,要确认这里的传的就是微信支付中用到的key;
-- 签名的参数和传递给微信的参数不匹配,一般是拼接参数不正确导致的,DEMO中参数已经配置好了,只要不修改参数的个数基本不会有问题;
2.NO_AUTH 此IP地址不允许调用接口
-- 新版本商户后台默认需要IP校验,有些人填192.168.1.XXX这种内网IP是不行的,可以访问ip168之类的网站获取自己的外网地址;在开发阶段也可以先关掉校验,方便本地调试;
3.OPENID_ERROR Openid错误
-- app_id和openid没对上导致的,比如公司同时开通了小程序和微信服务号,两个应用关联了同一个商户,极有可能就是用的小程序app_id作为参数,但是传的是微信服务号关联的openid
企业付款到个人零钱差不多就这些内容,希望可以给大家一点帮助 : )
原文链接(本人博客搬迁):https://blog.csdn.net/angryjiji/article/details/97398100
JAVA微信企业付款到零钱(十分钟搞定),附完整DEMO下载的更多相关文章
- 十分钟搞定pandas内容
目录 十分钟搞定pandas 一.创建对象 二.查看数据 三.选择器 十二.导入和保存数据 参考:http://pandas.pydata.org/pandas-docs/stable/whatsne ...
- 关于微信企业付款到零钱X509Certificate2读取证书信息,发布到服务器访问不到的解决方案
前言: 最近做了一个通过调用微信企业付款到用户零钱的功能,真的挺奇怪的,在我本地调试的时候都没有问题,但是当我发布到服务上的时候却一直无法读取到我的证书信息.读取的代码如下,使用的是微信官方文档提供 ...
- 十分钟搞定微信企业帐号“echostr校验失败,请您检查是否正确解密并输出明文echostr”
问题域:在这里我们只解决密文可以正确解密,但微信验证提示“echostr校验失败,请您检查是否正确解密并输出明文echostr”的问题. 干货:没有正确验证的原因是:你给微信返回的是字符串,而微信需要 ...
- 【原】十分钟搞定pandas
http://www.cnblogs.com/chaosimple/p/4153083.html 本文是对pandas官方网站上<10 Minutes to pandas>的一个简单的翻译 ...
- 十分钟搞定 pandas
原文:http://pandas.pydata.org/pandas-docs/stable/10min.html 译者:ChaoSimple 校对:飞龙 官方网站上<10 Minutes to ...
- 十分钟搞定pandas
转至:http://www.cnblogs.com/chaosimple/p/4153083.html 本文是对pandas官方网站上<10 Minutes to pandas>的一个简单 ...
- 【Python笔记】十分钟搞定pandas
本文是对pandas官方网站上<10 Minutes to pandas>的一个简单的翻译,原文在这里.这篇文章是对pandas的一个简单的介绍,详细的介绍请参考:Cookbook .习惯 ...
- 十分钟搞定mongodb副本集
mongodb副本集配置 最近项目中用到了mongodb,由于是用mongodb来记录一些程序的日志信息和日常的统计,为了增加应用的可靠性,一直在找mongodb集群的一些资料,下面是对最近做的一个小 ...
- 十分钟搞定CSS选择器
在最近的web开发中是不是就会用到一些选择器,发现很多尤其是CSS3新增的不太熟悉,在此总结一下. 优先级 不同级别 1. 在属性后面使用 !important 会覆盖页面内任何位置定义的元素样式. ...
随机推荐
- Hacker Fest: 2019 Vulnhub Walkthrough
靶机地址: https://www.vulnhub.com/entry/hacker-fest-2019,378/ 主机扫描: FTP尝试匿名登录 应该是WordPress的站点 进行目录扫描: py ...
- Python中的四种交换数值的方法
交换两个变量的值方法,这个面试题如果只写一种当然很简单,没什么可以说的. 今天这个面试是问大家有几种办法来实现交换两个变量的值. 在没开始看具体答案前,你可以先想想看 下面分别来说说这几种方法 方法一 ...
- ELK 安装部署小计
ELK的安装部署已经是第N次了! 其实也很简单,这里记下来,以免忘记. #elasticsearch安装部署 wget https://artifacts.elastic.co/downloads/e ...
- Angular常用VSCode插件
1.Angular 8 Snippets(全家桶) 2.TSLint(ts代码规范.错误提示) 3.Material Icon Theme(文件图标) 4.One Dark Pro(主题) 5.Ang ...
- ES6 解构 destructuring
解构的作用:简化书写长度,提升开发效率. 解构对象 在开发中我们常用到使用ajax请求数据,并且把数据渲染到页面上.可能这个数据返回的对象或数组.例如返回一个obj{name:'zwq',age:18 ...
- 华为开发者联盟 方舟编译器 DevEco IDE
华为开发者联盟 https://developer.huawei.com/consumer/cn/ 方舟编译器是为支持多种编程语言.多种芯片平台的联合编译.运行而设计的统一编程平台,包含编译器.工具链 ...
- 集合 set方法
集合 number = {1, 2, 4} # 添加元素到集合 number.add(100) print(number) # 从集合中删除 number.remove(2) print(number ...
- XTTS Creates Alias on Destination when Source and Destination use ASM (Doc ID 2351123.1)
XTTS Creates Alias on Destination when Source and Destination use ASM (Doc ID 2351123.1) APPLIES TO: ...
- Samba共享文件
1 安装samba yum install -y samba* 2 添加用户 useradd smbuser 3 设置共享文件用户的密码 smbpasswd -a smbuser 4 创建公共共享文件 ...
- 数理统计(二)——Python中的概率分布API
数理统计(二)——Python中的概率分布API iwehdio的博客园:https://www.cnblogs.com/iwehdio/ 数理统计中进行假设检验需要查一些分布的上分位数表.在scip ...