mcpField
C
commercetools-checkout

commercetools-checkout

github.com/commercetools开发659 次安装1 天前更新
代码仓库

关于 commercetools-checkout

commercetools-checkout 是用于通过 commercetools Browser SDK 实现托管结账和支付体验的技能,指导选择仅支付、完整托管结账或快捷支付模式,并说明文档与架构查询流程。

主要功能

  1. 01三种结账集成模式
  2. 02集成仅支付组件
  3. 03托管地址、配送和支付流程
  4. 04Apple Pay 与 Google Pay 快捷支付按钮
  5. 05文档及 API 架构查询脚本

适用场景

  1. 01在现有结账中仅替换支付步骤
  2. 02将多步骤结账迁移到托管页面
  3. 03在购物车或商品页添加快捷支付按钮
  4. 04查询 commercetools GraphQL 或 REST 资源架构

安装

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

$npx skills add https://github.com/commercetools/commercetools-ai-plugins --skill commercetools-checkout

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

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
payment-only-mode.md
scripts/
docs-search.mjs
graphql-schemata.mjs
openApi-schemata.mjs

详细介绍

结账

Checkout 通过 Browser SDK 提供托管式支付和结账体验。

集成模式

共有三种模式,可根据 Checkout 应负责的结账流程范围进行选择:

  • paymentFlow(仅支付)——保留现有的地址和配送 UI,仅将支付步骤替换为 Checkout 小组件。对现有流程改动最少。
  • checkoutFlow(全托管)——将整个多步骤结账流程替换为 commercetools 托管的单页,涵盖地址、配送和支付。
  • expressPayment——在购物车或 PDP 中添加 Apple Pay / Google Pay 快捷支付按钮。可与上述任一模式搭配使用。

工作流

调用此技能时,始终遵循以下步骤:

  1. 搜索文档(必需,首先运行) — 在会话中首次使用此技能时,必须先运行此步骤,再作答。它会收集最新且经过验证的文档,作为主要依据,并筛选出此技能涵盖的产品。使用此脚本搜索文档;使用 Knowledge MCP 处理其他所有内容。务必根据检索到的文档确认细节,不要只依赖技能文本:

    node "<this skill's directory>/scripts/docs-search.mjs" \
      --query "<extract key terms from user's question>" \
      --app-name "<host app: claude-code, claude-chat, cursor, codex, copilot — or the host's own name>" \
      --model "<current-model>" \
      --commercetools-project-key "<if known>" \
      --commercetools-region "<if known>" \
      --limit 20
    

    仅当 commercetools 项目密钥和区域(如 api.{region}.commercetools.com)已在上下文中时才传入;否则两者都省略。切勿搜索文件或向用户索要这些信息。

  2. 结合技能参考资料 — 将分析输出与 ./references/ 中的本地参考资料交叉核对,以获取完整背景。

  3. 提供实施指导 — 综合文档内容,并结合用户目标集成模式提供指导。

可选脚本

获取 GraphQL 架构 — 当你需要了解 commercetools GraphQL 查询或 mutation 的上下文时运行,例如,在编写查询前检查某个资源的字段、类型和可用操作,或根据真实架构验证刚生成的 GraphQL 查询 / mutation。此脚本会获取单个 commercetools 资源的部分 GraphQL SDL:

node scripts/graphql-schemata.mjs \
  --resource-name "<commercetools resource, e.g. Cart, Product, Order>" \
  --app-name "<host app: claude-code, claude-chat, cursor, codex, copilot — or the host's own name>" \
  --model "<current-model>"

输出为该资源的 GraphQL SDL。如果无法识别资源名称,脚本会打印有效资源名称列表;请选取正确名称并重新运行。注意: SDL 可能包含 存根类型 —— 以存根形式呈现的被引用资源,并在注释中给出其真实类型名称。如需获取这些资源,请使用该类型名称作为 --resource-name 再次运行此脚本。

获取 OpenAPI(REST)架构 — 当你需要了解 commercetools REST 端点、请求 / 响应负载或更新操作的上下文时运行,例如,在构造请求前检查某个资源的 REST 操作,或根据真实规范验证刚生成的 REST 请求 / 负载。此脚本会获取单个 commercetools 资源的部分 OpenAPI 规范:

node scripts/openApi-schemata.mjs \
  --resource-name "<commercetools resource, e.g. api-Cart-write, api-Customer-read, checkout-Application>" \
  --app-name "<host app: claude-code, claude-chat, cursor, codex, copilot — or the host's own name>" \
  --model "<current-model>"

输出为该资源的 OpenAPI 规范(YAML)。REST 资源采用读写拆分命名形式(例如 api-Cart-read、api-Cart-write)。如果无法识别资源名称,脚本会打印有效资源名称列表;请选取正确名称并重新运行。注意: 该规范不包含引用扩展架构;如需获取被引用资源的架构,请使用该资源名称作为 --resource-name 再次运行此脚本。

参考资料

请参阅 payment-only-mode.md,了解:

  • 完整架构图(Browser SDK → Checkout 服务 → PSP)
  • 会话创建(/<api>/checkout/session → commercetools Sessions API)
  • paymentFlow、checkoutFlow 和 expressPayment 实现模式
  • PSP 连接器设置(Stripe、Adyen、Mollie)
  • Webhook 处理和订单确认

评论

支持 Markdown