价格配置
配置订阅计划、积分包和 AI 模型定价
重要: 所有价格和积分配置都在 src/config/pricing-user.ts 文件中管理。这是价格系统的唯一配置文件。
本文档详细说明如何配置 VideoFly 的价格和积分系统,包括订阅计划、积分包和 AI 模型定价。
配置文件位置
文件路径: src/config/pricing-user.ts
这个文件包含所有价格和积分相关的配置:
- 新用户赠送积分
- 积分过期规则
- 订阅产品(月付/年付)
- 一次性积分包
- AI 模型积分计费
自动生效: 修改 pricing-user.ts 后保存即可,前端价格数据会自动从该文件生成,无需重启服务器。
1. 新用户赠送配置
配置新用户注册时赠送的积分。
配置说明
| 字段 | 类型 | 说明 |
|---|---|---|
enabled | boolean | 是否启用新用户赠送 |
credits | number | 赠送积分数量(建议使用低成本模型,如 Sora 2) |
validDays | number | 积分有效期(天),过期后自动清除 |
成本考量
⚠️ 重要:仅赠送低成本模型!
不同模型的赠送建议:
- ✅ Sora 2 Lite(2积分):可赠送 1 个
- ⚠️ Veo 3.1(10积分):不建议赠送
- ❌ Wan 2.6(25积分):不赠送
高成本模型会让新用户赠送变成成本负担。
| 模型 | 成本 | 1000新用户成本 | 建议 |
|---|---|---|---|
| Sora 2 Lite | $0.02 | $20 | ✅ 可赠送 |
| Veo 3.1 | $0.14 | $140 | ⚠️ 不推荐 |
| Wan 2.6 | $0.35 | $350 | ❌ 不赠送 |
2. 积分过期配置
配置不同类型积分的有效期。
配置说明
| 字段 | 类型 | 说明 | 推荐值 |
|---|---|---|---|
subscriptionDays | number | 订阅积分有效期 | 30 天(月付) |
purchaseDays | number | 一次性购买积分有效期 | 365 天(1年) |
warnBeforeDays | number | 过期提醒提前天数 | 7 天 |
过期策略
FIFO 消费原则: 积分按照先过期先使用的原则消耗。
例如:
- 用户有 2 个积分包:A(30天后过期)和 B(100天后过期)
- 生成视频消耗积分时,优先使用包 A 的积分
3. 订阅产品配置
配置月付和年付订阅计划。
字段说明
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
id | string | ✅ | Creem Product ID(格式:prod_xxx) |
name | string | ✅ | 显示名称 |
priceUsd | number | ✅ | 价格(美元,如 9.9 表示 $9.90) |
credits | number | ✅ | 每周期赠送积分数(必须是整数) |
period | "month" | "year" | ✅ | 付费周期 |
popular | boolean | ❌ | 是否标记为推荐(最多选1-2个) |
enabled | boolean | ✅ | 是否启用该产品 |
features | string[] | ❌ | 功能特性列表 |
Creem Product ID 配置流程
- 登录 Creem Dashboard
- 创建订阅产品(Subscription)
- 设置产品名称、价格、描述
在产品列表中,复制产品的 Product ID(格式:prod_xxx)
将 Product ID 粘贴到 pricing-user.ts 对应产品的 id 字段
在 Creem Dashboard 设置 Webhook URL:
产品规划示例
月付订阅(3个)
| 名称 | 价格 | 积分/月 | 基准视频数 | 推荐度 |
|---|---|---|---|---|
| Basic | $9.90 | 280 | ~28 | - |
| Pro ⭐ | $29.90 | 960 | ~96 | 推荐 |
| Ultimate | $79.90 | 2,850 | ~285 | - |
年付订阅(3个)
年付优惠: 年付价格 = 月付 × 10(买 10 送 2,省 2 个月)
- Basic: $9.90 × 10 = $99
- Pro: $29.90 × 10 = $299
- Ultimate: $79.90 × 10 = $799
| 名称 | 年付价 | 积分/年 | 基准视频数 | 折扣 |
|---|---|---|---|---|
| Basic | $99 | 3,360 | ~336 | 17% OFF |
| Pro ⭐ | $299 | 11,520 | ~1,152 | 17% OFF |
| Ultimate | $799 | 34,200 | ~3,420 | 17% OFF |
4. 积分包配置
配置一次性购买的积分包。
字段说明
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
id | string | ✅ | Creem Product ID(格式:prod_xxx) |
name | string | ✅ | 显示名称 |
priceUsd | number | ✅ | 价格(美元) |
credits | number | ✅ | 积分数(必须是整数) |
popular | boolean | ❌ | 是否标记为推荐 |
enabled | boolean | ✅ | 是否启用 |
allowFreeUser | boolean | ❌ | 是否允许免费用户购买(默认 true) |
features | string[] | ❌ | 功能特性列表 |
allowFreeUser 说明
购买限制:
allowFreeUser: true- 所有用户都可以购买allowFreeUser: false- 只有订阅用户才能购买
设计目的:引导免费用户转为订阅用户。
积分包规划示例
| 名称 | 价格 | 积分 | 基准视频数 | 购买限制 |
|---|---|---|---|---|
| Starter | $14.90 | 280 | ~28 | 所有用户 |
| Standard ⭐ | $39.90 | 960 | ~96 | 订阅用户 |
| Pro | $99.90 | 2,850 | ~285 | 订阅用户 |
设计原则
- 积分包 > 月付: 积分包单价比月付贵 25-35%(引导订阅)
- 积分越多越优惠: 大额积分包提供更好的单价
- 分层限制: 入门包开放给所有用户,高级包仅限订阅用户
5. AI 模型积分计费
配置不同 AI 模型的积分消耗规则。
字段说明
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
baseCredits | number | ✅ | 基础积分(最短时长、最低画质) |
perSecond | number | ✅ | 每秒积分(用于按秒计费的模型) |
qualityMultiplier | number | ❌ | 画质乘数(1080p vs 720p) |
enabled | boolean | ✅ | 是否启用该模型 |
计费模式
1. 固定价格模式
适用于价格固定的模型(如 Veo 3.1, Sora 2):
2. 时长计费模式
适用于按时长计费的模型(如 Wan 2.6):
3. 按秒计费模式
适用于完全按秒计费的模型(如 Seedance):
画质乘数
画质乘数说明:qualityMultiplier 用于计算高画质的积分消耗。
示例(Wan 2.6):
- 720p(5秒)= 25 积分
- 1080p(5秒)= 25 × 1.67 = 42 积分(向上取整)
6. 定价策略参考
详细的定价策略和成本分析,请参阅:定价策略文档
快速定价指南
确定基准模型
选择 Veo 3.1 Fast Lite 作为定价基准:
- ✅ 固定价格(10 积分,不受分辨率影响)
- ✅ 成本稳定($0.14/视频)
- ✅ 适合大多数用户场景
设置订阅积分
| 计划 | 月付积分 | 年付积分 | 视频数/月 | 目标用户 |
|---|---|---|---|---|
| Basic | 280 | 3,360 | ~28 | 轻度用户 |
| Pro | 960 | 11,520 | ~96 | 专业用户 |
| Ultimate | 2,850 | 34,200 | ~285 | 重度用户 |
设置积分包
| 名称 | 积分 | 价格 | vs 月付 | 购买限制 |
|---|---|---|---|---|
| Starter | 280 | $14.90 | 同 Basic | 所有用户 |
| Standard | 960 | $39.90 | +33% vs Pro | 订阅用户 |
| Pro | 2,850 | $99.90 | +25% vs Ultimate | 订阅用户 |
7. 配置验证
检查清单
配置完成后,请检查以下项目:
-
NEW_USER_GIFT配置合理 -
CREDIT_EXPIRATION设置正确 - 所有产品的
enabled字段正确
- 所有
id字段都填入了 Creem Product ID - Product ID 格式正确(
prod_xxx) - Webhook URL 已配置
- 价格数值合理(美元)
- 积分数值为整数
- 年付 = 月付 × 10
- 前端价格页面显示正确
- 订阅流程正常
- 积分购买流程正常
常见错误
⚠️ 常见配置错误:
- 忘记填写 Product ID -
id: "prod_xxx"未替换 - 价格格式错误 - 使用了美分而不是美元(应该用
9.9而不是990) - 积分数值错误 - 使用了小数而不是整数
- 年付价格错误 - 未按照 月付 × 10 计算
8. 修改配置
如何修改价格
直接编辑 src/config/pricing-user.ts:
修改后保存文件,前端价格数据会自动更新,无需重启服务器。
如何禁用产品
将产品的 enabled 设为 false:
如何添加新模型
在 VIDEO_MODEL_PRICING 中添加新配置:
9. 相关文档
配置相关
- 价格配置(本文档) - 价格和积分配置(主要配置文档)
- 订阅计划配置(月付/年付)
- 积分包配置
- AI 模型定价配置
- 新用户赠送配置
- 积分过期规则
- 环境配置 - 环境变量配置(数据库、APIKey、支付等)
- 支付配置 - Creem 和 Stripe 支付集成
策略相关
安装部署
10. 故障排查
问题:前端价格没有更新
解决方案:
- 确认
pricing-user.ts已保存 - 清除浏览器缓存
- 检查前端是否正确导入配置
问题:Creem Webhook 不工作
解决方案:
- 确认 Webhook URL 配置正确:
https://yourdomain.com/api/auth/creem/webhook - 检查
CREEM_WEBHOOK_SECRET环境变量 - 查看 Better Auth Creem 插件日志
问题:积分消耗不正确
解决方案:
- 检查
VIDEO_MODEL_PRICING配置 - 确认前端和后端的积分计算逻辑一致
- 查看积分服务日志
最后更新: 2026-02-02