最近客户平台做的越来越大了,之前给代理商的分红都是提现到微信零钱的,由于数额比较大了,于是他们就想直接把钱提现到银行卡里,翻阅了一遍“微信”的官方文档,一如既往地各种烦躁,心里那个万马奔腾呀,无奈还得用人家呀,只能求助万能的的“度娘”了,有价值的文章毕竟是寥寥无几,不管怎样,最终还是把功能实现了,万幸!!!!!!!

此文仅作记录,以备查用

首当其冲的是参数的加密算法:

虽然这里有获取公钥的文档,但是相信还是有很多人跟我一样,看了文档也不知所措的。不废话了,下面上干货:

这里第一步先 发送http请求获取公钥文本,注意这里发送的请求必须携带商户号证书才可以

String nonce_str = WeixinUtil.genNonceStr();
Map<String, String> packageParams = new HashMap<>();
packageParams.put("mch_id", WXConfig.sub_mch_id);
packageParams.put("nonce_str",nonce_str);
packageParams.put("sign_type", "MD5");
String prestr = PayUtils.createLinkString(packageParams);
String sign = PayUtils.sign(prestr, WXConfig.sub_mch_key, "utf-8").toUpperCase();
String xml="<xml>"+"<mch_id>"+WXConfig.sub_mch_id+"</mch_id>"+"<nonce_str>"+nonce_str+"</nonce_str>"+"<sign>"+sign+"</sign>"+"<sign_type>"+"MD5"+"</sign_type>"+"</xml>";
String result= HttpUtil.sendPostWidthCert("https://fraud.mch.weixin.qq.com/risk/getpublickey", xml,WXConfig.sub_mch_id);
Map<String, String> resultData = WeixinUtil.doXMLParse(result);
if(resultData.get("result_code").equals("SUCCESS")){System.out.println(resultData.get("pub_key"));
}else{System.out.println("获取微信证书失败:"+resultData.get("return_msg"));
}

代码里的工具类文章结尾的源码里都有。

执行上面代码后,获取到了公钥文本为PKCS#1格式(如下图所示),全选复制后,以此文本内容创建一个名叫publicKey.pem的文本文件

然后在命令行里执行命令:

openssl rsa -RSAPublicKey_in -in publicKey.pem -pubout

执行完上面的命令后,就会得到PKCS#8版本的公钥了,Java只能使用PKCS#8版本的公钥,如果您的系统没有安装openssl,请自行安装,这里不做赘述

最后把上面红色框里的内容复制并创建一个 pksc8_public.pem的文本文件即可,这个就是我们加密时需要用到的公钥文件了,不得不说微信这里实在太绕了,直接个PKCS#8版本的文件下载接口不就完事了?

然后就是第二个坑了,提现请求完了以后,怎么查询提现结果呢?找了N遍都没找到查询接口在哪里?跟我躲猫猫呢?最后在一位博主的博客里看到了,那位博主用的是php语言。

提现到银行卡的结果查询接口是:

https://api.mch.weixin.qq.com/mmpaysptrans/query_bank

最后,我整理了一份demo,里面包含了提现到微信零钱,提现到银行卡;以及两种提现方式的结果查询功能,创作不易,收点小小费用,介意的请绕行,实在经济困难的也可私信我要

资源链接

