Skip to content

充值(Topup) ​

这是什么 ​

Topup 是用户在线充值的额度购买。不绑定订阅、不绑定套餐,只往用户 User.quota 里加额度。

订单号前缀 TP。

在哪里看到 ​

  • 前台 → 充值:列出预设金额、自定义金额输入、当前汇率
  • 后台 → 充值管理:管理员视角的订单查询
  • 后台 → 充值业务配置:开关、预设金额列表、汇率、自定义金额强制

你需要为「充值功能」设置什么 ​

后台 → 充值业务配置:

项含义设置后影响
enabled总开关关闭后前台隐藏充值入口
presets预设金额列表一组数字(如 10 / 50 / 100)
custom_enabled自定义金额开关;关闭后用户只能选预设
rate汇率用户充值 1 元获得 X 额度
min / max最低 / 最高金额用户充值的上下界

通常初始化推荐:

  • 开启
  • 预设 10 / 50 / 100 / 500 元
  • 允许自定义,最低 1 元,最高 10000 元
  • 汇率 100000(1 元 = 10 万内部单位,与默认 QuotaPerUnit=500000 配套)

关键字段(每条 Topup 订单) ​

字段含义设置后影响
order_no订单号TP 前缀;改了就收不到回调
user_id所属用户关联到 User;删除用户级联
amount金额实际付款金额(¥)
quota额度金额 × 汇率;入账额度(订单完成后写入 User.quota)
status状态未支付 / 已支付 / 已取消
pay_method支付方式微信 / 支付宝 / 银行 / Mock;决定回调 URL

入账时机 ​

订单「已支付」回调成功后,立刻给用户 User.quota += 订单额度,无需人工干预。

与「套餐」的区别 ​

  • 充值 → 加到 User.quota,永久有效,没有套餐折扣
  • 套餐 → 绑定 Subscription,有折扣倍率、有有效期

用户可以同时拥有:充值额度(不打折)+ 订阅(打折)。

相关页面 ​

相关 API ​

  • POST /api/topup/order — 用户创建充值订单
  • GET /api/setting/topup — 获取充值业务配置
  • PUT /api/setting/topup — 更新配置(Root)