SaaS订阅支付全链路拆解:shadcn-nextjs-boilerplate中Stripe从Checkout到Webhook同步的完整指南 SaaS订阅支付全链路拆解shadcn-nextjs-boilerplate中Stripe从Checkout到Webhook同步的完整指南【免费下载链接】shadcn-nextjs-boilerplateShadcn UI NextJS Boilerplate ⚡️ Free Open-source ChatGPT UI Admin Dashboard Template - Horizon AI Boilerplate项目地址: https://gitcode.com/gh_mirrors/sh/shadcn-nextjs-boilerplateshadcn-nextjs-boilerplateHorizon AI Boilerplate是一个免费的开源Stripe 订阅支付SaaS 模板Next.js shadcn/ui Supabase。它把 SaaS 产品最复杂的订阅支付链路封装成了三个可直接复用的模块——Stripe 客户端初始化、Checkout 会话创建、Webhook 事件同步配合一套带 RLS 策略的数据库设计让新手也能快速搭建自己的订阅计费系统。一条链路从用户付款到数据库同步整个 Stripe 订阅支付链路可以概括为5 步配置密钥在.env.local.example中配置STRIPE_SECRET_KEY服务端与NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY浏览器端创建 Checkout 会话服务端调用 Stripe API生成支付页地址并跳转用户在 Stripe Checkout 完成付款Stripe 托管的收银台处理卡号、税务等敏感信息Stripe 发送 Webhook 事件如checkout.session.completed、customer.subscription.updatedNext.js API Route 验签后写入 Supabase产品、价格、订阅状态同步到数据库 上图为模板中内置的账户设置界面用户可在此管理资料并接收「订阅即将到期」等通知这正是订阅制产品常见的运营触点。核心组件三个文件看懂 Stripe 集成1️⃣ 双端 Stripe 客户端项目将 Stripe 拆成了服务端和浏览器端两个客户端这是 SaaS 订阅支付集成的标准姿势服务端utils/stripe/config.ts— 用STRIPE_SECRET_KEY创建 Stripe 实例支持LIVE/test双环境密钥切换并注册了官方插件信息appInfo浏览器端utils/stripe/client.ts— 通过loadStripe加载stripe/stripe-js使用单例模式缓存 Promise避免重复初始化为什么必须拆开因为 Secret Key 泄露意味着资金风险绝不能出现在客户端。2️⃣ Webhook 同步中枢app/api/webhooks/route.ts是整个订阅支付链路的心脏它做了三件关键的事验签用stripe.webhooks.constructEvent校验Stripe-Signature头防止伪造请求事件过滤只监听 7 类相关事件忽略噪音分发处理按事件类型路由到不同的数据库操作Stripe 事件触发时机数据库动作product.created/product.updatedStripe 后台创建/修改产品upsert 到products表price.created/price.updated定价变更如月费 9.99 改 12.99upsert 到prices表checkout.session.completed用户支付成功写入订阅记录mode subscription时customer.subscription.created新建订阅插入订阅 同步账单资料customer.subscription.updated升级/降级/暂停更新订阅状态customer.subscription.deleted取消订阅状态置为 canceled3️⃣ 数据库同步层utils/supabase-admin.ts使用 Supabase 的 Service Role Key仅服务端可用完成四类操作createOrRetrieveCustomer把 Supabase 用户 ID 映射到 Stripe Customer ID写入customers映射表upsertProductRecord/upsertPriceRecord产品与价格同步manageSubscriptionStatusChange订阅状态变更的核心函数拉取 Stripe 订阅详情后 upsert 到subscriptions表copyBillingDetailsToCustomer新订阅时把卡信息、账单地址写回 Stripe Customer 和本地用户表数据库设计schema.sql 中的四张表打开schema.sql订阅支付相关的表设计得非常清晰且全部启用了Row Level SecurityRLS表作用权限策略customersSupabase 用户 ↔ Stripe Customer 映射私有表用户零访问products产品Stripe 为主数据源公开只读prices价格支持one_time/recurring、day/week/month/year 周期公开只读subscriptions订阅状态active/trialing/past_due/canceled等 8 种状态仅本人可查一个值得学习的设计subscriptions表保存了cancel_at_period_end、trial_start、trial_end等完整时间轴字段前端只需查询即可渲染订阅还剩 5 天到期这类提示。 上图即基于本模板构建的 SaaS 产品主界面AI Chat。users表中的credits/trial_credits字段正是订阅权益与免费试用的扣费基础。快速上手三步跑通 Stripe 订阅支付Step 1配置环境变量复制.env.local.example为.env.local填入 Stripe Dashboard → API Keys 中的测试密钥NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEYpk_test_xxx STRIPE_SECRET_KEYsk_test_xxx STRIPE_WEBHOOK_SECRETwhsec_xxxStep 2初始化数据库将schema.sql在 Supabase SQL Editor 中执行自动创建四张表、触发器和 RLS 策略。Step 3本地调试 Webhook无需部署即可在本地调试stripe listen --forward-to localhost:3000/api/webhooksfixtures/stripe-fixtures.json提供了可直接导入 Stripe 测试环境的示例产品与定价数据配合 Stripe 的测试卡号4242 4242 4242 4242即可完整走通一次订阅支付。还能往哪扩展模板已预置了/dashboard/subscription路由见components/routes.tsx当前处于禁用状态——这正是留给你发挥的空间✅ 接入 Stripe Customer Portal让用户自助管理/取消订阅✅ 在 AI 功能app/api/chatAPI/中加入订阅状态校验实现免费试用 3 次 → 付费解锁✅ 利用trial_credits字段实现试用额度扣减与到期降级✅ 用products/prices的 Realtime 订阅schema 中已创建supabase_realtimepublication实现定价页的实时刷新总结shadcn-nextjs-boilerplate 的 Stripe 集成示范了一条教科书级的 SaaS 订阅支付架构密钥前后端分离、Webhook 验签、事件驱动同步、RLS 权限隔离。对于想上线订阅功能的 Next.js 开发者这套从 Checkout 到 Webhook 的完整链路值得直接抄作业 ⚡【免费下载链接】shadcn-nextjs-boilerplateShadcn UI NextJS Boilerplate ⚡️ Free Open-source ChatGPT UI Admin Dashboard Template - Horizon AI Boilerplate项目地址: https://gitcode.com/gh_mirrors/sh/shadcn-nextjs-boilerplate创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

