AI SaaS 上线清单:从 Prompt 到付费产品
把 AI 提示词变成付费 SaaS,关键不是一次完美的模型调用,而是七个相互连接的工作流。用这份清单避免把模型 Demo 当成产品。
1. 先建立运行基线
NimBuild Starter 固定使用 Node.js、pnpm 10、PostgreSQL、Next.js 16 和 React 19。新增产品功能前:
node --version
pnpm --version
pnpm install
cp .env.example .env.local
至少配置数据库连接、公开站点 URL、Firebase 客户端配置和 Firebase 服务账号配置,然后初始化数据库:
pnpm db:push
pnpm dev
在能登录、加载受保护路由并连接本地数据库之前,不要开始定制。
2. 让身份和产品状态保持一致
NimBuild 使用 Firebase Google 登录作为身份提供商。Firebase 返回 ID Token 后,浏览器提交到 session-login 接口;服务端验证 Token、创建 HttpOnly 会话 Cookie,并同步本地 PostgreSQL 用户记录。
本地用户保存角色、套餐、积分和封禁状态等产品字段。请保持这个分工:
- Firebase 回答“这个人是谁?”
- PostgreSQL 回答“这个账户在产品里能做什么?”
Cloudflare Turnstile 是可选的。如果希望 Google 按钮只在风险检查通过后出现,需要同时配置公开 site key 和服务端 secret。
3. 尽早配置商业计费
NimBuild 使用 Stripe 订阅结账。接受真实付款前,先替换为你自己的 Stripe Price ID。
文档中的 starter 方案为:
| 方案 | 价格 | 积分 |
|---|---|---|
| Basic 月付 | $19 | 每月 1,000 |
| Basic 年付 | $190 | 每年 12,000,按月发放 |
| Pro 月付 | $49 | 每月 5,000 |
| Pro 年付 | $490 | 每年 60,000,按月发放 |
然后把 Stripe Webhook 指向:
https://your-domain.com/api/payments/stripe/webhook
签名验证和重复支付检查是上线要求,不是后续加固项。
4. 把积分当产品账务
只存在于 UI 的余额无法支撑客服请求、退款和续费争议。NimBuild 将快速用户余额、可消费积分桶和不可变账本组合在一起。
上线前确认这些原因只出现在正确位置:
registration_bonusdaily_grantsubscription_cyclesubscription_scheduleadjustmentrefundcredit_expiredai_generationai_generation_refund
每次发放、扣除、退款、调整和过期都应具备事务性和可解释性。
5. 把 AI 工作流放进产品规则
NimBuild 文档中的 AI 工作区使用 Volcengine 生成 AI 文案,并包含积分扣除和生成历史。你的产品工作流应回答:
- 接受什么输入 schema?
- 哪些角色或套餐可以使用?
- 消耗多少积分?
- 是否只在扣款成功后启动外部工作?
- 超时、无效响应或部分输出时怎么处理?
- 用户在哪里查看生成历史?
把提供商调用留在 provider extension,把产品工作流留在 feature 或 module 边界内。这样后续替换 Volcengine 或新增提供商时,不需要重写计费和 UI。
6. 在第一个客服问题前准备好运营
第一批工单通常是:
- “我付款了,但套餐没更新。”
- “我被扣款了,但没有收到积分。”
- “AI 失败了,我的积分却消失了。”
- “为什么我的促销积分过期了?”
NimBuild 的管理后台覆盖用户、订阅、积分调整和账本历史。上线前用这些问题逐个测试。如果运营者无法诊断事件链,工作流就还没准备好。
7. 按生产清单部署
最低上线配置:
- 执行数据库迁移。
- 配置 Stripe Webhook。
- 配置订阅发放和积分过期的 cron。
- 创建管理员账号。
- 验证 Firebase authorized domains。
- 配置 Resend 和已验证发送域名。
- 配置 Volcengine API 凭据。
- 设置生产站点 URL。
- 只有准备好使用数据时才配置分析。
年付方案需要每小时调用 /api/cron/subscription-grants。可过期积分需要调度 /api/cron/credit-expiry。两者都要用 CRON_SECRET 或 Basic Auth 保护。
上线的是闭环
付费 AI SaaS 需要完整闭环:账户、结账、积分、AI 工作、历史、运营和续费。NimBuild Starter 的价值在于让你把时间花在客户付费的产品工作流上,而不是重建底层授权和账务系统。
