在 Next.js 中设置 Stripe 订阅是一项听起来简单但充满各种陷阱的任务。在多个 SaaS 项目中实现之后,以下是完整且可用于生产环境的方法。
我们将要构建的内容
- 用于新订阅的 Stripe 结账页面
- 用于支付事件的 Webhook 处理
- 包含免费版、专业版和企业版的套餐管理
- 供用户自助管理账单的客户门户
1. 安装依赖项
npm install stripe @stripe/stripe-js
2. 定义你的套餐
为你的套餐创建一个集中配置。这是功能和限制的唯一真实来源:
// src/lib/stripe.ts
import Stripe from "stripe";
export const stripe = new Stripe(process.env.STRIPE_SECRET_KEY!);
export const PLANS = {
free: {
name: "免费版",
price: { monthly: 0 },
features: ["最多 3 个项目", "基础分析功能", "社区支持"],
limits: { projects: 3, aiMessages: 50 },
},
pro: {
name: "专业版",
price: { monthly: 29 },
stripePriceId: process.env.STRIPE_PRO_PRICE_ID,
features: ["无限项目", "高级分析功能"免责声明:本文内容来自互联网,该文观点不代表本站观点。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请到页面底部单击反馈,一经查实,本站将立刻删除。