你检查看看是不是图片链接的问题,我看你主图和附图用的链接也不一样
比如:
static.instudio.me(主图)或 www.ingroupcloud.com(辅图)对 Amazon 抓取端不可访问(403/防盗链/证书/跳转),导致所有图片被判无效,后台就显示全空
另外还有一个常见的原因是,亚马逊抓到主图图片里有不符合图片要求和政策的内容。
比如 logo/文字 等,亚马逊对主图要求还是比较多的
可以从上面两个原因里查一下
你检查看看是不是图片链接的问题,我看你主图和附图用的链接也不一样
比如:
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}你最开始碰到的两个错误:
其实就是 Listing 里少了 GPSR 相关的 4 个字段。
在 SP-API 的 attributes 下,把这些补上即可:
gpsr_manufacturer_reference.gpsr_manufacturer_email_address
dsa_responsible_party_address
gpsr_safety_attestation
falsecompliance_media
如果你用 Listings Items API:
{
"productType": "GENERIC_PRODUCT_TYPE",
"requirements": "LISTING",
"attributes": {
"gpsr_manufacturer_reference": [
{
"gpsr_manufacturer_email_address": "manufacturer@example.com",
"marketplace_id": "A1PA6795UKMFR9"
}
],
"dsa_responsible_party_address": [
{
"value": "responsible.person.eu@example.com",
"marketplace_id": "A1PA6795UKMFR9"
}
],
"gpsr_safety_attestation": [
{
"value": false,
"marketplace_id": "A1PA6795UKMFR9"
}
],
"compliance_media": [
{
"content_type": "safety_information",
"content_language": "de_DE",
"source_location": "https://your-public-file-url/safety_info.pdf",
"marketplace_id": "A1PA6795UKMFR9"
}
]
}
}你只需要改动这几个点:
⚠️ 重点:文档链接不能是 Google Drive / Dropbox 的 preview 链接,必须能直接下载,可以和图片的方式差不多。
100632(ERROR):一般是缺
100528(WARNING):就是缺
把上面那段 JSON 补齐后,基本可以解决欧洲站的 GPSR 报错,你试试。
目前API里确实没有注意到从AWD调拨到FBA的接口,这个我在帮你开Case了,等待亚马逊回复后我会在这里回复你
这份报告是“周期性汇总 + 异步重算”,报告的行集(哪些 FNSKU)会随着要约状态(在售/抑制/归档)、市场维度、以及内部重算完成状况而波动;不要将它当做“当前库存存在性”的权威来源。
原则:把它当“运营/规划层”的快照,用于判断健康状况,而非当作底账。
与实时库存/入库报告交叉验证
你看到的情形(T-1 天有 → T+0 8:00 有 → T+0 20:00 无 → T+1 又有):
并非所有字段都在前端展示,也并非所有属性都是必填的。 要按照json schema语法来解析
部分字段是联动的
建议做刊登可以参考赛狐的刊登界面来设计
接口查到发票状态是 PROCESSING,但 VC 里显示 Non-submitted,大概率是发票还没真正进入 AP 系统。
简单说下关键点:
Direct to Consumer Shipping (Restricted) 权限,就算接通了。PROCESSING 卡住的常见原因
建议的排查顺序
GET /vendor/directFulfillment/transactions/.../{transactionId} 查每笔详细状态。
问 刊登商品提示主图丢失,所有图片在店铺后台都是空的