最新新闻

数据仓库分层搭建全栈实战|全网独家复现ODS/HIS/DM分层架构、历史存储优化、维度建模助力企业数据标准化、治理化、高效化落地

数据仓库分层搭建全栈实战|全网独家复现ODS/HIS/DM分层架构、历史存储优化、维度建模助力企业数据标准化、治理化、高效化落地

目录 一、前言 二、数仓核心认知与分层建设核心目标 2.1 OLTP与OLAP核心差异(必懂基础) 2.2 企业数仓分层五大核心建设目标 三、企业标准三层数仓架构全解(ODS/HIS/DM) 3.1 ODS贴源层:数仓的数据源头与原始备份 3.1.1 核心定位与设计原则 3.1.2 两种核心数据同步策…

2026/8/25 11:04:32
QClaw Skills整合实战:3步打造7x24小时自动化工作流,效率提升300%

QClaw Skills整合实战:3步打造7x24小时自动化工作流,效率提升300%

最近一个月把QClaw用在了日常办公中,从最初只会让它整理文件,到现在已经能让它自动完成周报生成、数据报表分析、跨部门协作催办等复杂任务。核心秘诀就是用好它的Skills生态和多技能协同能力。 今天分享一套我实测有效的Skills整合方案,从安装到自定义开发再到工作流编排,…

2026/8/25 11:04:32
OpenClaw 2.7.5 Win11 一键配置实战:零代码实现电脑AI自动化,附踩坑全解

OpenClaw 2.7.5 Win11 一键配置实战:零代码实现电脑AI自动化,附踩坑全解

摘要:2026年GitHub星标28W+的开源本地AI智能体OpenClaw(小龙虾)迎来v2.7.5重磅更新!本文基于Windows 11全版本实测,提供零代码一键部署方案,详解Defender拦截、中文路径报错、SmartScreen警告等高频踩坑解决方案。无需Python/Node.js环境,5分钟即可拥有专属“数字员工”…

2026/8/25 11:04:32
提示词工程实战:7个可复制技巧,让AI幻觉率降低90%(附企业级模板)

提示词工程实战:7个可复制技巧,让AI幻觉率降低90%(附企业级模板)

做AI应用开发快两年了,踩过最多的坑就是AI幻觉。上个月让AI生成一份接口文档,它居然编了一个根本不存在的getUserInfoV3接口,导致前端开发联调了整整一天才发现问题。 后来我花了一个月时间系统研究提示词工程,结合公司内部20多个AI项目的实战经验,总结出了这套防幻觉方法…

2026/8/25 11:04:32
基于POMDP与强化学习的临床诊断AI:解决医疗AI落地最后一公里难题

基于POMDP与强化学习的临床诊断AI:解决医疗AI落地最后一公里难题

1. 从理想实验室到嘈杂诊室:临床诊断AI的“最后一公里”难题如果你关注过医疗AI的发展,可能会发现一个有趣的现象:很多在论文里表现惊艳的模型,一旦放到真实的医院场景里,表现就大打折扣。这背后的核心矛盾&#xff0c…

2026/8/25 11:04:32
第9课:TensorFlow|TF会话与执行机制【运行原理、会话管理、惰性执行深度解析】

第9课:TensorFlow|TF会话与执行机制【运行原理、会话管理、惰性执行深度解析】

文章目录1. 课前导读1.1 本节课学习目标1.2 知识重难点1.3 学习前置条件1.4 学完可掌握能力1.5 行业应用场景2. 核心理论精讲2.1 会话(Session)的核心职责2.2 惰性执行(Lazy Execution)2.3 Session.run() 核心参数2.4 会话配置&am…

2026/8/25 10:59:32