WooCommerce API 创建重复 SKU 商品:幂等与重试边界排查
针对 WooCommerce API 创建同 SKU 重复商品的公开 Issue,区分请求重试、并发与数据修复,避免直接在生产库批量删除。
先给结论
本页处理的是 WooCommerce 公开 Issue #27295 中的特定现象:通过 API 创建了具有相同 SKU 的重复商品。把它当作“导入或写入流程需要复核”的信号,而不是直接认定为某个版本、网络或账户问题。
第一步不是批量删除,而是冻结自动重试与重复导入,保存最小请求时间线,并在测试副本上验证。
可追溯证据与范围
WooCommerce Issue #27295 记录了 API 创建同 SKU 重复商品的公开报告。Research Engine 于 2026-08-11 抓取并评为 A 级来源。该报告没有自动证明所有版本或所有 API 客户端均存在相同原因。
官方的 WooCommerce Orders Documentation 可用于理解后台订单操作边界,但不构成此 API 个案的修复说明。涉及商品写入时,应以正在使用的 API 版本和扩展文档为准。
先建立安全的影响清单
在测试副本或只读导出中记录:
- 重复 SKU、各商品 ID、创建时间与创建来源标签;
- 同一时间窗口内的任务执行次数、重试次数和队列状态;
- 是否由导入器、ERP、定时任务或人工后台操作触发;
- 相关商品是否已经进入订单、库存或广告目录流程。
不要在文章、工单或截图中披露客户资料、订单明细、访问令牌或完整 API 请求头。
排查顺序
- 为每一次“创建商品”操作分配可追踪的业务请求标识,并确认失败后是否会无条件再次提交。
- 比较重复商品的创建时间。相邻时间戳更可能提示重试或并发路径,但仍需要日志和执行记录确认。
- 在测试副本中只运行一次最小创建流程;随后分别测试网络超时、客户端重试和并发工作者。不要把模拟结果当作生产结论。
- 检查导入器/ERP 是否同时拥有创建权限,避免两个系统对同一 SKU 各自写入。
- 数据修复前确认订单、库存和外部目录关联。由已批准的维护人员按可回滚方案合并、下线或更正记录。
何时升级
当同一最小 API 请求在隔离环境中只执行一次仍产生重复记录,或能够排除客户端重试与并发任务时,提交 WooCommerce 版本、API 路径、脱敏请求标识、最小复现步骤和当前商品状态给维护者。引用 Issue #27295 只用于说明相似现象曾被报告。
验证与回滚
修复后,连续运行受控的单次创建、失败重试和并发保护测试;确认每种路径的商品数、SKU 唯一性规则和后续订单链路符合预期。若结果不稳定,恢复到已知安全的导入流程,暂停自动写入并保留脱敏证据供后续调查。
常见问题
相同 SKU 一定代表 WooCommerce 核心缺陷吗?
不是。公开 Issue 证明该现象曾被报告;请求重试、并发写入、导入器或第三方扩展也可能需要独立核验。
可以立刻删除重复商品吗?
不建议。先在备份或测试副本建立受影响记录与订单关联检查,再走已批准的数据修复流程。