今日有个在同一个小程序支付 款项需要付到不同的银行卡里去???

于是找了下微信小程序支付文档,只有个requestPayment方法

emmm 去看看小程序后台吧

ok 有个微信支付  但是只能绑定一个商户号。。。死路

遂找到一位踩过坑的大佬的文章https://www.jianshu.com/p/209001043837

试试。
首先

注册服务号!划重点 一定是服务号。别的不行。然后就是例行操蛋的微信认证。300元。

认证完找到微信支付----》服务商申请

其中:无资金结算功能,商户交易资金直接结算至商户的账户;

这不就是我们要的功能吗?!开搞

然后又是例行操蛋申请过程 繁复无比。ok不要紧 ,能实现需求就是好猫?

然后开始配置服务商

1、API密钥  这个很重要,支付的签名验证需要它 这个是在账户中心--》API安全--》API密钥

修改好即可 生成密钥可以去这里---》http://tool.chinaz.com/tools/md5.aspx

2、申请服务商的特约商户  即申请需要支付到对应对公账户的商户号(这里说明下,注册服务商需要对公账户,这个对公账户已经注册为服务商了 就不能再成为特约商户,需要注意。即总店不能作为分店再次注册)

申请过程略

申请完后找到 服务商功能--》特约商户管理--》配置

(1)修改公众号支付域名 即自己api域名

(2)支付回调地址修改 注意 这里是地址 不是域名

(3)特约商户APPID配置 即绑定需要支付的功能小程序

至此 服务商配置完成。OK 开始激(fei)动(chang)人(e)心的代码环节。

首先的打开坑爹的微信服务商统一下单文档

ok 头有点晕  咱们先不去深入理解他 提取几个需要的参数(keng)就好

1、appid  注意⚠️ 这里是用服务号的appid 不是小程序的

2、mch_id 这里是用服务商的id 在我的账号一栏可以找到

3、sub_appid  这里才是小程序的appid

4、sub_mch_id 这里对应特约商户号id 付款到对应商户的凭证就是这个 在注册特约商户的时候邮件里可以找到 这里建议配置到数据库动态传递

5、nonce_str 随机字符串  没什么好说的

6、body 自行看文档

7、out_trade_no 订单号

8、total_fee 自行看文档

9、trade_type 自行看文档

10、sub_openid 此参数是巨坑 需要在发起支付前在小程序内调起wx.login 方法获得code 然后后台通过置换 获得用户openid,与之前登陆时获取保存的openid不是同一个 需要注意

11、spbill_create_ip 自行看文档

12、notify_url 自行看文档

13、sign 此参数为签名参数 需要将需要传递的参数进行排序并且进行md5签名,需要注意的是需添加参数key 即之前修改的服务商api密钥(见代码)

好了 参数分析完毕 在后台调用统一下单方法 不出意外是成功的 代码见这里(此代码为java且是本人整理的 如有错误请指正)

返回结果居然是xml格式的  emmm

ok 获取到我们此行的重要参数 prepay_id  

同时还获取到了一堆!@#¥%

不管 直接回传小程序

至此 统一下单预支付完成,具体实现还得结合自身业务需求

--------------分割线-------------------

小程序开始调起微信支付 也就是我们最先看的微信小程序支付文档

惊(ju)喜(keng)来了

参数分析

1、timeStamp 没什么好说 注意是精确到秒的时间戳 毫秒貌似不行

2、nonceStr 这个参数是统一支付回传回来  使用即可 建议存数据库

3、package 格式如下:"prepay_id=xxxxxxx" 此参数也使用统一支付回传回来的 建议存数据库

4、signType 填md5  没什么好说

5、paySign 此参数巨坑 ,请注意

首先进行此参数拼接 先看文档--https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=7_7&index=3

其中的巨坑就是这两个参数

(1)appId 此参数不是回传的appid啊 使用小程序的appid!!

(2)key 此参数也不要使用回传的 是用之前在服务商里修改api密钥!

哎呀吗 可把我坑惨了 往死了报 商户签名错误  我!@#¥%& 坑爹文档 记住一点不要使用回传里的参数即可

可以考虑在回传之前就在后台拼接好并且签名好此参数 直接将签名后的参数传回小程序此方式

然后进行md5签名 MD5.hexMD5(sign).toUpperCase()   (sign为之前拼接的参数)

ok 坑排完了 调起支付  扣钱 美滋滋

写此文档是因为发现网上都没有对应的完整的解决步骤。。。或许是太简单了??emmm

反正我觉得挺坑爹的这文档

与大家共勉吧~

