Amazon MWS调用GetMyFeesEstimate返回InvalidParameterValue错误排查
问题排查方案
针对你调用MWS GetMyFeesEstimate 接口返回InvalidParameterValue错误的情况,排查方向如下:
- ASIN有效性校验
报错仅出现在部分ASIN上,优先排查这部分ASIN的合规性:- 这些ASIN是否在你指定的MarketplaceId对应站点正常上架,不存在未上架、已删除、被封禁的情况
- 对应ASIN所属品类是否是受限品类(比如危险品、需分类审核的品类),你的账号没有对应品类的访问权限
- ASIN格式是否符合要求:是否是10位纯字母数字组合,没有空格、特殊符号等多余字符
- 价格参数格式校验
ListingPrice.Value参数有严格的格式要求:- 不能为0、负数或者空值
- 货币单位是EUR的话,最多只能保留2位小数,如果你传入了3位及以上小数的价格,会直接触发参数错误,建议组装参数前先对价格做
round($price, 2)处理
- 请求批次规则校验
GetMyFeesEstimate接口单次请求最多支持提交20个ASIN的估算请求,确认你的$this->requestQuota参数是否设置为20,如果超过上限单次请求提交了更多ASIN,就会返回参数错误。另外你现有代码中的限流逻辑存在问题,该接口的配额限制是每秒最多发起1次请求,和你代码中$batchN和requestQuota的对比逻辑无关,错误的限流逻辑触发频控后也可能返回异常错误。 - 其他参数匹配校验
你设置了IsAmazonFulfilled = true代表要估算FBA费用,确认报错的ASIN在对应站点是否支持FBA配送,如果对应ASIN不开放FBA配送权限,也会触发该错误。
建议你在代码中增加请求参数日志输出,遇到报错时提取对应批次的请求参数,单独对单条ASIN发起测试请求,就能快速定位到具体的错误参数。
内容的提问来源于stack exchange,提问作者Áron Pop Adorján
相关产品推荐
相关产品推荐

