Skip to content

特色功能

更新时间:2026/7/26 17:36:13

以下为 DaxPay 开源版已实现的核心功能亮点,涵盖支付能力、通道统一封装、支付方式、安全机制与国际化时区。

支付核心能力

DaxPay 覆盖支付交易的完整生命周期:

  • 支付 — 统一下单,支持主流支付渠道与多种支付方式
  • 退款 — 全额 / 部分退款,支持退款同步与差错处理
  • 查询 — 订单状态、交易明细、通道流水查询
  • 回调 — 异步通知机制,保证最终一致性
  • 同步 — 主动向通道查询订单状态,补偿回调丢失
  • 关闭 — 订单超时关闭、网关超时兜底
  • 商户通知 — 商户回调消息分发、重试策略、通知任务调度

通道架构:编排与对接分离

DaxPay 的通道体系采用主应用编排 + 子应用对接的分层架构,这是其区别于单体支付系统的核心设计:

层级职责实现
编排层 (主应用 daxpay-channel)通道声明、通道路由、支付策略编排、配置数据 CRUD、回调组装不含第三方 SDK
对接层 (子应用 channel-one / channel-two)第三方 SDK 直接调用、签名/验签、通道专属协议适配独立部署

主应用通过声明式 HTTP 客户端 (@HttpExchange) 调用子应用,链路全程 AES-GCM 传输加密,响应统一 {code, msg, data} 契约。这样设计的收益:

  • SDK 依赖隔离 — 第三方 SDK 不污染主应用,避免版本冲突
  • 独立升级 — 子应用可按通道单独发版,不影响主链路
  • 弹性伸缩 — 高频通道(支付宝、微信)可多实例独立扩缩容
  • 双语言实现 — 通道子应用同时提供 Java (Spring Boot)Go (Gin) 两套对等实现,按需选用

通道总数与分布

DaxPay 已对接 12 个国内支付通道模块,涵盖直连与聚合两类:

  • 直连通道 (channel-one) — 支付宝、微信、抖音、银联商务
  • 聚合通道 (channel-two) — 拉卡拉、海科融通、斗拱 (汇付天下)、乐刷、随行付、河马付 (杉德)、Adapay、富友,以及易宝 (待启用)

此外 ChannelEnum 还预定义了银联、盛付通、银盛、快钱、杉德 等通道枚举,可按需扩展对接。新增通道只需在对应子应用实现 SDK 调用并在主应用注册策略。

支付方式

覆盖主流支付场景:

  • 聚合支付 — 一码多付,自动路由到用户钱包
  • 扫码支付 — 主扫、被扫
  • JSAPI 支付 — 微信 / 支付宝 / 抖音公众号、小程序内调起
  • H5 支付 — 手机浏览器调起钱包
  • APP 支付 — 原生 SDK 拉起
  • 小程序支付 — 微信 / 支付宝 / 抖音
  • 付款码支付 — 商户扫用户动态码
  • 抖音支付 — 扫码 / JSAPI / H5 / APP
  • 境外卡支付 — Visa / MasterCard 网关与刷卡 (预留)

多商户与多端管理

  • 双入口架构 — 运营端 (平台运营方使用) 与商户端 (商户自助使用) 同源编译,菜单与数据按 client_code 隔离
  • 多应用管理 — 单商户可配置多个支付应用,独立凭证与回调地址
  • 行级数据隔离 — 每个商户的数据通过商户编号自动隔离,彼此互不可见

通道路由与风控

  • 动态路由 — 按支付产品、通道可用性、成本策略动态匹配最优通道
  • 产品策略ProductStrategySupport 策略模式,支持按支付方式 (扫码/JSAPI/...) 选路
  • 环境一致性校验 — 路由层兜底校验商户环境与产品当前环境 (沙箱/生产) 一致
  • 风控插件daxpay-plugin-risk 黑名单 + 命中记录,支持交易前风险检查

安全机制

DaxPay 在接口、传输、存储、认证多个层面构建安全防护:

  • 签名防篡改 — 接口请求与响应支持 RSA 签名
  • 字段级加密 — 敏感字段 AES-256-GCM 加密存储
  • 传输加密 — 主应用与通道子应用之间全程 AES-GCM 加密
  • 权限认证 — Sa-Token (token name: Accesstoken),RBAC 角色权限码 + 菜单数据隔离
  • 两步验证 — TOTP 一次性密码 + 备份码,支持 Google Authenticator
  • 社交登录 — 微信 / 支付宝 / 抖音开放平台扫码登录
  • 沙箱 / 生产隔离 — 部署级隔离,sandbox-enabled=false 时启动期强制重置所有产品为生产环境

国际化与时区

  • 10 语种支持 — 简体中文、英文、繁体中文 (台 / 港)、日文、韩文,以及东盟四语 (印尼 / 越南 / 泰 / 马来)
  • JSON 资源源 — 自定义 JsonMessageSource,按 locale 目录 + 业务模块拆分,枚举翻译通过 I18nSupport 接口驱动
  • 时区统一 — 数据库时间字段统一 timestamptz(6),实体统一 OffsetDateTime,UTC 存储
  • 回退链 — 当前 locale → zh-CN → 语言码,缺 key 自动回退

全端覆盖

应用技术栈
运营 Webdaxpay-adminVue 3.5 · Vite 8 · antdv-next · Vben Admin 5
商户 Webdaxpay-merchant同上,同源编译
移动 H5dax-pay-h5Vue 3.5 · Vant 4 · UnoCSS (PC + Mobile 双端)
运营端应用(小程序)dax-pay-app-adminuni-app · wot-ui v2 (H5 / 微信 / 支付宝 / 抖音 / App)
商户端应用(小程序)规划中(参照 dax-pay-app-admin)uni-app · wot-ui v2
收银小程序dax-pay-cashieruni-app · wot-ui v2 (微信 / 支付宝 / 抖音)

可观测性与运维

  • 链路追踪 — OpenTelemetry 集成,日志关联 traceId (不导出 OTLP,仅本地关联)
  • 审计日志capability-audit-log 关键操作审计,支持 IP 定位 (ip2region)
  • 站内通知 — 公告、个人消息、SSE 实时推送
  • Docker 部署 — 官方镜像与 Compose 编排,一键启动
  • 优雅停机 — 生产环境配置 graceful shutdown

基于 GNU LGPL v3.0 协议开源