问题太不清晰了。 你看的是什么时候的文档?
如果只是调用SP-API已经不需要IAM这些了。
如果需要对接通知,那就是另外一个问题了,可以参考:https://sp-api.net/ask/question/208673.html
如果遇到申请问题需要协助可以随时联系我: 微信 sfgoods
这个需求可以通过两个 API 来实现:
如果是批量统计,用 Reports API 里的 GET_FLAT_FILE_RETURNS_DATA_BY_RETURN_DATE 这个报告类型,里面直接有 Return Reason(退货原因)、Return quantity(数量)、Refunded Amount(退款金额)、Return request date(申请日期)这些字段,拿到数据之后按日期字段自己做分组统计就行了,单次最多支持查 60 天的数据。
如果只是查某一笔订单的退款,用 Finances API 的 listFinancialEventsByOrderId,传订单号进去就能拿到对应的财务事件,包括退款金额。
一般是先用 Reports API 拉一段时间的平铺文件做统计分析,单笔核查的时候再用 Finances API 补充确认,两个配合着用比较方便。
另外需要注意申请 Inventory and Order Tracking 这个角色权限,没有这个权限的话 Returns 报告是拉不到的。
最近太忙了,没注意到还有这个提问
打印箱子标签用的是 getLabels:
**GET /fba/inbound/v0/shipments/{shipmentId}/labels
**
注意 shipmentId 要传的是 shipmentConfirmationId,就是那个 FBA15G7C2CZQ 这种格式的,不是 v2024 流程里 createInboundPlan 返回的那个 shipmentId
PageType 传 PackageLabel_Plain_Paper 就行,你截图里选的 99x105 A4 纸每页6个,对应的就是这个。
文档地址: https://developer-docs.amazon.com/sp-api/reference/getlabels
API调试地址:
ERP 系统是可以直接通过 SP-API 的 FBA Inbound v2024-03-20 来实现自动分仓的,不过新版 API 的流程和以前 createInboundShipmentPlan 不一样,需要按新的流程调用。
一般 ERP 对接的流程大致是:
createInboundPlan
提交发货地址、SKU 和数量,创建 inbound plan。
generatePackingOptions / listPackingOptions
生成并获取装箱方案。
generatePlacementOptions / listPlacementOptions
生成分仓方案,Amazon 会返回系统计算好的仓库分配结果。
confirmPlacementOption
确认分仓方案后会生成对应的 shipment。
setPackingInformation
上传箱规、重量、SKU数量等装箱信息。
简单理解就是:
ERP提交SKU数量 → Amazon返回分仓结果 → ERP按分仓结果装箱并创建货件。
现在很多系统都是用 Pack Later(先分仓再装箱) 的方式来实现自动分仓,这也是新版 API 推荐的流程。
可以的,你在aws队列页面,点击Send and receive messages,就可以看到消息
这里注意,需要提前给你的SQS加一个让SP-API的AWS ID可以写入数据的权限。不然会收不到消息
你检查看看是不是图片链接的问题,我看你主图和附图用的链接也不一样
比如:
static.instudio.me(主图)或 www.ingroupcloud.com(辅图)对 Amazon 抓取端不可访问(403/防盗链/证书/跳转),导致所有图片被判无效,后台就显示全空
另外还有一个常见的原因是,亚马逊抓到主图图片里有不符合图片要求和政策的内容。
比如 logo/文字 等,亚马逊对主图要求还是比较多的
可以从上面两个原因里查一下
有几个地方的原因,你可以试试:
"transactionType": "Cancel"
这个操作是在取消货件吗?
另外你需要确认好,你是用AMZNCC 还是SSCC ,两个不太一样。
修正了一下你的参数,你参考一下
{
"shipments": [{
"vendorShipmentIdentifier": "AMAZON-SHIP20260113121254-000026",
"transactionType": "Original", // 改为Original
"transactionDate": "2026-01-20T12:00:00.000Z",
"sellingParty": {
"partyId": "UH681"
},
"shipFromParty": {
"partyId": "0-188422721",
"address": {
"name": "LinkW Technology Logistics Inc.",
"addressLine1": "14650 Meyer Canyon Drive"
}
},
"shipToParty": {
"partyId": "GEU5"
},
"shipmentFreightTerm": "Collect",
"transportationDetails": {
"shipMode": "SmallParcel"
},
"collectFreightPickupDetails": {
"requestedPickUp": "2026-01-14T12:00:00.000Z",
"scheduledPickUp": "2026-01-14T12:00:00.000Z"
},
"shipmentMeasurements": {
"totalCartonCount": 1,
"totalPalletStackable": 0,
"totalPalletNonStackable": 0,
"shipmentWeight": {
"unitOfMeasure": "Lb",
"value": 3.6
},
"shipmentVolume": {
"unitOfMeasure": "CuFt",
"value": "2.682"
}
},
"purchaseOrders": [{
"purchaseOrderNumber": "8TWTXM8G",
"purchaseOrderDate": "2026-01-12T00:00:00.000Z",
"shipWindow": "2026-01-12T00:00:00.000Z--2026-01-29T00:00:00.000Z",
"items": [{
"itemSequenceNumber": "001", // 保持字符串格式
"buyerProductIdentifier": "B07837W5NX",
"vendorProductIdentifier": "B07837W5NX",
"shippedQuantity": {
"amount": 1,
"unitOfMeasure": "Eaches",
"unitSize": 1
}
}]
}],
"containers": [{
"containerSequenceNumber": "1",
"containerType": "Carton",
// 方案1: 提供正确的18位SSCC
"containerIdentifiers": [{
"containerIdentificationType": "SSCC",
"containerIdentificationNumber": "000059203339970001" // 18位
}],
// 或者 方案2: Small Parcel可以不提供,让Amazon生成
// "containerIdentifiers": [],
"dimensions": {
"length": 10,
"width": 10,
"height": 10,
"unitOfMeasure": "In"
},
"weight": {
"unitOfMeasure": "Lb",
"value": 1
},
"packedItems": [{
"itemSequenceNumber": "001", // 与PO中保持一致
"buyerProductIdentifier": "B07837W5NX",
"vendorProductIdentifier": "B07837W5NX",
"itemDetails": {
"purchaseOrderNumber": "8TWTXM8G"
},
"packedQuantity": {
"amount": 1,
"unitOfMeasure": "Eaches" // 改为Eaches保持一致
}
}]
}]
}]
}你试试,
重新提交 SubmitShipments
等待承运商分配
轮询查询: GET /vendor/shipping/v1/shipments
然后下载标签
GET vendor/shipping/v1/transportLabels
正常操作应该是你重新put一下,把其他链接删掉。put是覆盖的
如果非要patch,可以试试一个邪修招数main_product_image_locator 正常传值, other_product_image_locator_1 - other_product_image_locator_3 传无法访问的图片,这样子试试
这EventBridge 的Rule配置的没啥问题,
你确认下是否确定订阅的是 LISTINGS_ITEM_STATUS_CHANGE ?
我也测试这个看看试下
只有 IN_QUEUE状态的报告能取消,IN_PROGRESS的只能等了
你现在能做的“处理办法”:
1 先把队列里没开始的都取消掉(能做的唯一“止血”动作)
2 对于已经 IN_PROGRESS 超 24 小时的那一单:只能提个工单,联系平台处理了
你图里(领星的吧?)显示的 FBA总库存、可用库存、可售库存,都是通过FBA Inventory API 拿到的。
核心接口只有一个:
GET /fba/inventory/v1/summaries
https://api.sp-api.net/zh/api-308929928
从这里能直接得到:
totalQuantity → FBA总库存
inStockSupplyQuantity → FBA可用库存(也就是可售库存)
inboundShipmentQuantity → 在途库存
reservedQuantity → 预留库存
第三方平台就是把这些字段整理后展示出来的。
FBA 当前库存报告(GET_FBA_FULFILLMENT_CURRENT_INVENTORY_DATA)
这个报告里也有可售库存(fulfillable_quantity),但它有延迟,不实时。
简单说:商品页面里那个“€1.99 运费”,SP-API 拿不到。
Amazon 没开放这个前台展示的配送费接口。
你唯一能拿到运费的地方,是订单生成之后,通过订单接口查:
GET /orders/v0/orders/{orderId}GET /orders/v0/orders/{orderId}/orderItems在里面能看到:
ShippingPrice(买家实际付的运费)ShippingDiscountShippingTax也就是:上架时的运费拿不到,只有下单后的运费能查。
或者爬虫
你现在用的 /vendor/directFulfillment/payments/v1/invoices 只是上传发票的接口,本身不提供处理状态。
要查发票有没有通过、有没有被拒,必须用另外一个接口:
GET /vendor/directFulfillment/transactions/v1/transactions/{transactionId}
上传发票后,系统会回给你一个 transactionId,用这个去查就行。
Amazon 这边对发票目前就两种状态:
| 状态 | 说明 |
|---|---|
| Processing | 已接收、正在处理。对发票来说,长期保持 Processing 就表示已经通过了。 |
| Failure | 处理失败,相当于 Rejected,会给出错误原因。 |
它不会返回 “Approved” 这种字面状态。
GET /vendor/directFulfillment/transactions/v1/transactions/{id}
问 inbound/fba/2024-03-20/inboundPlans接口会遗漏部分inboundPlanId