在2026-10版本中,GraphQL Admin API 现在支持用于库存发货的接收操作中的CANCELED取消操作。当货物永远不会到达时,您可以将库存发货行项目单位标记为已取消,并且可以读取发货及其行项目上的取消数量。这是对2026-10候选版本的附加更改。无需采取任何操作,早期 API 版本的应用程序不受影响。
变更内容
取消接收加入了版本2026-10中库存发货 API 上现有的接受和拒绝接收操作。
新增字段
- InventoryShipment上的totalCanceledQuantity:发货中所有行项目中标记为取消的项目总数量,以及现有的totalAcceptedQuantity和totalRejectedQuantity字段。
- InventoryShipmentLineItem上的canceledQuantity:行项目中标记为取消的项目数量,以及现有的acceptedQuantity和rejectedQuantity字段。
取消的单位计入InventoryShipment.totalReceivedQuantity,因此在2026-10上,接收总数完全分解为已接受、已拒绝和已取消。
新增枚举值
- InventoryShipmentReceiveLineItemReason上的CANCELED。在inventoryShipmentReceive突变的行项目中将其作为reason传递以将单位标记为取消,或作为bulkReceiveAction传递以将发货中所有剩余单位标记为取消。
Webhook 负载更新
在版本2026-10或更高版本上订阅webhook 主题的inventory_shipments/receive_items现在会在items_received的每个条目中接收old_canceled_quantity和new_canceled_quantity,且仅更改取消数量的接收现在会触发交付。早期版本的订阅保持不变。取消字段从有效载荷中省略,且仅取消的接收不会为这些版本触发交付。
受影响对象
使用 GraphQL Admin API 版本2026-10或更高版本(或unstable)来读取库存发货、接收发货行项目或订阅inventory_shipments/receive_items webhook 的应用程序可以使用取消接收操作。
版本早于2026-10的应用程序不受影响。新字段和枚举值不可用,webhook 有效载荷保持其当前形状,且仅取消的接收对于这些订阅仍被抑制。
为何重要
收到库存调拨的商家有时会发现,部分货物将永远不会送达。在此之前,API 仅支持接受或拒绝接收货物,因此应用无法记录或观察这一结果。这些货物要么永远处于未接收状态,要么必须被错误地记录为已拒绝。取消接收操作能够准确地关闭这些货物的状态,而将与采购订单、仓库管理系统或第三方物流(3PL)同步接收状态的应用程序现在可以记录和反映完整的情况。
操作步骤
无需采取任何操作。要使用取消接收操作:
- 将您的应用程序更新到 API 版本2026-10。
- 在您的应用程序显示或同步接收进度的地方查询InventoryShipment上的totalCanceledQuantity以及InventoryShipmentLineItem上的canceledQuantity。
- 当您标记不会到达的单位时,将reason: CANCELED传递给inventoryShipmentReceive。
- 针对开发商店进行测试,并确认您的inventory_shipments/receive_items webhook 处理器处理old_canceled_quantity和new_canceled_quantity字段。
此示例将发货行项目上的 5 个单位标记为取消,并读回更新的取消数量。将 ID 替换为您自己的发货和行项目 ID,并为每次接收生成唯一的幂等性密钥。自版本2026-04起,此突变需要该密钥。有关详细信息,请参阅幂等请求指南。
相关文档
- inventoryShipmentReceive 变异
- InventoryShipment 库存运输对象
- InventoryShipmentLineItem 库存发货行项目对象
- InventoryShipmentReceiveLineItemReason enum
- Webhooks 参考

