Stripe 支付流程连接器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/stripe-payment-flow-connector 到 AI 助手。
技能介绍
要解决的问题
手写 Stripe 接入时,容易在几个地方反复踩坑:PaymentIntent 与 Checkout Session 两条收款路径选错,Webhook 签名没有校验导致伪造请求被当成真实回调,Billing Portal 的跳转参数拼不对。这个技能把这几件事收敛成一条可复用的流程,让你不用每次重新翻文档。
核心能力与关键步骤
- PaymentIntents:在服务端创建并确认支付意图,适合自定义结账页面的场景,客户端只负责消费
client_secret。 - Checkout Sessions:生成托管式结算链接,把价格、成功与取消跳转地址一次配齐,不需要自己渲染支付表单。
- Billing Portal:为用户建立自助管理入口,处理订阅取消、支付方式更新这类后续操作。
- Webhook 验证:回调进来先调用
stripe.webhooks.constructEvent,用原始请求体与账户的签名密钥校验,校验不过就丢弃,避免把伪造的支付成功事件写进业务库。
典型步骤是:配置账户的 secret key → 按场景选 PaymentIntent 或 Checkout Session → 监听回调并在处理前验签 → 需要用户自助管理时接 Billing Portal。
适用边界与注意点
- 只覆盖 Node.js 端的 Stripe 集成,基于
stripe-nodeSDK,其它语言生态不适用。 - 所有请求都依赖先配置好 secret key,否则调用会直接失败;生产环境要区分测试密钥与正式密钥,并把密钥放在环境变量里而不是代码仓库。
- Webhook 验签依赖 原始请求体,中间件做过 body 解析或字段改写后验签会失败,需要确保拿到的是未修改的 payload。
- Billing Portal 的实际可用功能取决于账户套餐与后台配置,部分管理能力可能需要先在 Stripe 后台开启。
使用场景
- 独立开发者为 SaaS 接 Stripe 订阅,需用 Checkout Sessions 生成结算链接并跳转到成功页
- 电商后端要支持自定义收银台,用 PaymentIntents 在服务端创建并确认支付意图
- 平台需要让用户自助取消续费或更新支付方式,接入 Billing Portal 建立账户管理入口
- 订单服务收到 Stripe 回调,需调用 constructEvent 验签后再更新支付状态,防止伪造事件
适合人员
- 正在给 Node.js 服务接入 Stripe 收款的后端工程师,需要快速跑通 PaymentIntent 或 Checkout Session
- 负责订阅计费逻辑的开发者,要处理续费、取消和支付方式更新的请求流程
- 为付费用户搭建自助管理页面的中小产品团队,想通过 Billing Portal 减少客服工单
- 已有支付回调链路、需要补上 stripe.webhooks.constructEvent 验签步骤的全栈工程师