项目介绍
DaxPay是一套开源支付网关系统,已经对接支付宝、微信支付、云闪付相关的接口。可以独立部署,提供接口供业务系统进行调用,不对原有系统产生影响
特色功能
-
封装各类支付通道的接口为统一的接口,方便业务系统进行调用,简化对接多种支付方式的复杂度
-
已对接微信支付、支付宝和云闪付相关的接口,后续版本将支持V3版本的接口
-
支持支付、退款、对账、分账等支付相关的能力
-
提供HTTP方式接口调用能力,和Java版本的SDK,方便业务系统进行对接
-
接口请求和响应数据支持启用签名机制,保证交易安全可靠
-
提供管理平台,方便运营人员进行管理和操作,不需要懂IT技术也可以轻松使用
-
提供聚合支付、电脑收银台和手机收银台的演示模块,供开发者参考其实现支付功能的逻辑
核心技术栈
业务系统接入
业务系统想接入支付网关的话,不需要集成到业务系统里,只需要单独部署一份支付系统,然后业务系统通过接口调用即可拥有对应的支付能力, 不会对原业务系统的架构产生影响。如果是Java项目,可以使用SDK简化接入流程, 其他语言可以参照中的说明使用HTTP接口方式接入。
Java客户端SDK
SDK版本号与支付网关的版本保持一致,如果需要使用,请在pom.xml中添加如下依赖。
<!-- 支付SDK -->
<dependency><groupId>cn.daxpay.single</groupId><artifactId>daxpay-single-sdk</artifactId><version>${latest.version}</version>
</dependency>
SDK调用示例
此处以支付接口为例,演示业务系统如何调用支付网关进行支付,其他接口的调用方式类似,具体请参考支付对接。
/*** 统一支付接口* @author xxm* @since 2024/2/5*/
public class PayOrderTest {@Beforepublic void init() {// 初始化支付配置DaxPayConfig config = DaxPayConfig.builder().serviceUrl("http://127.0.0.1:9000").signSecret("123456").signType(SignTypeEnum.HMAC_SHA256).build();DaxPayKit.initConfig(config);}/*** 支付*/@Testpublic void pay() {PayParam param = new PayParam();param.setClientIp("127.0.0.1");param.setBizOrderNo("P0004");param.setTitle("测试接口支付");param.setChannel(PayChannelEnum.ALI.getCode());DaxPayResult<PayModel> execute = DaxPayKit.execute(param);System.out.println(JSONUtil.toJsonStr(execute));}
}
系统截图
-
收银台演示
-
驾驶舱
-
H5收银台演示
-
支付通道配置
开源地址
https://gitee.com/dromara/dax-pay
——EOF——
福利:
扫码回复【酒店】可免费领取酒店管理系统源码