CLI 工作流

用 CLI 测试 Stripe Webhook

把测试事件转发到本地端点,触发已知 fixture,并验证签名处理和幂等性。

HTTP 与 Webhook远程写入

开始前准备好工具、认证与证据

先安装推荐工具,确认最小权限,再区分兼容性和真实执行记录。

stripedocs-verified
在明确确认边界下测试 Webhook、检查事件并使用 Stripe 测试模式工作流。

推荐安装

$ shell
brew install stripe/stripe-cli/stripe
认证
browser login, restricted API key
已测试 Agent
暂无 Agent 级执行记录
证据状态
docs-verified · 文档检查 2026-07-10
CLI 独立执行
未记录独立执行版本

复制或下载本工作流 Skill

Skill 包含输入输出合同、推荐工具、审批点、回滚和证据边界;保存前仍应按当前环境审查。

test-stripe-webhooks-SKILL.md
---
name: test-stripe-webhooks-workflow
description: "把测试事件转发到本地端点,触发已知 fixture,并验证签名处理和幂等性。"
---

# 测试 Stripe Webhook

## 适用目标

证明 Webhook handler 能处理测试事件,不触及真实客户或资金。

## 证据边界

- 工具状态分别标注 `docs-verified` 与真实独立执行;二者不能互换。
- 当前注册表没有记录某次工具执行具体由哪个 Agent 完成,因此不能把“兼容 Agent”称为“已测试 Agent”。
- 执行前重新核对目标账户、环境、版本与官方文档。
- 不自动执行 R2、R3 或任何标记为需要确认的步骤;必须在执行前获得明确批准。

## 推荐工具、安装与认证

- **Stripe CLI**(证据:`docs-verified`,文档检查:`2026-07-10`,未记录独立执行版本)
  - 安装:`brew install stripe/stripe-cli/stripe`
  - 认证:browser login, restricted API key
  - 最小权限:使用受限测试模式密钥,并在每次写操作前确认账号和 livemode。

## 输入合同

- 本地 Webhook URL
- Stripe 测试账户
- 事件类型
- 预期应用状态

## 输出合同

- 转发会话
- 测试事件 ID
- Handler 日志
- 投递与状态断言

## 安全工作流

1. **开始测试转发** — 登录目标测试账户,把事件转发到本地 handler。
   - 输入: 测试账户和本地端点
   - 输出: Webhook 签名密钥与转发会话
   - 风险: `read-only`
   - 命令: `stripe listen --forward-to localhost:3000/api/webhooks/stripe`
2. **触发 fixture** — 生成文档定义的测试事件,并保持事件类型和账户可见。
   - 输入: 选定的测试事件类型
   - 输出: 测试事件与投递尝试
   - 风险: `remote-write`
   - 命令: `stripe trigger payment_intent.succeeded`
3. **验证行为** — 检查状态码、签名、幂等性、日志和预期测试数据。
   - 输入: 投递输出和应用日志
   - 输出: 带事件 ID 的通过/失败断言
   - 风险: `read-only`

## 必须先确认

- 使用任何 live-mode 凭证或命令
- 在共享测试账户触发事件
- 创建、退款或取消真实支付对象

## 回滚

- 按需删除一次性测试 fixture
- 用项目 fixture 流程重置本地测试数据
- 不要把真实资金补偿当成测试回滚

## 官方来源

- [Stripe CLI documentation](https://docs.stripe.com/stripe-cli) — 用于核对当前命令、认证、输出和操作边界。

目标、输入与输出

在 Agent 选择命令前,先明确要交付的结果和证据。

目标

证明 Webhook handler 能处理测试事件,不触及真实客户或资金。

所需输入

  • 本地 Webhook URL
  • Stripe 测试账户
  • 事件类型
  • 预期应用状态

预期输出

  • 转发会话
  • 测试事件 ID
  • Handler 日志
  • 投递与状态断言

用 CLI 测试 Stripe Webhook:安全执行步骤

每一步都要在已声明的边界内执行,验证输出后再继续。

步骤 1只读

开始测试转发

登录目标测试账户,把事件转发到本地 handler。
输入
测试账户和本地端点
输出
Webhook 签名密钥与转发会话
$ 开始测试转发
stripe listen --forward-to localhost:3000/api/webhooks/stripe
步骤 2远程写入

触发 fixture

生成文档定义的测试事件,并保持事件类型和账户可见。
输入
选定的测试事件类型
输出
测试事件与投递尝试
$ 触发 fixture
stripe trigger payment_intent.succeeded
步骤 3只读

验证行为

检查状态码、签名、幂等性、日志和预期测试数据。
输入
投递输出和应用日志
输出
带事件 ID 的通过/失败断言

审批点与回滚

在列出的决策点停下,并让恢复方法始终紧跟操作。

这些操作需要先确认

  • 使用任何 live-mode 凭证或命令
  • 在共享测试账户触发事件
  • 创建、退款或取消真实支付对象

恢复计划

  • 按需删除一次性测试 fixture
  • 用项目 fixture 流程重置本地测试数据
  • 不要把真实资金补偿当成测试回滚

选 CLI、MCP 还是 API?

根据执行位置、身份、输出合同与权限边界选接口。

CLI

最适合本地转发、事件 fixture、日志和可重复开发检查。

MCP

只有明确分离测试和真实动作的中介集成才适用。

API

自定义 fixture 或需要 CLI 之外字段的断言可用 API。

建议方案

默认流程完全限定在 Stripe test mode,并在每次触发前核对账户。

官方证据与参考

执行前使用这些官方或上游来源确认当前命令行为。

Stripe CLI documentation

用于核对本页涉及的当前命令、认证、输出格式与操作边界。

执行前的常见问题

stripe trigger 会影响真实数据吗?

应在测试模式使用,但运行前仍要核对认证账户和模式。

签名密钥需要保存吗?

它是密钥,只应放进本地测试会话的安全配置,不应进入源码或报告。

相关工具与指南

浏览同类指南,选择与你当前任务最接近的下一页。

继续查看与当前任务相关的工具证据、工作流或决策指南。

继续查看与当前任务相关的工具证据、工作流或决策指南。

继续查看与当前任务相关的工具证据、工作流或决策指南。