前言

在国内环境,广大的个人站点及应用,因为业务发展需求,往往需要以个人资质申请对接微信和支付宝的支付渠道。然而现在无论是微信还是支付宝,仅支持具有企业资质的主体申请接口对接,对个人开发者而言,路已经完全卡死了。然而道高一尺,魔高一丈,聪明勤劳的国人想出了很多方法绕过这些限制。本文主要剖析当前具有可操作性的两种方法,供有缘人参考决策。

1.通过金额

原理

安卓端的支付宝,在收到收款消息时,会弹出收到 XX 元的应用栏通知消息。这个通知栏消息,是可以通过编程手段获取到的。只需要监听用户的通知栏消息,判断是否是支付宝的通知,然后解析里面的金额,就具有了自定义回调接口的基础。

想像这样一种场景:用户A在网站发起100元的支付,然后网站后台呈现100元的收款二维码(这个二维码可以事先生成放在后台)出来,用户付款成功后,在商家的移动端,通过程序监控到支付宝收到了100元的订单,然后给网站回调。ok,后续的流程和回调逻辑,可以继续做了。

场景再复杂一点,那假如同一时间,有另外一个用户B也发起了100元的支付,可能还没有付款。同时商家移动端检测到了一个100元的订单,进行回调。由于只有金额信息,网站后台无法区分这个100元的订单,到底属于用户A,还是属于用户B,一下子就乱套了。涉及到钱的事都是大事,估计用户得炸了。

这种并发场景,可以通过一个很简单的技巧解决,即当多个用户发起同一金额的支付时,给不同的用户,呈现不同的金额二维码。比如上面的场景,用户A,呈现100元的二维码,同一时间用户B发起100元的订单支付请求,那就呈现99.99元的支付二维码,用户C再来,就呈现99.98元的支付二维码,依次类推。这样,移动端监测到的是不同的金额,因此也就具备了通过金额,区分订单和用户的能力。

优点

  1. 原理简单,实现简单。
  2. 账号比较安全,没有被支付宝风控的风险。

缺点

上面这种通过不同的金额实现回调的方式,缺点是非常明显的,随便列几点:

  1. 仅支持支付宝。微信的移动端通知消息里面,并不包含金额信息,因此这种方法就熄火了。
  2. 由于是通过金额进行订单和用户区分,因此需要提前上传收款二维码,包括用于应付并发场景的大量上下浮动的二维码。对于有大量定价的站点和应用,这个工作量是非常可观的。
  3. 不利于定价调整。每次定价调整,都需要上传大量收款二维码。
  4. 不支持任意金额。还是因为要事先上传收款二维码。

代表

通过金额区分订单和用户的方式实现支付接口回调,由于原理简单,实现成本并不高,因此现在市面上有大量基于该原理实现的支付接口平台。列举如下:

1.paysapi

点评:paysapi 官网提到支持微信。其实是通过上传一张任意金额的微信二维码实现的。也就是用户发起支付后,需要人肉的输入支付金额,这在体验上是比较差的。

2.goddpay

点评:和 paysapi 的网站还是一毛一样。

3.支付吧

点评:无

2.移动端 hook

原理

移动端安卓平台,是一个比较开放的平台。我们运行的几乎所有软件,都是可以通过一定的手段,进行底层编程 hook,自定义其行为的。比如微信消息防撤回,摇骰子划拳作弊,自动抢红包,还有支付宝的余额 & 等级自定义装逼等功能,都是通过诸如 xposed, virtualxposed 等 hook 框架技术编程实现的。

同样,微信和支付宝的收款二维码自动生成,包括支付成功的消息检测,也是可以通过 hook 的手段,进行编程作业的。大致流程如下:

用户发起订单支付请求,然后移动端 hook 软件,监测到这个支付请求,获取到金额和平台(微信还是支付宝)信息。调用相关的软件,注入相关的二维码生成行为,ok,相关金额的二维码生成成功,再显示给用户。

用户支付成功后,同样的,不论是微信,还是支付宝,都会检测到相关的支付成功信息。移动端 hook 软件,同样也可以检测到。然后进行回调。再后续,就是业务系统处理流程逻辑了。

