【问题标题】:Ebay Trading API AddItem ListingDuration as GTCEbay Trading API AddItem ListingDuration 为 GTC
【发布时间】:2014-12-11 12:44:53
【问题描述】:

我在 ebay 上列出我的列表条件为的项目

All listings should be:
1. Private (so the item sold is not displayed on my feedback) 
2. Buy It Now only 
3. All listing duration is ‘Good till cancelled’ 
4. Postage is ‘Other 24 hour’ dispatch in 1 working day 
5. Express postage available at £7.99 extra

我收到这些错误

我。标签的输入数据无效或缺失。请查看 API 文档。 [值] => Item.PrimaryCategory.CategoryID 和

二。持续时间“GTC”天不适用于此列表类型,或对于类别“309”无效。

如果有人有想法,请帮助。这是我的代码。

    $requestXmlBody  = '<?xml version="1.0" encoding="utf-8" ?>';
    $requestXmlBody .= '<AddItemRequest xmlns="urn:ebay:apis:eBLBaseComponents">';
    $requestXmlBody .= "<RequesterCredentials><eBayAuthToken>$userToken</eBayAuthToken></RequesterCredentials>";
    $requestXmlBody .= '<ErrorLanguage>en_US</ErrorLanguage>';
    $requestXmlBody .= '<WarningLevel>High</WarningLevel>';
    $requestXmlBody .= '<Item>';
    $requestXmlBody .= "<Title><![CDATA[$Title]]></Title>";
    $requestXmlBody .= '<Description><![CDATA[Seller assumes all responsibility for this listing.]]></Description>';
    $requestXmlBody .= '<PrimaryCategory><CategoryID>$primaryCategory</CategoryID></PrimaryCategory>';
    $requestXmlBody .= "<StartPrice currencyID='GBP'>$FinalPrice</StartPrice>";
    //$requestXmlBody .= '<BuyItNowPrice currencyID="GBP">$FinalPrice</BuyItNowPrice>';
    $requestXmlBody .= '<ConditionID>1000</ConditionID>';
    $requestXmlBody .= '<CategoryMappingAllowed>true</CategoryMappingAllowed>';
    $requestXmlBody .= '<Country>GB</Country>';
    $requestXmlBody .= '<Currency>GBP</Currency>';
    $requestXmlBody .= '<ListingDuration>GTC</ListingDuration>';
    $requestXmlBody .= '<ListingType>FixedPriceItem</ListingType>';
    $requestXmlBody .= '<PaymentMethods>PayPal</PaymentMethods>';
    $requestXmlBody .= '<PayPalEmailAddress>heartbeat.belal@yahoo.co.uk</PayPalEmailAddress>';
    $requestXmlBody .= "<PictureDetails><PictureURL>" . $addPicture . "</PictureURL></PictureDetails>";
    //$requestXmlBody .= "<PostalCode>95125</PostalCode>";
    $requestXmlBody .= "<Quantity>10</Quantity>";
    $requestXmlBody .= "<ReturnPolicy>";
    $requestXmlBody .= "<ReturnsAcceptedOption>ReturnsAccepted</ReturnsAcceptedOption>";
    //$requestXmlBody .= "<RefundOption>MoneyBack</RefundOption>";
    $requestXmlBody .= "<ReturnsWithinOption>Days_30</ReturnsWithinOption>";
    $requestXmlBody .= "<Description>If you are not satisfied, return the item for refund.</Description>";
    $requestXmlBody .= "<ShippingCostPaidByOption>Buyer</ShippingCostPaidByOption>";
    $requestXmlBody .= "</ReturnPolicy>";
    $requestXmlBody .= "<ShippingDetails>";
    $requestXmlBody .= "<ShippingType>Flat</ShippingType>";
    $requestXmlBody .= "<ShippingServiceOptions>";
    $requestXmlBody .= "<ShippingServicePriority>1</ShippingServicePriority>";
    $requestXmlBody .= "<ShippingService>USPSMedia</ShippingService>";
    $requestXmlBody .= "<ShippingServiceCost>2.50</ShippingServiceCost>";
    $requestXmlBody .= "</ShippingServiceOptions>";
    $requestXmlBody .= "</ShippingDetails>";
    $requestXmlBody .= "<Site>UK</Site>";
    $requestXmlBody .= "<!-- Change the UUID for each item you list. It needs to be unique. -->";
    //$requestXmlBody .= "<UUID>ccefc1e08ac811ddad8b0800200c9a68</UUID>";
    $requestXmlBody .= "</Item>";
    $requestXmlBody .= "</AddItemRequest>";

