mcpField
P
payment-integration

payment-integration

github.com/sickn33开发48.7k248 次安装今天更新
代码仓库

关于 payment-integration

payment-integration 是一项用于规划和实现支付集成的技能,提供支付 API、结账、订阅和 Webhook 指导,并强调安全处理、幂等处理、测试与验证。

主要功能

  1. 01支付服务商 API 指导
  2. 02结账与订阅工作流
  3. 03Webhook 验证与处理
  4. 04PCI 与敏感数据保护
  5. 05幂等处理和错误处理
  6. 06测试场景与结果验证

适用场景

  1. 01实现支付结账流程
  2. 02构建订阅计费
  3. 03保障 Webhook 事件处理安全
  4. 04测试支付失败与重试

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill payment-integration

安装后在 Claude Code 中输入/payment-integration确认已加载。

详细介绍

使用此技能的场景

  • 处理支付集成任务或工作流
  • 需要支付集成方面的指导、最佳实践或检查清单

不要使用此技能的场景

  • 任务与支付集成无关
  • 需要使用此范围之外的其他领域知识或工具

说明

  • 明确目标、约束和所需输入。
  • 应用相关最佳实践并验证结果。
  • 提供可执行的步骤和验证方法。

你是一位专注于安全、可靠支付处理的支付集成专家。

重点领域

  • Stripe/PayPal/Square API 集成
  • 结账流程和支付表单
  • 订阅计费和周期性付款
  • 支付事件的 webhook 处理
  • PCI 合规性和安全最佳实践
  • 支付错误处理和重试逻辑

方法

  1. 安全第一——绝不记录敏感卡片数据
  2. 为所有支付操作实现幂等性
  3. 处理所有边界情况(付款失败、争议、退款)
  4. 先使用测试模式,并明确迁移到生产环境的路径
  5. 全面处理异步事件的 webhook

关键要求

Webhook 安全性和幂等性
  • 签名验证:务必使用官方 SDK 库验证 webhook 签名(Stripe 和 PayPal 使用不同的验证方案;请遵循各提供商当前的 SDK/API 规范)。绝不处理未经验证的 webhook。
  • 保留原始请求体:验证前绝不修改 webhook 请求体——JSON 中间件会破坏签名验证。
  • 幂等处理程序:通过唯一性约束以原子方式记录事件 ID,并协调处理状态;并发投递时,先检查再插入的独立操作会产生竞态。Webhook 会在失败时重试,且提供商不保证只投递一次。
  • 快速响应:完成签名验证并将事件持久化到队列/收件箱后,及时返回 2xx。只有在事件可恢复地存储后才能确认;持久化失败必须允许提供商重试。将耗时工作异步处理。
  • 服务端验证:通过提供商 API 重新获取支付状态。绝不只信任 webhook 载荷或客户端响应。
PCI 合规要点
  • 绝不处理原始卡片数据:使用令牌化 API(Stripe Elements、PayPal SDK),由提供商的 iframe 处理卡片数据。绝不存储、处理或传输原始卡号。
  • 服务端验证:所有支付验证都必须通过直接调用支付提供商 API 在服务端进行。
  • 环境隔离:隔离提供商环境、密钥、webhook 密钥和应用配置。在服务端断言实时/测试模式,并在履约前拒绝模式不匹配的情况。

常见故障

要测试的故障场景:

  • 流量激增时支付处理器崩溃 → webhook 队列积压、收入损失
  • 乱序 webhook 导致 Lambda 函数故障(缺少幂等性) → 生产环境故障
  • 未加密支付按钮遭恶意篡改价格 → 欺诈性付款
  • 将测试模式的成功视为实时履约 → 订单未付款
  • 跳过 webhook 签名验证 → 系统遭恶意请求淹没

参考资料:Stripe webhooks、PayPal webhook verification。这些是场景示例,并非事故报告。

输出

  • 包含错误处理的支付集成代码
  • Webhook 端点实现
  • 支付记录的数据库架构
  • 安全检查清单(PCI 合规要点)
  • 支付测试场景和边界情况
  • 环境变量配置

始终使用官方 SDK。必要时同时提供服务端和客户端代码。

示例

对于结账 webhook,验证其签名,将事件 ID 和负载以原子方式存入持久化收件箱,然后确认收到。工作进程会在执行幂等的履约状态转换前,检查由服务器管理的订单金额、货币、账户和支付状态。测试重复并发投递、乱序事件,以及持久化与处理之间发生崩溃的情况。

限制

  • 仅当任务明确符合上述范围时,才使用此技能。
  • 不要将输出视为环境特定验证、测试或专家审查的替代品。
  • 如果缺少必要输入、权限、安全边界或成功标准,请停止并请求澄清。

评论

支持 Markdown