AddFixedPriceItem:在VariationSpecifics.NameValueList中指定MPN

时间:2016-02-17 13:58:22

标签: php ebay ebay-api

我正在更新一些为eBay列表生成XML的代码,其中一部分是添加MPN。

对于单个列表,一切正常,因为品牌和MPN可以通过ItemSpecifics容器指定。但是,对于多变量列表,必须为每个变体指定MPN。

根据documentation,应在变体的VariationSpecifics.NameValueList容器中指定。

我添加了执行此操作的代码,该代码生成XML:

<Variation>
  <SKU>CODE</SKU>
  <StartPrice>99.99</StartPrice>
  <Quantity>124</Quantity>
  <VariationSpecifics>
    <NameValueList>
      <Name>MPN</Name>
      <Value>000001</Value>
    </NameValueList>
    <NameValueList>
      <Name>Choose Colour</Name>
      <Value>Black</Value>
    </NameValueList>
  </VariationSpecifics>
</Variation>

发送列出产品的请求时,它会失败,并回复以下错误:

[1] => Array
    (
        [ShortMessage] => Variation Specifics Mismatch.
        [LongMessage] => Variation Specifics provided does not match with the variation specifics of the variations on the item.
        [ErrorCode] => 21916664
        [SeverityCode] => Error
        [ErrorClassification] => RequestError
    )

[2] => Array
    (
        [ShortMessage] => Missing name in name-value list.
        [LongMessage] => Missing name in the variation specifics or variation specifics set.
        [ErrorCode] => 21916587
        [SeverityCode] => Error
        [ErrorClassification] => RequestError
    )

我假设我需要在VariationSpecificsSet.NameValueList容器中提供每个MPN,并添加了列表成功,但是MPN在列表本身上显示为可选选项,这显然是不正确的:

listing shows mpn as selectable option

如何为多变量列表正确指定MPN?

1 个答案:

答案 0 :(得分:1)

我认为你混淆了两个不同的概念,你可能会因为这种混乱而责怪eBay的API命名约定。但是, 项目细节 是一个信息字段,被打到eBay列表中, 变体细节 控制视觉多变量列表中下拉菜单的一个方面。

通常在<VariationSpecificsSet>内,您将定义<Name><Value>标记。 这仅为eBay上的客户创建了可视化下拉菜单

然后,您将这些<Name><Value>标记与每个版本的<Name>中的<Value><VariationSpecifics>标记相关联。 这只会填写<VariationSpecificsSet> 创建的视觉下拉菜单。 (变体细节中的名称/值标记必须匹配名称/值标记,否则您将收到错误。

作为解决方案,如果您使用MPN作为唯一ID,则可以将其填入SKU字段。但是,如果您只想将该字段添加到item specifics容器中,那么您可能只想创建一个名为“MPNs”的<ItemSpecifics>自定义<Name>标记并连接所有这些MPN值在逗号分隔的<Value>列表中。