DaxPay
是一款基于Apache License 2.0
协议分发的开源软件,受中华人民共和国相关法律法规的保护和限制,可以在符合《用户授权使用协议》和
《Apache License 2.0》开源协议情况下进行免费使用、学习和交流。在使用前请阅读上述协议,如果不同意请勿进行使用。
DaxPay是一套开源支付网关系统,已经对接支付宝、微信支付、云闪付相关的接口。可以独立部署,提供接口供业务系统进行调用,不对原有系统产生影响。
微信支付
、支付宝
和云闪付
相关的接口,并以扩展包的方式支持更多类型的通道HTTP
方式接口调用能力,和Java
版本的SDK
,方便业务系统进行对接在 DaxPay文档站 下的支付网关(DaxPay)模块下可以进行查阅相关文档,具体链接地址如下: 快速指南、 支付对接、 操作手册
项目 | GITEE | GITHUB | GITCODE |
---|---|---|---|
后端地址 | GITEE | GITHUB | GITCODE |
Web前端地址 | GITEE | GITHUB | |
H5前端地址 | GITEE | GITHUB |
注:演示账号部分功能权限未开放。
地址:https://single.web.daxpay.cn
账号:daxpay
密码:daxpay123
名称 | 描述 | 版本要求 |
---|---|---|
Jdk | Java环境 | 21+ |
Spring Boot | 开发框架 | 3.3.x |
Redis | 分布式缓存 | 5.x版本及以上 |
MySQL/Postgresql | 数据 | MySQL8.x及以上/Postgresql 10及以上 |
Vue | 前端框架 | 3.x |
业务系统想接入支付网关的话,不需要集成到业务系统里,只需要单独部署一份支付系统,然后业务系统通过接口调用即可拥有对应的支付能力, 不会对原业务系统的架构产生影响。如果是Java项目,可以使用SDK简化接入流程, 其他语言可以参照中的说明使用HTTP接口方式接入。
SDK版本号与支付网关的版本保持一致,如果需要使用,请在pom.xml中添加如下依赖。SDK使用方式参考SDK使用说明。
<!-- 支付SDK -->
<dependency>
<groupId>org.dromara.daxpay</groupId>
<artifactId>daxpay-single-sdk</artifactId>
<version>${latest.version}</version>
</dependency>
package org.dromara.daxpay.single.sdk.test.trade;
import org.dromara.daxpay.single.sdk.code.ChannelEnum;
import org.dromara.daxpay.single.sdk.code.PayMethodEnum;
import org.dromara.daxpay.single.sdk.code.SignTypeEnum;
import org.dromara.daxpay.single.sdk.model.trade.pay.PayResultModel;
import org.dromara.daxpay.single.sdk.net.DaxPayConfig;
import org.dromara.daxpay.single.sdk.net.DaxPayKit;
import org.dromara.daxpay.single.sdk.param.channel.AlipayParam;
import org.dromara.daxpay.single.sdk.param.channel.WechatPayParam;
import org.dromara.daxpay.single.sdk.param.trade.pay.PayParam;
import org.dromara.daxpay.single.sdk.response.DaxPayResult;
import org.dromara.daxpay.single.sdk.util.JsonUtil;
import org.dromara.daxpay.single.sdk.util.PaySignUtil;
import org.junit.Before;
import org.junit.Test;
import java.math.BigDecimal;
/**
* 统一支付接口
* @author xxm
* @since 2024/2/5
*/
public class PayOrderTest {
@Before
public void init() {
// 初始化支付配置
DaxPayConfig config = DaxPayConfig.builder()
.serviceUrl("http://127.0.0.1:9999")
.signSecret("123456")
.appId("123")
.signType(SignTypeEnum.HMAC_SHA256)
.build();
DaxPayKit.initConfig(config);
}
/**
* 微信支付(二维码扫码)
*/
@Test
public void wxQrPay() {
PayParam param = new PayParam();
param.setClientIp("127.0.0.1");
param.setBizOrderNo("SDK_"+ System.currentTimeMillis());
param.setTitle("测试微信扫码支付");
param.setDescription("这是支付备注");
param.setAmount(BigDecimal.valueOf(1.00));
param.setChannel(ChannelEnum.WECHAT.getCode());
param.setMethod(PayMethodEnum.QRCODE.getCode());
param.setAttach("{回调参数}");
param.setAllocation(false);
param.setReturnUrl("https://abc.com/returnurl");
param.setNotifyUrl("http://127.0.0.1:10880/test/callback/notify");
DaxPayResult<PayResultModel> execute = DaxPayKit.execute(param);
System.out.println(JsonUtil.toJsonStr(execute));
System.out.println(PaySignUtil.hmacSha256Sign(execute, "123456"));
}
}
扫码加入QQ交流群
交流三群: 879409917
扫码加入钉钉交流群: 加群连接
微信扫码加小助手拉群: sdcit2020
感谢 JetBrains 提供的免费开源 License:
感谢其他提供灵感和思路的开源项目
Apache License Version 2.0
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
1. 开源生态
2. 协作、人、软件
3. 评估模型