Create your Gitee Account
Explore and code with more than 5 million developers,Free private repositories !:)
Sign up
Clone or download
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README.md

XPay个人收款支付系统

AUR GitHub stars GitHub forks

项目已部署,在线Demo

声明:此系统只针对个人开发收款支付,实际可应用到实现自动维护捐赠表等业务,无法商用!当然你还可将此项目当作入门级的SpringBoot练习项目

个人申请支付接口现状

  • 原生网银支付

    • 以银行网银为代表。此类方式涉及到承诺、合同、不菲的保证金,对个人来说不现实。

    • 结论:不可行

  • 原生支付宝,微信支付

    • 支付宝只服务于有营业执照、个体工商户的商户。就算你有钱但没实体店铺在某宝上也是买不到的。截止目前(2018-01-01)无法以个人身份(或以个人为主体)直接申请API。网上那些 “个人申请支付宝xx接口” 的文章就不要看了,节约时间。微信同支付宝,不支付个人申请。

    • 结论:不可行

  • 关联企业支付宝账号

    • 即新建企业账户,然后采用已经实名认证了的企业账户关联该账户,用其实名主体完成新账户的实名认证。一系列操作完成后,新的账户具有和企业账户一样的资质可以申请API。

    • 结论:如果条件允许,推荐此方案

  • 购买企业支付宝账号

    • 购买一个企业支付宝账号,然后信息变更,完成过户。但这种“非法”的方式,毕竟涉及到钱的问题,安全性无保障。另外,企业账户价格比较高。

    • 结论:不推荐

  • 企业账号分发

    • 支付宝和微信提供的API都有企业付款的功能,即企业账户向单个账户付款。网站使用企业账号调用接口,用户通过接口完成付款,并接收反馈,然后企业账户收款后,继续调用“付款接口”给目的账户打款。 有条件的用户可采用此种方式,但对于个人用户来讲,愿意合作的企业账号难找,合作方式待定。

    • 结论:不推荐

  • 挂机监听软件

    • 通过在软件内部打开支付宝账号,监听账单记录。然后在此基础上,继续深度定制API等接口服务。这种方式需要在软件内部登录本人支付宝及微信账户,安全性存在极大的隐患。

    • 结论:不推荐

  • 第四方聚合支付,Ping++

    • 以Ping++为代表的第四方聚合支付工具,简化并了多平台接入流程,解决了很多能力稍低或者需求较急的开发者对多系统对接的需求。但是,Ping++这类第四方聚合支付工具,解决的也只是接入流程,没有从根本上解决主体资质和权限的问题。以支付宝为例,个人开发者仍然需要去申请所需接口的使用权限。

    • 结论:不可行

  • 第四方聚合支付,云通付Passpay

    • 支付资金进入官方账号,自己再进行提现操作。需要开通域名,提现手续费较高,支付页面不支持自定义。另外,对于此种类型的聚合支付平台,隐藏着极高的平台风险。

    • 结论:不推荐

  • 其他挂机监听软件,PaysApi、绿点支付

    • 本质上依然是采用挂机监听的策略,但针对的是移动端支付宝或微信的收款通知消息,需根据你的商品定价手动配置上传固定金额收款二维码,较为麻烦
    • 结论:不免费
  • 国外支付,PayPal、Strip:不可用

XPay

  • 支持支付宝、微信、QQ钱包等任意收款码,资金直接到达本人账号,个人一键审核即时回调,不需提现,不需备案,完全免费
  • 结论:个人收款较少、见不得人的支付业务推荐使用

使用开发流程

  • 用户确认订单,需填写邮箱地址(用于邮件通知)、手机号(用于短信通知)等信息

  • 配置你的个人收款码,对应页面在 src\main\resources\templatesalipay.html、wechat.html、qqpay.html,请自行查找修改图片链接。当然你还可以设置多张固定金额收钱码,前端JS判断通过金额取出相应金额收钱码。

  • application.properties 配置文件中修改你的管理员邮箱等

  • 建议下载对应邮箱App,打开支付宝、微信收款语言通知等提醒,收到支付邮箱通知后,确认是否收款到账,在邮件中进行该交易任意审核操作(业务逻辑回调完全由你自定义)

疑问

  • 如何确定收款来自哪笔交易订单?
    • 实际业务中审核邮件会包含用户、订单号、支付金额等信息,请根据这些信息进行核对
    • 如果短时间内收款过多仍无法判断,em?你做的什么交易收款能这么多?这只是针对个人的OK?请去申请支付接口!

前端所用技术

后端所用技术

各框架依赖版本皆使用目前最新版本
  • SpringBoot
  • SpringMVC
  • Spring Data Jpa
  • MySQL
  • Spring Data Redis
  • Druid
  • Thymeleaf:模版引擎
  • Swagger2
  • Maven
  • 其它小实现:
    • @Async 异步调用
    • @Scheduled 定时任务
    • JavaMailSender发送模版邮件

文件说明

  • 数据库文件:xpay.sql(仅一张表)

本地开发运行部署

  • 依赖:Redis(非必须,但影响部分功能)
  • 新建数据库,见xpay.sql文件
  • application.properties 中修改你的配置,例如端口、数据库、Redis、邮箱配置等,其中有详细注释
  • 运行 XpayApplication.java
  • 访问默认端口8888:http://localhost:8888

Linux后台运行示例

nohup java -jar xpay-1.0-SNAPSHOT.jar -Xmx128m &

X系列开源项目推荐

技术疑问交流

捐赠

Comments ( 0 )

Sign in for post a comment

About

XPay个人收款支付系统 完全免费 资金直接到达本人账号 无需备案 无需签约支付宝微信 无需第三方支付SDK 无需营业执照身份证 只需收款码 搞定支付流程 spread retract
Java
GPL-3.0
Cancel

Releases

No release

Contributors

All

Activities

load more
can not load any more