AddFixedPriceItem:在VariationSpecifics.NameValueList中指定MPN

bil*_*can 5 php ebay-api

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

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

根据文档,它应该在变体的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>
Run Code Online (Sandbox Code Playgroud)

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

[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
    )
Run Code Online (Sandbox Code Playgroud)

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

列表显示mpn作为可选选项

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

Isa*_*ine 1

我认为您混淆了两个不同的概念,您可能会因为这种混淆而归咎于 eBay 的 API 命名约定。但是,项目细节是一个信息字段,被添加到 eBay 列表中,而变体细节控制多变体列表中下拉菜单的视觉效果。

一般来说,<VariationSpecificsSet>您将在内部定义<Name><Value>标签。这只会创建可供 eBay 上的客户查看的视觉下拉菜单

然后将这些<Name><Value>标签链接到每个变体中的<Name><Value>标签<VariationSpecifics>这只会填充由创建的视觉下拉列表<VariationSpecificsSet>。(Variation Specifics 中的名称/值标签必须与 中的名称/值标签匹配,否则您将收到所遇到的错误。

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