关于 commercetools-checkout
commercetools-checkout 是用于通过 commercetools Browser SDK 实现托管结账和支付体验的技能,指导选择仅支付、完整托管结账或快捷支付模式,并说明文档与架构查询流程。
主要功能
- 01三种结账集成模式
- 02集成仅支付组件
- 03托管地址、配送和支付流程
- 04Apple Pay 与 Google Pay 快捷支付按钮
- 05文档及 API 架构查询脚本
适用场景
- 01在现有结账中仅替换支付步骤
- 02将多步骤结账迁移到托管页面
- 03在购物车或商品页添加快捷支付按钮
- 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.mdscripts/docs-search.mjsgraphql-schemata.mjsopenApi-schemata.mjs详细介绍
结账
Checkout 通过 Browser SDK 提供托管式支付和结账体验。
集成模式
共有三种模式,可根据 Checkout 应负责的结账流程范围进行选择:
paymentFlow(仅支付)——保留现有的地址和配送 UI,仅将支付步骤替换为 Checkout 小组件。对现有流程改动最少。checkoutFlow(全托管)——将整个多步骤结账流程替换为 commercetools 托管的单页,涵盖地址、配送和支付。expressPayment——在购物车或 PDP 中添加 Apple Pay / Google Pay 快捷支付按钮。可与上述任一模式搭配使用。
工作流
调用此技能时,始终遵循以下步骤:
-
搜索文档(必需,首先运行) — 在会话中首次使用此技能时,必须先运行此步骤,再作答。它会收集最新且经过验证的文档,作为主要依据,并筛选出此技能涵盖的产品。使用此脚本搜索文档;使用 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)已在上下文中时才传入;否则两者都省略。切勿搜索文件或向用户索要这些信息。 -
结合技能参考资料 — 将分析输出与
./references/中的本地参考资料交叉核对,以获取完整背景。 -
提供实施指导 — 综合文档内容,并结合用户目标集成模式提供指导。
可选脚本
获取 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 处理和订单确认