You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Amazon SP-API编程实现亚马逊订单取消功能

SP-API 订单取消功能实现方案

你在SP-API Orders API v0文档中找不到取消/删除订单的接口是正常情况:SP-API没有把订单取消能力放在Orders API模块下,实现逻辑和旧版MWS完全一致,需要通过Feeds API提交指定类型的feed完成操作,具体流程如下:

  • 前置校验:仅未进入发货履约流程的Pending状态卖家自配送订单支持API主动取消,FBA订单、已进入发货流程的订单无法通过该方式取消
  • 接口调用流程:
    1. 调用Feeds API的createFeedDocument接口创建上传文档,获取feedDocumentId和文件上传预签名地址
    2. 构造符合规范的XML格式feed内容,使用的feed类型和旧版MWS取消订单完全一致,为_POST_ORDER_ACKNOWLEDGEMENT_DATA_,基础结构示例如下:
<?xml version="1.0" encoding="UTF-8"?>
<AmazonEnvelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="amzn-envelope.xsd">
  <Header>
    <DocumentVersion>1.02</DocumentVersion>
    <MerchantIdentifier>你的店铺卖家ID</MerchantIdentifier>
  </Header>
  <MessageType>OrderAcknowledgement</MessageType>
  <Message>
    <MessageID>自定义消息序号,同一提交包内不重复即可</MessageID>
    <OrderAcknowledgement>
      <AmazonOrderID>待取消的亚马逊订单号</AmazonOrderID>
      <StatusCode>Failure</StatusCode>
      <CancelReason>对应平台规范的取消原因</CancelReason>
    </OrderAcknowledgement>
  </Message>
</AmazonEnvelope>
  1. 通过第一步拿到的预签名地址,上传构造完成的XML文件
  2. 调用Feeds API的createFeed接口,传入feed类型、之前获取的feedDocumentId、订单所属站点的市场ID,提交处理请求
  3. 轮询getFeed接口查询处理状态,待处理完成后调用getFeedDocument拉取结果报告,核对订单取消结果,处理报错条目

如果你之前已经实现过旧版MWS的订单取消逻辑,feed的XML结构、参数规则可以直接复用,仅需要把MWS侧的Feeds接口调用替换为SP-API的对应Feeds接口即可,核心业务逻辑不需要改动。

注意:不要尝试通过Orders API的修改备注、更新履约信息等接口绕路实现取消,这类操作不会触发平台侧的正式取消流程,反而可能导致订单状态异常触发履约违规。

内容的提问来源于stack exchange,提问作者holographix

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 20:39:18