微信小程序服务商模式支付巨坑解决!相关推荐

  1. 微信小程序服务商下子商户支付下单接口

    微信小程序服务商下子商户支付下单流程 调用方法 <?php namespace app\index\controller; class WeixinPay extends Base { prot ...

  2. 【SpringBoot学习】39、SpringBoot 集成 wxJava 微信小程序:订单支付

    文章目录 SpringBoot 集成 wxJava 微信小程序:订单支付 1.整合 wxJava 小程序 2.支付配置类 3.application.yml 配置 4.授权登录流程 5.uniapp ...

  3. 小程序服务商申请入口_小程序服务商模式介绍

    之前写过一篇小程序微信支付接入的文章,可以这里查看: http://mp.weixin.qq.com/s/ZG8ooNtVAU9eCnh1R5vB-g 本文介绍一下小程序服务商模式的接入,这里说的服务 ...

  4. 【小程序迁移】微信小程序迁移到支付宝记坑

    [小程序迁移]微信小程序迁移到支付宝记坑 文档控制台网址汇总 前言 本地区别 仅企业可用的功能 限制功能 插件区别 云开发API区别 需要做的代码变更 xml部分 CSS部分 JS部分 自定义组件 比 ...

  5. 老板提了个需求:微信小程序调用支付宝支付!然后群里炸锅了

    大前天,我们头戴菊花手拿红包的小编同学在社群里发出了灵魂提问: (声明一下:小编同学只是在我这里兼职运营社群,人家正经工作还是产品狗.所以这个老板不是我) 这个问题简单说,就是在微信小程序里调用支付宝 ...

  6. 微信小程序 openid及支付的若干问题解决方案

    微信小程序 openid及支付的若干问题解决方案 参考文章: (1)微信小程序 openid及支付的若干问题解决方案 (2)https://www.cnblogs.com/jhlqab/p/78500 ...

  7. 微信小程序map中polyline的坑

    微信小程序map中polyline的坑 polyline polyline层级 polyline 如果大家写过小程序的map地图应该就知道polyline的功效,说白了就是画线的,我在自己的项目中主要 ...

  8. 微信小程序怎么开通支付功能?

    对于一些想通过小程序卖货的企业商家来说,在申请小程序后需要同时开通微信支付功能,才能在小程序上进行交易.那么关于微信小程序怎么开通支付功能,下面给大家说一说. 一.注册非个人主体的小程序账号 不管你是 ...

  9. 微信小程序访问豆瓣电影api400错误解决方法

    微信小程序访问豆瓣电影api400错误解决方法 参考文章: (1)微信小程序访问豆瓣电影api400错误解决方法 (2)https://www.cnblogs.com/bubbleStar/p/610 ...

最新文章

  1. 公司终于决定放弃微服务传统设计模式,全面拥抱 DDD!
  2. vscode pylint 错误_将实际未错误的py库添加到pylint白名单
  3. 数据中心冷却技术在企业持续发展中的应用
  4. 新一代华为折叠屏手机MateX2,你会考虑入手吗?
  5. Python实战之Selenium自动化测试web刷新FW
  6. 九天·毕昇中国移动平台安装MMdetection
  7. 浅析免费加密软件应该如何选择性下载
  8. Kafka C++客户端库librdkafka详解
  9. openssl cer文件转pem文件
  10. java实现图片去除底色,图片变成透明背景
  11. sap成本流怎么看_SAP标准成本核算体系
  12. 《Python 深度学习》刷书笔记 Chapter 8 Part-2 用Keras 实现 DeepDream
  13. truffle unbox react 初始化踩坑
  14. 渗透测试 | IP信息收集
  15. CentOS7.6编译安装nginx
  16. PWM 脉冲宽度调制
  17. 前端技术探索 - 你不知道的JS 沙箱隔离
  18. 模式识别技术漫谈(1)
  19. 图片文字翻译的软件有哪些?快收藏这几款实用的软件
  20. 数据科学 案例7 决策树之电脑购买(代码)

热门文章

  1. linux samba windows,Linux samba无法访问windows 10共享
  2. 声卡是组成多媒体电脑必不可少的
  3. 课程设计——网上商店前台功能的设计与实现
  4. Glide 问题 You cannot start a load for a destroyed activity
  5. SAP TRM模块中Portfolio Analyzer 中特雷诺指数(Treynor ratio)计算
  6. iOS7 Sprite Kit 学习
  7. 红绿3d眼镜与红蓝3d眼镜区别_Rokid X 非白三维,AR眼镜 + 3D扫描
  8. JavaScript的返回值
  9. 我为什么放弃一个25000星的开源项目
  10. 霍克HAWKER合力牵引车电池D-400 合力48V400Ah电动牵引叉车蓄电池