【问题讨论】:

    标签: php ebay-api


    【解决方案1】:

    如果您查看有关此调用的 API 文档,您会在 listduration 字段中找到通知:http://developer.ebay.com/DevZone/XML/docs/Reference/eBay/AddItem.html#Request.Item.ListingDuration

    “值的有效选择取决于列表格式(请参阅 Item.ListingType)。对于有效值的列表,调用 GetCategoryFeatures 并将 DetailLevel 设置为 ReturnAll 并查找 ListingDurations 信息。要设置持续时间为 1 天,卖家的反馈评分必须至少为 10。”

    如果我为您的 CatId 309 调用 API(可以在此处执行测试示例:https://ebay-sdk.intradesys.com/s/44f683a84163b3523afe57c2e008bc8c 它返回:

    ....
    <Category>
        <CategoryID>309</CategoryID>
        <ListingDuration type="Chinese">1</ListingDuration>
        <ListingDuration type="Dutch">1</ListingDuration>
        <ListingDuration type="Live">1</ListingDuration>
        <ListingDuration type="AdType">2</ListingDuration>
        <ListingDuration type="StoresFixedPrice">31</ListingDuration>
        <ListingDuration type="PersonalOffer">1</ListingDuration>
        <ListingDuration type="FixedPriceItem">8</ListingDuration>
        <ListingDuration type="LeadGeneration">19</ListingDuration>
        <BestOfferEnabled>true</BestOfferEnabled>
    ....
    

    对你来说重要的是这一行:

       <ListingDuration type="FixedPriceItem">8</ListingDuration>
    

    这会告诉您该列表类型可用的持续时间集...在 API 响应的下方,您将看到:

     <ListingDuration durationSetID="1">
      <Duration>Days_3</Duration>
      <Duration>Days_5</Duration>
      <Duration>Days_7</Duration>
      <Duration>Days_10</Duration>
     </ListingDuration>
     <ListingDuration durationSetID="2">
      <Duration>Days_30</Duration>
      <Duration>Days_90</Duration>
     </ListingDuration>
     <ListingDuration durationSetID="19">
      <Duration>Days_28</Duration>
     </ListingDuration>
     <ListingDuration durationSetID="8">
      <Duration>Days_3</Duration>
      <Duration>Days_5</Duration>
      <Duration>Days_7</Duration>
      <Duration>Days_10</Duration>
      <Duration>Days_30</Duration>
     </ListingDuration>
     <ListingDuration durationSetID="31">
      <Duration>Days_3</Duration>
      <Duration>Days_5</Duration>
      <Duration>Days_7</Duration>
      <Duration>Days_10</Duration>
      <Duration>Days_30</Duration>
      <Duration>GTC</Duration>
     </ListingDuration>
    

    如果您现在查看 durationSetId=8,您会发现 GTC 不允许用于此列表类型 GTC 似乎仅适用于 ID 为 31 的集合,在这种情况下为“StoresFixedPrice”

    【讨论】:

    • 这很有帮助。请告诉我如何将列表添加为“仅限立即购买”?
    • 又一个错误来了。 “运送服务 USPS Media Mail(9) 不可用。” :(
    【解决方案2】:

    附带说明:使用业务政策,通过 API 列出时,它们会让您的生活更轻松,它会处理您列表中的 4 和 5。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-06
      相关资源
      最近更新 更多