我是如何在线上微信个人支付

写在前面

今天聊点有意思的东西,微信支付实现线上支付其实是需要企业资质,所以对于个人开发者来说直接被判死刑了,但是最近我研究了一个比较有意思的东西 —— Xposed 通过两个功能,实现线上微信个人支付。

声明

Xposed 本身对程序进行监控是不符合微信安全说明的,我这里只是做技术探究,并做相关技术思路分享,并不推荐生产环境使用。

在线体验

Xposed 软件需要长期挂载,我也只是偶尔挂载,如果生成支付二维码失败,说明我并没有开启 Xposed 软件。
在线体验地址

所需组件

  • 安卓手机端 Xposed 监控软件
  • WEB 接口
  • 支付页面网站
  • 网站后台系统

组件功能思路讲解

安卓 监控 APP 设计思路

主要实现两个功能:

  • 1.动态生成微信个人支付二维码,并备注订单号。
  • 2.实时监听微信收款推送信息,完成订单的支付状态更新
    具体实现,此处并不提供。

WEB 接口

技术栈:CodeIgniter3 开发接口

为安卓监控软件提供借口

  • 生成支付订单记录并附带订单编码,以便 Xposed 软件能够读取并生成指定支付二维码
  • 更新订单完成记录接口,当 Xposed 监听软件收到支付消息,通过备注的订单编码实时更新订单状态

支付WEB页面提供接口

  • 用户下单接口:根据用户预留信息以及金额完成订单录入,以便 Xposed 读取到新订单,而起生成支付二维码,后台设置等待时间,等待支付二维码生成,一遍完成后续支付流程
  • 监听订单状态,在支付二维码生成成功后,不断刷新此接口获取订单状态,如果监听支付成功便可以进行后续功能

支付界面
技术栈:Vue + iView 以及 webpack 打包
一个简单的 Vue 单页应用,使用了 iView 作为 UI 库,配合上述接口实现支付流程。

我是如何在线上微信个人支付_第1张图片
商品列表页

我是如何在线上微信个人支付_第2张图片
商品详情页

我是如何在线上微信个人支付_第3张图片
生成支付二维码

后台操作

功能比较简单,基于我的个人开源项目 LW.ADMIN (一个基于 CodeIgniter3 + Bootsrap3 的PHP后台项目)

我是如何在线上微信个人支付_第4张图片
后台管理界面

总结

上面就是我在实现线上微信支付时的整体思路,有兴趣的可以自行研究,仅作为个人兴趣爱好。并不推荐生产环境使用。

你可能感兴趣的:(我是如何在线上微信个人支付)