全部 Skill/Stripe 支付与账单平台

Stripe 支付与账单平台 Skill

Stripe 现在的官方默认首选是 Checkout Sessions 配合 Payment Element,而不是多数训练语料里仍当作「现代方案」的 PaymentIntents 直连——这条推荐在抓取时点又变过一次。test 模式与 live 模式是两个完全隔离的数据世界,对象 ID 格式一模一样却互不相通,是代码审查最容易漏掉的坑。本 skill 只用于帮助写对、审查集成代码,不能用来让 Agent 自主发起真实资金的转移,任何涉及真钱的操作都必须先经人工确认。

文档版 · 未实测stripeapi.stripe.comHTTP Basic Auth:API key 作用户名、密码留空(如 curl -u sk_test_xxx:),跨域场景改用 Authorization: BearerAgent 工具更新 2026-09-21
7份 reference
6个易错点
0条无凭证探测
2026-09-21文档抓取
INSTALL · 安装

安装

选你用的 Agent,复制命令。

npx -y skills add fxp/skillify --skill stripe --agent claude-code --yes

装到项目的 .claude/skills/;加 -g 装到全局。装完需要你手动执行 /reload-plugins,这一步 Agent 代劳不了。

或者让 Agent 自己装

读 https://github.com/fxp/skillify/blob/main/skills/stripe/prompt.md 并照它执行

装对了的标志:references/ 下有 7 份文档。

TRY ASKING · 装好后可以这样问

装好后,可以这样问你的 Agent

这份 Skill 覆盖的典型任务。点一下复制。

CAPABILITIES · 能力清单

7 类能力

每类能力对应一份 reference,Agent 按任务只打开需要的那份。

鉴权与 Test/Live 隔离

Basic Auth 精确格式、pk/rk/sk 三种 key 的权限边界、test 与 live 两套隔离数据、给 Agent 用的 Restricted Key 与两方审批机制

references/auth-and-modes.md

接受支付:Checkout Sessions / PaymentIntents

选型判断、PaymentIntent 生命周期与创建/确认参数、金额与货币的 100 倍陷阱、测试卡号

references/accepting-payments.mdPOST /v1/checkout/sessions · POST /v1/payment_intents · POST /v1/payment_intents/:id/confirm

客户与已保存的支付方式

Customer 增删改查、PaymentMethod 创建、三种关联支付方式的方式怎么选、SetupIntent 只保存不收款

references/customers-and-payment-methods.mdPOST /v1/customers · POST /v1/payment_methods · POST /v1/payment_methods/:id/attach · POST /v1/setup_intents

订阅与账单

Product/Price/Subscription/Invoice 对象关系、创建订阅前置条件、payment_behavior 首期扣款陷阱、取消与更新、该监听的 webhook 事件

references/subscriptions-and-billing.mdPOST /v1/subscriptions · GET /v1/subscriptions/:id · POST /v1/subscriptions/:id · DELETE /v1/subscriptions/:id

Webhook 与签名校验

为什么不验证签名是安全漏洞、官方库与手写验证算法、框架改写原始请求体导致校验失败、常见事件类型、可靠性实践

references/webhooks.mdPOST /v2/core/event_destinations · your HTTPS endpoint + Stripe-Signature header

幂等与重试

Idempotency-Key 精确行为、key 生成策略、4xx 与 5xx 该怎么重试、SDK 自动重试、幂等键不等于业务层去重

references/idempotency-and-retries.mdAll POST requests · Idempotency-Key header

错误处理与限流

HTTP 状态码与 error 对象字段、四种错误类型、卡拒付测试卡号、全局与资源级限流、SDK 异常映射

references/errors-and-limits.mdGlobal · 100 req/s (live) · 25 req/s (sandbox)
FACTS · 当前事实

当前事实

整理自官方文档(抓取于 2026-09-21),还没有用真实凭证验证。

项值
Base URLhttps://api.stripe.com/v1;少数较新资源(event destinations、approval requests)挂在 /v2 下,需额外带 Stripe-Version header
鉴权格式API key 作 HTTP Basic Auth 的用户名、密码留空:curl -u sk_test_xxx:(冒号不能省);跨域场景用 Authorization: Bearer sk_test_xxx,没有 X-Api-Key 之类的自定义 header
Test / Live 隔离两套完全独立的数据世界:sk_test_... 创建的 cus_/pi_/sub_ 对象 ID 与 live 模式格式完全相同但互不可访问,只能靠「这个 ID 是哪个 key 返回的」来判断模式
金额单位amount 永远是目标货币最小单位的整数:amount=1099 对 USD 是 $10.99;零小数货币(JPY/KRW 等)整数本身就是金额,不用再乘 100
幂等重试创建类 POST 重试时带同一个 Idempotency-Key header(最长 255 字符),Stripe 返回缓存结果而不是重复执行,key 至少 24 小时后失效
GOTCHAS · 易错点

照通用经验写容易错的 6 件事

来自官方文档,还没有用真实凭证验证。

  1. 本 skill 不能用于让 Agent 自主发起真实资金的转移。任何创建真实收费、退款、订阅变更的代码,连接 live 环境前必须有人工确认;给 Agent 用的 key 建议用 rk_... Restricted Key 并在创建时标记 agent-tagged,让敏感操作(退款、取消订阅等)先返回 approval_required 走人工审批,而不是把无限制的 sk_live_... 直接交给 Agent。
  2. 框架在你验证签名前就把原始请求体改写了,签名必然对不上。Express 要在 express.json() 之前给 webhook 路由单独用 express.raw({type: 'application/json'}),Next.js 要关闭默认 body parsing,否则会报 No signatures found matching the expected signature for payload。
  3. 用同一个 Idempotency-Key 重试 4xx 错误只会拿到缓存的同一个错误,不会重新校验参数。修正参数后必须换一个新 key 再发;5xx 则可以用同一个 key 安全重试。
  4. Stripe 现在的默认首选是 Checkout Sessions + Payment Element,不再是 PaymentIntents 直连。官方文档说除非用户明确要求自定义流程,否则不要直接手搭 PaymentIntents + Elements,因为代码量明显更大——这和多数训练语料里的「现代方案」已经不一致。
  5. 创建订阅时不显式传 payment_behavior,默认的 allow_incomplete 会在同一个请求里偷偷尝试首期扣款。要让扣款完全由自己代码显式触发,必须传 payment_behavior=default_incomplete,否则一次 POST /v1/subscriptions 调用可能已经真实扣了款。
  6. 直接调 /attach 绑定支付方式不是推荐路径。POST /v1/payment_methods/{id}/attach 跳过了 SetupIntent/PaymentIntent 里「为未来复用优化」的必要步骤,官方文档说会导致以后用这张卡扣款时拒付率和认证摩擦更高;保存卡应该用 SetupIntent 或 PaymentIntent 的 setup_future_usage。
STATUS · 验证状态

验证状态

文档版:整理自官方文档(抓取于 2026-09-21),还没有用真实凭证调用验证。页面和 Skill 里标「文档原文,未实测」的报错与行为都来自文档本身。

有这个平台的沙箱或 API Key?联系我们——补测并做完装与不装的对照测试后,它会升级为「已实测」。