你有没有尝试使用 searchListingsItems 这些看看能否拉到VC的数据?
如果能拉到,说明SC这个接口也适合VC的,就可以用notication来更新库存了(准实时)
你可以试试。 或者需要我一起协助可以加我 微信 sfgoods
我配合你测试一下
你有没有尝试使用 searchListingsItems 这些看看能否拉到VC的数据?
如果能拉到,说明SC这个接口也适合VC的,就可以用notication来更新库存了(准实时)
你可以试试。 或者需要我一起协助可以加我 微信 sfgoods
我配合你测试一下
需要使用getListingsItem 接口拉取一下,看看issue是什么,一般是有错误导致的查不到
[https://api.sp-api.net/zh/api-308930030
](https://api.sp-api.net/zh/api-308930030)
可以的,需要按照schema格式上传
通过 SP-API 无法直接获取 Easy Ship 订单的完整轨迹(包含所有历史状态和时间戳);
但可以通过调用 getScheduledPackage 接口获取当前状态(带追踪 ID),结合轮询与通知机制(若能捕获状态变化),逐步构建出轨迹历史;同时可以借助报告接口做批量补充和审核。
看起来并不是“接口坏了”,而是没能在目标站点把你的 SKU 挂到同一个目录商品上,所以 LISTING_OFFER_ONLY
被系统判定为“没有找到可挂载的目录商品 → 走成了创建商品流(LISTING)”,于是返回了:
13013
:西语提示“该商品不在该站点目录或已被删除。不要用 建议 ASIN,要用原始 UPC/GTIN 再发一次。”90220
:既然被当成“创建商品”,就需要 item_name
等标题类必填字段,但你没传,所以报缺失。你的请求里最关键的一点是:
你只传了 merchant_suggested_asin
(“建议 ASIN”),这不会保证在 ES 站点成功匹配。如果该 ASIN 在西班牙站没有对应目录条目(或还没被跨站同步),SP-API 就无法把你挂到现有目录,于是走创建流并要求标题等信息。
LISTING_OFFER_ONLY
+ merchant_suggested_asin
,如果目标站点没有该 ASIN,系统就找不到“可挂”的目录 → 报 13013/90220。该 ASIN 在目标站点是否存在?
用 Catalog Items API(2022-04-01 版)查 GET /catalog/2022-04-01/items/{ASIN}?marketplaceIds=A1RKKUPIHCS9HS
。
productType
是否与该 ASIN 的 item_type_keyword 匹配?
你传的是 "productType": "CABINET"
。如果目标站点该 ASIN 实际的 product type 不是 CABINET,会导致校验偏离。
getDefinitionsProductType
(传 marketplace=ES、locale=es_ES)核对该 ASIN 的 item_type_keyword
,把 productType
改成目标站点实际的 product type。requirements: LISTING_OFFER_ONLY
下,只传报价/配送相关字段:价格(purchasable_offer
)、库存(fulfillment_availability
)、成色(condition_type
)、运费模板(merchant_shipping_group
)等。merchant_suggested_asin
不足以匹配。quantity: 0
,但响应里读回是 18——说明后面有别的系统/模板同步了库存。若想立即在 ES 站点上架,确保 quantity > 0
且有有效价格。前提:该 ASIN 在 ES 站点确实存在。
做法:
productType
改成与该 ASIN 在 ES 的 item_type_keyword 一致的值。requirements: LISTING_OFFER_ONLY
,并去掉一切创建商品用的字段(别传 item_name
等)。merchant_suggested_asin
可以保留,但不要指望它完成匹配,真正的匹配取决于该 ASIN是否在该站存在。若这样仍报 13013,基本就是该 ASIN 在 ES 没目录或暂未可售 → 用方案 B。
前提:该 ASIN 在 ES 不存在/不可售。
做法:
requirements: "LISTING"
(不是 OFFER_ONLY)。external_product_id
(+类型)、brand
/manufacturer
、item_name
、item_type_keyword
等。这与后台/表格成功的原理一致:它们也是用 GTIN 做跨站归并。
如果你常规要把 DE 的上架自动“推”到 FR/IT/ES,考虑用 Build International Listings 或后台的“跨国上架”功能,让系统负责在目标站点建立/映射目录,再由 API 只发报价和库存即可。
{
"listingsItemPutRequest": {
"attributes": {
"purchasable_offer": [{
"marketplace_id": "A1RKKUPIHCS9HS",
"our_price": [{
"schedule": [{ "value_with_tax": 149.99 }]
}],
"currency": "EUR"
}],
"condition_type": [{
"marketplace_id": "A1RKKUPIHCS9HS",
"value": "new_new"
}],
"fulfillment_availability": [{
"quantity": 18,
"fulfillment_channel_code": "DEFAULT"
}],
"merchant_shipping_group": [{
"marketplace_id": "A1RKKUPIHCS9HS",
"value": "legacy-template-id"
}]
/* 可选:supplier_declared_dg_hz_regulation 等 */
},
"productType": "<与该 ASIN 在ES的item_type_keyword一致>",
"requirements": "LISTING_OFFER_ONLY"
},
"sellerId": "ES店铺SellerID",
"site": "ES",
"sku": "你的SellerSKU"
}
item_name
、品牌等。merchant_suggested_asin
。这是提示性字段,不保证匹配。LISTING_OFFER_ONLY
。应改走 LISTING
+GTIN,或先用 BIL 建好。不确定你这个商品是否是做了FBA和FBM还是只有FBM? 在这个不知道的前提下有几个场景你试试:
比如:
{
"fulfillmentAvailability": [
{
"fulfillmentChannelCode": "DEFAULT", // 自发货
"quantity": 10,
"leadTimeToShipMinDays": 2,
"leadTimeToShipMaxDays": 4
},
{
"fulfillmentChannelCode": "AMAZON_NA" // FBA 北美
// 这里不要放 lead_time_to_ship / leadTimeToShip* / quantity
}
]
}
或者不用PATCH使用MERGE
{
"productType": "PRODUCT",
"patches": [
{
"op": "replace",
"path": "/attributes/fulfillment_availability",
"value": [
{
"marketplace_id": "ABCDE",
"fulfillment_channel_code": "DEFAULT",
"lead_time_to_ship_max_days": 4,
"quantity": 543
}
]
}
]
}
这个修改和PT没关系。这个属性是通用属性,用PRODUCT
或者不传PT(没记错的话)应该都可以修改
缺少UPC,估计还是豁免问题。和 这个问题一样 https://sp-api.net/ask/question/208665.html
这个一般是UPC豁免没有豁免成功. 豁免是针对分类或者PT的。检查是不是真豁免成功了
Feed 显示 success 只代表“已接受入队”,平台后续处理是异步的。
当然,如果feed这里错误,也需要先根据message id对应去处理(比如有的属性错误,这里就会报出来)
上线/可售与否要以 Listings 为准:用 listing 接口拉取并检查 issues 错误:
https://api.sp-api.net/zh/api-308930030
需要批量检查就用批量接口:
https://api.sp-api.net/zh/api-289540209
使用getListing接口 https://api.sp-api.net/zh/api-308930030
"relationships": [
{
"marketplaceId": "ATVPDKIKX0DER",
"relationships": [
{
"parentSkus": [
"xxxxxxx"
],
"type": "VARIATION",
"variationTheme": {
"attributes": [
"color"
],
"theme": "COLOR"
}
}
]
}
],
"relationships": [
{
"marketplaceId": "ATVPDKIKX0DER",
"relationships": [
{
"childSkus": [
"afdsfsdf",
"fsdfds",
"fsdfsdf",
"fsdf"
],
"type": "VARIATION",
"variationTheme": {
"attributes": [
"color"
],
"theme": "COLOR"
}
}
]
}
],
官方没有说明,但是我实际测试,跟卖时候是没有返回的。
你看下merchant_suggested_asin 这个有没有。这个有,那是跟卖的,就可能是空的
当然还可能有其他情况是空的,欢迎发出来一起探讨
因为你没有发PT(productType)所以我没法具体看,不过你可以先自查:
变体主体你看看是否有:SIZE/COLOR 或者 SIZE_NAME/COLOR_NAME
这个报错就是说,变体主体已经不被接受了,你看看是使用getDefinitionsProductType是不是最新的版本。
当然你后续追加一下具体的PT,我拉一下具体数据看看
666
啊,这个问题,调整售价就可以解决了吧
有两种接收通知的方式:
LISTINGS_ITEM_STATUS_CHANGE
LISTINGS_ITEM_MFN_QUANTITY_CHANGE
BRANDED_ITEM_CONTENT_CHANGE
接口: POST /notifications/v1/destinations
参数:
{
"resourceSpecification": {
"eventBridge": {
"region": "us-east-1",
"accountId": "AWS_ACCOUNT_ID"
}
},
"name": "MyEventBridgeDestination"
}
返回值中保存:
destinationId
resource.eventBridge.name
(用于 EventBridge 配置)aws.partner/sellingpartnerapi.amazon.com/{AWS Account Id}/{Application Id}
的 sourceRules > Create rule
{
"source": [
{
"prefix": "aws.partner/sellingpartnerapi.amazon.com"
}
],
"detail-type": ["LISTINGS_ITEM_STATUS_CHANGE"]
}
接口: POST /notifications/v1/subscriptions/{notificationType}
参数示例:
{
"payloadVersion": "1.0",
"destinationId": "YOUR_DESTINATION_ID"
}
notificationType 示例值:
"LISTINGS_ITEM_STATUS_CHANGE"
"BRANDED_ITEM_CONTENT_CHANGE"
ORDER_CHANGE
ANY_OFFER_CHANGED
(可以包含 marketplaceIds
过滤器)参考 AWS 文档配置权限策略,允许 SP-API 写入您指定的 SQS 队列。
提供以下 IAM policy 示例:
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::437568002678:root"
},
"Action": ["kms:GenerateDataKey", "kms:Decrypt"],
"Resource": "*"
}
接口: POST /notifications/v1/destinations
参数:
{
"resourceSpecification": {
"sqs": {
"arn": "arn:aws:sqs:region:account_id:queue_name"
}
},
"name": "MySQSQueueDestination"
}
返回值中保存:
destinationId
接口: POST /notifications/v1/subscriptions/{notificationType}
常见 notificationType 示例:
"ORDER_CHANGE"
(订单状态/买家取消)"ANY_OFFER_CHANGED"
(包含市场过滤器)参数示例(带过滤器):
{
"payloadVersion": "1.0",
"destinationId": "YOUR_DESTINATION_ID",
"processingDirective": {
"eventFilter": {
"eventFilterType": "ANY_OFFER_CHANGED",
"marketplaceIds": ["ATVPDKIKX0DER"]
},
"aggregationSettings": {
"aggregationTimePeriod": "FiveMinutes"
}
}
}
NotificationMetadata.notificationId
ORDER_CHANGE
不支持 marketplaceIds
过滤,若需要请使用 ANY_OFFER_CHANGED
具体流程是这个文档:https://developer-docs.amazon.com/sp-api/docs/notifications-api-v1-use-case-guide
再次调用confirmShipment 或者POST_ORDER_FULFILLMENT_DATA 试试
问 亚马逊VC链接状态获取