缺点

  1. 需要安装移动端 hook 框架,比如 xposed, virtualxposed 等。其中,xposed 软件,还要求系统必须 root。
  2. 存在一定的安全风险。因为 hook 软件,可以监测到微信和支付宝的软件行为,包括你的密码信息,因此存在一定的安全风险。
  3. 账号存在被风控的可能。不论是微信还是支付宝,对自家软件被自定义的行为,都是零容忍的。

优点

  1. 与上述通过金额实现回调的方式比起来,这种方式有明显的优点,就是不需要提前上传大量二维码,支持任意金额的支付处理。
  2. 同时支持微信和支付宝。
  3. 并发能力,可以相对做到比较高。

代表

基于 hook 方式实现支付接口回调,对软件开发者的要求较高。因此相关的解决方案并不多见,现简单列举如下:

  1. 微米富

点评:基于 virtualxposed。虽然网站几乎和 paysapi 一毛一样,但接口回调实现的原理,却大相径庭。另外,微米富还有一个特殊的地方,就是其在移动端 hook 软件里面,内置了一个微型的 web 服务器,直接接收并处理用户的支付请求。这也导致了几个问题,一是限于移动端 web 服务器的性能,并发的处理,有一定的限制。二是支付页面的调整和定义,需要修改移动端代码。三是软件配置流程复杂(web 服务器代理相关的配置)。

  1. greenyep

点评:基于 virtualxposed。greenyep 和 微米富有一些细微的区别。它并未在移动端 hook 软件里面内置 web 服务器,而是采用定时检测的方式,去后台服务检测订单信息。这样做的好处是可以有一个中心化的平台做订单的调度和统计,同时性能也较内置 web 服务器的方式,有一定的提高。缺点也是明显的,并不方便软件的分发,做一些私有化的部署。

建议

  1. 如果站点和应用的支付场景比较简单,同时对微信支付没有强需求,可以考虑诸如 paysapi 等通过金额进行区分实现接口回调的平台。
  2. 如果对安全及风险敏感度较高,同样建议考虑 paysapi 等平台。
  3. 如果支付场景比较复杂,需要支持任意金额,同时对微信和支付宝渠道均有需求,可以考虑诸如微米富,greenyep 等平台。
  4. 接上,如果对系统稳定性,并发能力要求较高,可以考虑 greenyep 平台。
  5. 接上,如果期望私有部署的便捷性,可以考虑微米富平台。

正规渠道类

那到底有没有一款产品能同时满足个人支付收款需求呢?
又可以支持相对的高并发,低延迟,资金安全无风险,同时还不需要企业资质,用极低的成本得到高效的回报。

答案是有的:https://h5zhifu.com

开户只需要:1身份证 2对应的银行卡(结算用) 3对应的实名认证的微信
十分钟即可开户,拥有正规的个人可用的商户号和密钥。

以上拙见,欢迎拍砖

