DaxPay 支付网关 V2.0.6: 重构简化,轻装再出发
DaxPay v2.0.6发布: 重构简化,轻装再出发
项目介绍
DaxPay
是Dromara开源社区
旗下一套开源支付网关系统,已经对接支付宝、微信支付、云闪付相关的接口。独立部署,提供接口供业务系统进行调用,不对原有系统产生影响。
源码地址
系统亮点
-
封装各类支付通道的接口为统一的接口,方便业务系统进行调用,简化对接多种支付方式的复杂度
-
已对接
微信支付
、支付宝
和云闪付
相关的接口 -
支持支付、退款、对账、分账等支付相关的能力
-
提供
HTTP
方式接口调用能力,和Java
版本的SDK
,方便业务系统进行对接 -
接口请求和响应数据支持启用签名机制,保证交易安全可靠
-
提供管理平台,方便运营人员进行管理和操作
-
提供
聚合支付
、电脑收银台
和手机收银台
的演示模块,供开发者参考其实现支付功能的逻辑 -
系统源码为商业友好的
Apache-2.0
协议,文档为更加宽松的MIT
协议,不需要担心后续代码和文档会突然进行收费
重构和更新说明
本次重构前的
DaxPay
存在一些设计思路上的问题,如为了与其他支付系统做出不一样的东西,引入了组合支付的概念,导致为了解决极少数的场景而付出增加了翻倍的复杂度。以及前后开发考虑的不同,系统中各类概念、过度设计、命名不统一随处可见,对阅读源码和二次开发产生了极大的障碍。经过和社区交流群讨论,以及对多商户版设计中确定的思路,决定对单商户版进行瘦身,专注小微商户和开发者需求,以及作为多商户版的验证前哨,进行一次大的系统重构,来更好应对后续的演进。
订单概念简化
-
去除通道支付订单概念,不再存在多级订单,从一对多简化为一对一
-
去除通道退款概念,只与支付订单产生关联,不再与通道支付订单有任何联系,退款单也回归一对一关系
-
支付和退款相关的回调记录、关闭记录、同步记录等,关联关系都简化为一对多,不再存在多对多的关系
-
对各类交易号生成规则进行优化,由原有的雪花ID更改为有具体业务含义的编号
支付流程简化
-
去除组合支付概念,牺牲5%的适用场景换取了业务复杂度下降50%,代码量下降30%
-
简化支付链路长度和分支数,去除部分过度使用的设计模式,使代码更容易入手
-
支付同步、回调和退款同步、回调去除组合支付导致的特殊处理逻辑
-
消息通知发送流程改造,不在使用复杂继承组合关系,只保留一级类继承关系
-
回调通知处理不再使用继承模式,修改为组合模式,提高阅读和debug的便利性
对账流程优化
-
将原有晦涩的流程进行简化抽象位对账单和对账差异两块
-
保存从三方支付机构下载下来的原始对账文件,并提供下载功能
-
支持下载系统交易账单、对账差异明细单来就进行线下对账
分账自动化
-
支持自动根据默认分账组队支付完成的订单进行分账
-
支持自动同步对账结果,并自动对分账单进行完结
统一API接口风格
-
统一参数命名规则,包括支付、退款、对账、分账等相关参数的属性,实现风格的统一
-
统一公共请求参数和响应参数,同时响应参数格式,便于进行统一处理
-
对响应参数默认进行签名,避免被中间人篡改导致资金损失
-
初步统一异常返回格式,后续将各类异常码和异常信息进行统一
前端交互优化
-
对85%支付相关的页面进行优化,统一页面交互逻辑
-
适配各种查询条件和显示,初步完成管理端的功能完备性
-
对金额进行统一,统一使用元作为显示单位,目前已完成完成80%
脚手架简化
-
从jar集成修改为源码集成
-
对无用模块进行剔除简化
系统前瞻
多商户版启动开发
针对于中大型项目,各类复杂的支付业务,能够实现多商户、多应用自主进件、收单;以及根据规则、自动选择最优的直连或间连通道进行收单;预计多商户版本将于第四季度发布,尽请期待!
-
基于Spring Boot3.X + JDK 21 + Postgresql搭建,拥抱新技术,适应后续Java新版本变化
-
引入商户、应用等概念,系统将会分为支付网关端、运营管理端、商户端,适应更复杂的业务场景
-
支付相关代码直接使用官方SDK,增加系统自主可控性
-
各类加密方式切换为国密算法,更方便适应国产化、安全可控的要求
-
底层脚手架重构,去除无关业务模块,重新设计系统模块,提高系统性能和操作便利性
-
更多特性在设计规划中
单商户后续演进
单商户版本定位于小微商户,中小企业开发者,可用于简单的收单、小型项目支付的组成、以及学习参考使用。同时也会对一些多商户版本的设计和功能进行先期验证。
-
支持支付宝和微信V3版本接口
-
支持撤销、转账等更多支付接口
-
增加微信通知、钉钉通知、飞书通知能力
-
支持服务商模式,以及一些间连通道,如通联支付、易宝支付等,更好适应小微收单场景
演示地址
管理平台:
注:演示账号部分功能修改删除权限未开放。
地址:https://daxpay.demo.bootx.cn 账号:daxpay 密码:123456
网关接口
注:接口平台只开放支付网关相关的接口,不开放系统其他接口。
地址: https://daxpay.server.bootx.cn/doc.html 账号: daxpay 密码: 123456
收银台
请勿大额支付,可以通过后台管理平台进行退款
电脑收银台地址: https://daxpay.demo.bootx.cn/#/cashier
手机收银台地址: https://daxpay.demo.bootx.cn/h5/#/cashier/uniCashier
系统展示
PC收银台
驾驶舱
支付订单
订单详情
分账组

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
DaxPay v2.0.6 发布: 重构简化,轻装再出发
DaxPay v2.0.6发布: 重构简化,轻装再出发 项目介绍 DaxPay是Dromara开源社区旗下一套开源支付网关系统,已经对接支付宝、微信支付、云闪付相关的接口。独立部署,提供接口供业务系统进行调用,不对原有系统产生影响。 源码地址 项目 GITEE GITHUB 后端地址 https://gitee.com/dromara/dax-pay https://github.com/dromara/dax-pay Web前端地址 https://gitee.com/bootx/dax-pay-ui https://github.com/xxm1995/dax-pay-ui H5前端地址 https://gitee.com/bootx/dax-pay-h5 https://github.com/xxm1995/dax-pay-h5 系统亮点 封装各类支付通道的接口为统一的接口,方便业务系统进行调用,简化对接多种支付方式的复杂度 已对接微信支付、支付宝和云闪付相关的接口 支持支付、退款、对账、分账等支付相关的能力 提供HTTP方式接口调用能力,和Java版本的SDK,方便业务系统...
- 下一篇
简单易用的 Open Ai Java SDK 2024.01.3 发布
推荐一套基于 SpringBoot 开发的简单、易用的开源权限管理平台,建议下载使用:https://github.com/devlive-community/authx 推荐一套功能强大的开源数据中台系统:https://github.com/devlive-community/datacap 推荐一套全平台数据库管理工具,建议下载使用:https://github.com/devlive-community/dbm OpenAI Java SDK 主要为 Java 开发人员提供方便易用的 SDK 来与开放 AI 模型的 API 进行交互依赖库。 本次发布增加了 OpenAI 开发的新模型gpt-4o和 Google Gemini Google Gemini 支持简单对话 try (GoogleClient client = GoogleClient.builder() .apiKey(token) .build()) { PartEntity part = PartEntity.builder() .text("Hello, Open AI Java SDK!") ....
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Linux系统CentOS6、CentOS7手动修改IP地址
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS关闭SELinux安全模块
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Hadoop3单机部署,实现最简伪集群
- CentOS6,7,8上安装Nginx,支持https2.0的开启