Shopify Storefront API

checkoutCreate 已停用后结账流程怎么改

现象#

老代码还在调 checkoutCreate,现在返回 Field 'checkoutCreate' doesn't exist on type 'Mutation',整个下单链路断掉,日志里没有其他线索。

原因#

  • Checkout APIs 在 2025-04 版本正式关停,Storefront 的 checkout mutation 与 REST checkout 端点都不再可用
  • 替代路径是 Cart API:cartCreate 建车、cartLinesAdd 加行、checkoutUrl 跳转
  • 错误结构从 checkoutUserErrors 换成 userErrors,字段层级也一起变了
  • checkoutLineItemsReplace 这类批量替换要拆成 cartLinesUpdate,或先删后加

处理步骤#

  1. 全局搜 checkoutCreate、checkoutLineItemsAdd、checkoutUserErrors,列出所有调用点
  2. 用 cartCreate(input: { lines: [{ merchandiseId, quantity }] }) 替换创建逻辑
  3. 把 checkout.webUrl 改成 cart.checkoutUrl,跳转方式保持不变
  4. 错误处理改为读 userErrors { field message code },同时处理 warnings
  5. 把端点版本固定为 2026-07 后回归下单、折扣、库存不足三条路径

验收标准#

下单链路不再出现 checkoutCreate 相关报错,cart.checkoutUrl 能打开结账页并成功创建订单。

本文由 风格技术 技术团队整理,适用于 Shopify 标准版与 Plus 店铺。Shopify 平台能力迭代较快,具体操作路径与字段以官方文档和店铺后台实际版本为准。