微信商户号转账到个人银行卡加密算法及结果查询问题相关推荐

  1. [微信] 微信商户号 资金解决方案 自动提现 关闭

    关键字:微信商户号 资金解决方案 自动提现 关闭 说起来真坑爹,有些客户能看到自动提现,有些客户看不到自动提现,找了很久,才找到问题所在. 请看: https://cloud.tencent.com/ ...

  2. 微信商户号 API 密钥、API 证书配置

    一个全新的商户号如何生成 API 密钥.API 证书的操作教程 商户号关联小程序是为了在小程序中能够使用商户号进行微信支付, 关联公众号亦如此 只是使用商户号的支付功能可以不配置 API 证书,因为 ...

  3. 多个微信服务号对接一个微信商户号流程

    微信服务号发送红包需要开通对应的微信商户号,如果多个微信服务号开通多个微信商户号会非常麻烦,项目管理上也会非常乱,写下多个微信服务号对接一个微信商户号的流程. 先登录微信商户平台,产品中心下的APPI ...

  4. 微信商户号关联多个公众号

    因回调地址数量限制,一个公众号下面只能有2个授权回调地址.一套财务收费系统接到了另一个公众号下,如何将该收费商户号关联到多个公众号? 配置: 1.登录微信商户号,地址:微信支付 - 中国领先的第三方支 ...

  5. 微信商户号商家转账到零钱v3接口证书生成步骤

    先打开命令窗口,按以下步骤做,电脑系统随意,建议是linux或macOs 一.生成时间戳 jzp@MacMini ~ % date +%s 注:时间是5分钟有效 结果:1672114604 二.生成一 ...

  6. 微信商户平台转账到零钱功能接入实战

    1.背景说明      2.实现过程          2.1 接入之前的准备工作          2.2 代码实现      3.注意事项以及相关说明          3.1 参数组装说明    ...

  7. 微信商户号25位招商银行号

    今天公司商户号修改绑定手机号的时候,需要商户号的对公账户对指定账户转账,结果腾讯发了个25位的招商银行号,通常招商号要么15位要么16,对公账户转账结果是找不到账户,根本没有25位的银行号啊 ~\(≧ ...

  8. 信支付jsapi(java版)【1】微信商户号mchid哪里找 2017年02月28日 08:45:33

    我们在开发微信支付功能的时候首先必须确定两个非常重要的参数,就是商户号mchid和商户秘钥key,那么这两个参数在哪里获取呢,请仔细阅读下面的查询方法. 一.微信支付商户号mchid的查找 1.1.登 ...

  9. 千分之二手续费0.2费率微信支付商户号申请

    开通准备资料: 1.营业执照照片 2.法人身份证照片正面.背面 3.开户行信息,对公账号或个人银行卡(开户行.卡号.开户地.分支行) 4.客服电话.邮箱 5.微信公众号或微信小程序appid 开通流程 ...

  10. 微信支付, 小程序,公众号, 商户号 需要进行的配置

    目录 一 微信公众号 1.1 公众号基础信息配置 1.2 白名单配置 1.3 公众号开发人员配置 1.4 域名授权配置 1.5 服务器配置 二 微信小程序 2.1 开发设置 2.2 域名设置 2.3 ...

最新文章

  1. 跳至下一个断点_基金经理:DeFi将推动以太坊在下一个上涨周期中涨至9000美元...
  2. Oracle触发器的语法详解
  3. 函数计算搭建小程序Web应用后端服务
  4. [排序][二分][dp]JZOJ 2747 捡金子
  5. 如何用python写html的插件,使用python开发vim插件及心得分享
  6. 用cookie实现叶卡的记忆功能
  7. 让SharePoint站点输出详细错误信息[转]
  8. Oracle例外处理
  9. CIO们拼命都想上的“网红”中台,也有它的另一面
  10. PHP命名空间带来的干扰
  11. 7-8 猜数字 (20 分)
  12. 小米max刷鸿蒙,小米Max刷recovery教程_小米Max第三方recovery下载
  13. 流量卡之家:物联网僵尸网络和DDoS攻击:构建网络风险防火墙
  14. export_savedmodel
  15. 如何禁用手机自带的输入法软键盘
  16. 自动驾驶(七十二)---------LQR控制算法
  17. 5个超经典实验,老杨带你高效进阶OSPF
  18. 通信算法之三:LDPC码的研究
  19. 【厚积薄发系列】Python项目总结2—Python的闭包
  20. 取消Rainbow Brackets彩色框

热门文章

  1. 代理模式和装饰者模式区别
  2. win10安装时有个修复计算机,电脑开机提示自动修复怎么办?win10电脑开机提示自动修复教程...
  3. 网页制作html怎么居中,网页制作中的水平居中和垂直居中解决方法集合
  4. Unity 小程序开发
  5. 推挽电路整理-三极管推挽电路
  6. IDM如何设置深色模式
  7. 计算机指令load是什么意思,overload
  8. 全国通用DNS服务器
  9. 上海市申请享受生育保险待遇的程序
  10. mysql数据迁移双写_【数据迁移】在线数据迁移 :双写数据库、搬历史数据、切换写入、灰度验证(99.9999%)、删除历史-Go语言中文社区...