Jeepay开源聚合支付系统:本地部署到首笔回调的全流程
2026/9/24 17:24:43 网站建设 项目流程

Jeepay开源聚合支付系统:本地部署到首笔回调的全流程

【免费下载链接】jeepayJeepay是一套适合互联网企业使用的开源支付系统,支持多渠道服务商和普通商户模式。已对接微信支付,支付宝,云闪付官方接口,支持聚合码支付。项目地址: https://gitcode.com/GitHub_Trending/je/jeepay

Jeepay 是一套开源聚合支付系统,面向需要自建支付中台的互联网企业:一次部署同时得到支付网关、商户后台、运营平台三个子系统,已对接微信支付、支付宝、云闪付官方接口,并提供聚合码与分账能力。本文按部署者的实际操作顺序展开,从拉取代码、拉起容器,到配置第一个渠道、收到第一笔商户回调。

📦 Jeepay 仓库获取与 Docker Compose 启动

后端代码与容器编排文件在同一仓库内,前端界面位于同级目录 jeepay-ui,目录不一致时可在 .env 中用 UI_BASE_DIR 覆盖。默认镜像指向华为云 SWR 公开仓库,国内环境无需借助 Docker Hub 即可拉取。

git clone https://gitcode.com/GitHub_Trending/je/jeepay cd jeepay mvn clean package -DskipTests docker compose up -d --build

启动完成后,三个后端服务分别监听 9216(支付网关)、9217(运营平台)、9218(商户系统);三套前端界面在 9226、9227、9228 端口提供访问;宿主机上的 MySQL 与 Redis 分别映射到 13306 与 6380,避开本机已有实例。运营平台默认账号为 jeepay / jeepay123,商户账号由运营平台创建后使用,初始密码为 jeepay666。

⚙️ Jeepay application.yml 关键配置参数说明

conf 目录下有 payment、manager、merchant 三份 application.yml,分别挂载进对应容器,只承载环境相关参数。需要关注的参数:数据源位于 spring.datasource,url、username、password 默认指向集群内 mysql 实例,库名 jeepaydb,首次启动会自动导入 init.sql 与 patch.sql;缓存位于 spring.data.redis,三个子系统分别使用 database 1、2、3,互不干扰;isys.mq.vender 决定消息队列厂商,默认 rocketMQ;isys.jwt-secret 用于生成登录态令牌,各子系统需使用不同密钥。若外层有 nginx 反向代理,保留 server.forward-headers-strategy 的 framework 值,回调地址与回跳链接才能拼出正确的域名。修改配置后执行 docker compose restart 加服务名即可生效,无需重新构建镜像。

🧩 Jeepay 支付网关、商户系统与运营平台分工

三个子系统共用一套 MySQL 库表,但缓存按业务隔离。运营平台 jeepay-manager 面向平台方,管理商户账户、支付接口定义、渠道参数与角色权限;商户系统 jeepay-merchant 面向接入商户,管理应用、查询支付与退款订单、维护分账接收方;支付网关 jeepay-payment 是唯一对外的支付入口,承担统一下单、渠道支付、渠道回调接收与聚合码收银台。渠道参数保存后,系统通过消息队列向各实例发送广播,刷新其内存中的配置缓存,开关由 isys.cache-config 控制,网关因此无需重启即可读到最新参数。

💳 Jeepay 支付渠道配置与聚合码收银台

渠道参数支持两种配置模式。普通商户模式:在商户应用下填写该商户自己的支付宝、微信支付 appid 与密钥,订单直接以该商户身份结算。服务商模式:平台持有服务商 appid,在其名下批量接入子商户,适合需要管理多家商户的平台型业务,配置入口在运营平台的服务商管理中。网关侧的渠道实现按厂商组织在 channel 目录下,覆盖 alipay、wxpay、ysfpay、plspay、pppay、xxpay,每个厂商下再细分 PC、WAP、小程序、当面付、扫码等支付方式。

收银台页面会列出商户已开通的全部支付方式供付款人选择;聚合码场景下生成一张静态收款码,用户扫码后由网关根据所打开的客户端自动路由到对应渠道,商户侧只感知一次下单请求。

🔁 Jeepay 支付回调、订单补偿与对账机制

渠道的支付结果有两个来源:异步通知与主动查询,二者最终都收敛到订单状态机。网关收到渠道回调后先核签并更新订单,随后通过消息队列向商户的 notify_url 异步推送支付结果;每次推送都写入通知记录表,商户端超时未确认时按重试策略再次推送,记录可在商户后台查询。对长期停留在支付中状态的订单,网关内置定时任务周期性向渠道补发查询,支付、退款、转账分别有对应的补发与超时关单任务,避免依赖单一回调。商户后台与运营平台看到的订单列表来自同一张订单表,对账时只需与渠道账单核对同一批订单号即可。

🌐 Jeepay 生产部署与消息队列选择

生产环境的标准路径是绑定域名并配置 HTTPS 反向代理,仓库 docs/deploy 目录下有 nginx 配置示例与常见问题排查清单。消息队列按规模选择:单机小规模部署用 ActiveMQ 即可,配置项最少;中等并发选 RabbitMQ;更高吞吐选 RocketMQ,compose 文件默认就是 RocketMQ 5.3.1,name server 与 broker 均已编排。切换厂商时需同时修改 docker-compose.yml 与 conf 下的 isys.mq.vender 及对应依赖。另外生产环境的 isys.allow-cors 建议关闭,跨域统一交给 nginx 处理。

详细配置见 docs/deploy/ 部署文档与 docs/features.md 功能清单,支付网关完整源码在 jeepay-payment。

【免费下载链接】jeepayJeepay是一套适合互联网企业使用的开源支付系统,支持多渠道服务商和普通商户模式。已对接微信支付,支付宝,云闪付官方接口,支持聚合码支付。项目地址: https://gitcode.com/GitHub_Trending/je/jeepay

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询