微信支付宝,个人支付收款接口现状剖析相关推荐

  1. 个人支付收款接口现状剖析

    前言 在国内环境,广大的个人站点及应用,因为业务发展需求,往往需要以个人资质申请对接微信和支付宝的支付渠道.然而现在无论是微信还是支付宝,仅支持具有企业资质的主体申请接口对接,对个人开发者而言,路已经 ...

  2. 个人微信/支付宝免签系统/收款自动监听,自动发货

    wxinpay.com 个人收款码免签系统 没有中间商赚差价,买家扫多少,商家收多少. github地址 -----> https://github.com/wxinpay/wxinpay 项目 ...

  3. Xposed微信支付宝个人免签收款

    ** 微信支付宝个人免签收款 ** 闲话不多说,之前一直奇怪微信抢红包是怎么玩的,直到了解到**Xposed框架,**没错就是它,一个神奇的东西! 近期有朋友说要搞个小游戏,了解到微信,支付宝个人收款 ...

  4. 新版开运网运势测算网站源码 支持微信/支付宝H5支付 支持分销代理 可封装APP

    源码介绍 我在外面花钱购买的某站VIP资源,就是那种搬砖站,买来没时间调试发给大家看看吧,喜欢的就下去玩玩! 支持微信/支付宝H5和电脑端扫码支付.手机端可以调起微信/支付宝应用支付 支持后台设置价格 ...

  5. 支付宝担保交易收款接口使用

    支付宝担保交易收款接口使用 担保交易收款 API ,下载地址http://club.alipay.com/read-htm-tid-9976972.html 以下是我和支付宝客服的咨询记录 您好! 欢 ...

  6. 免签接口 个人二维码收款系统/微信支付支付宝支付二维码监听自动发货/个人免签系统/个人免签支付 微信.支付宝 个人支付监控

    开源个人收款码免签系统 服务端和监控端全部开源,自建支付平台,安全更放心,二开更方便 没有中间商赚差价,买家扫多少,商家收多少 一.系统特色 1.1 支持 支付宝个人收款的推送通知 支付宝商家二维码的 ...

  7. 聚合支付、单商户多商户支付、微信/支付宝/PayPal支付流程、支付政策法规

    目录 一.聚合支付 聚合支付的基本概念 如何选择合适的支付模式 政策相关 常见的聚合支付平台 二.多商户和单商户 多商户单商户区别 多商户入驻流程 多商户模式中常见的支付流程 普通支付 合单支付 留个 ...

  8. 个人微信/支付宝免签支付系统源码

    支付宝,微信免签支付, 1.不需要企业资质,不需网站认证. 2.个人账户即可收款,无需成为支付宝.微信商家, 3.无需对接第三方平台, 4.无需任何手续费,无需提现,即时收款到支付宝.微信账户, 5. ...

  9. 澳洲支付服务商RoyalPay微信支付宝APP支付对接

    最近项目中需要开发澳洲那边的微信支付宝支付,所以去研究了一下微信境外支付,发现境外只支持服务商模式,即客户需要去与澳洲本地服务商合作,由客户提供材料,服务商帮客户申请支付相关账号,然后调用服务商提供的 ...

  10. 微信|支付宝|银联支付(电脑和手机端区别)

    介绍 项目目前存在三种支付方式:支付宝,微信以及银联支付. 电脑端 支付宝和微信采用扫码支付 银联是web端跳转支付 手机端 微信H5支付只可以在微信中使用 支付宝H5支付,除了微信都可以 银联H5支 ...

最新文章

  1. 学完Python后可以做哪些工作呢?
  2. 一 在应用中升级u-boot、内核以及文件系统
  3. POJ - 1704 Georgia and Bob
  4. loadrunner11录制无法打开IE浏览器
  5. Evernote CEO给想做长久公司创业者的3个建议
  6. swift -inout关键字
  7. Java编程语言简述
  8. msfconsole捆绑木马
  9. linkboy带你点亮LED创意世界
  10. 推荐这三款软件让你实现PDF转WORD格式
  11. GO语言中文字符串编码转换
  12. 高性能服务器架构拓扑图,某数据中心架构拓扑图.ppt
  13. Android studio开发app实现仿微信滑动切换界面
  14. 5G 牌照发布!中国正式进入 5G 商用元年!
  15. 锋利的jQuery读书笔记(一)
  16. vscode 过程试图写入的管道不存在
  17. 2018/8/22部分算法总结 二维几何常用算法
  18. pycharm如何调整字体大小
  19. 使用Charles做弱网测试入门篇
  20. matlab生成全黑图片,程序第一次可以运行,第二次运行图片是全黑的

热门文章

  1. 有趣的12张数学原理动图,令人舒心却又伤脑!你看懂几个?
  2. Ubuntu20.04 系统搭建 NetBox(开源 IPAM/DC 管理工具)
  3. 研发软件测试费计入什么科目,研发支出中测试费计入什么科目
  4. async异步问题(waterfall、parallel、eachSeries、map、whilst)
  5. 2018年支付行业回顾
  6. Java实现第九届蓝桥杯第几个幸运数字
  7. Bitmap 图片缩放
  8. 马尔可夫链的常返态和非常返态-零常返态
  9. 印度文明的继承和交溶
  10. GTA5最新线上小助手