eBay API выдает ошибку Invalid ShipToLocation при добавлении нового списка

Я пытаюсь разместить список новых товаров на сайте eBay в Великобритании, используя их API, но мой запрос приводит к ошибке Invalid ShipToLocation (полное сообщение об ошибке ниже). Я извлекаю данные из своей базы данных и пытаюсь отправить их на eBay.

Вот XML запроса:

<AddFixedPriceItemRequest xmlns="urn:ebay:apis:eBLBaseComponents">
     <RequesterCredentials>
        <eBayAuthToken>Ebay TOken</eBayAuthToken>
    </RequesterCredentials>
    <DetailLevel>ReturnAll</DetailLevel>
    <ErrorLanguage>en_US</ErrorLanguage>
    <Version>551</Version>
    <WarningLevel>High</WarningLevel>
    <Item>
        <Site>UK</Site><PrimaryCategory><CategoryID>164306</CategoryID></PrimaryCategory><StartPrice currencyID="GBP">120.99</StartPrice><BuyItNowPrice>0</BuyItNowPrice>       
        <BestOfferDetails>
            <BestOfferEnabled>false</BestOfferEnabled>
        </BestOfferDetails>
        <Country>GB</Country>
        <Currency>GBP</Currency>
        <DispatchTimeMax>10</DispatchTimeMax>
        <ListingDuration>Days_3</ListingDuration>
        <ListingType>FixedPriceItem</ListingType>
        <PaymentMethods>PayPal</PaymentMethods>
        <PayPalEmailAddress>[email protected]</PayPalEmailAddress>
        <PictureDetails><PhotoDisplay>PicturePack</PhotoDisplay><PictureURL>http://i.ebayimg.sandbox.ebay.com/00/s/NTUwWDU1MA==/z/pRQAAOSwZDVUXafi/$_1.JPG?set_id=8800005007</PictureURL></PictureDetails>
        <Location><![CDATA[SURAT, GUJARAT]]></Location><Quantity>1</Quantity>
        <ReturnPolicy>
          <ReturnsAcceptedOption>ReturnsAccepted</ReturnsAcceptedOption>
          <RefundOption>MoneyBack</RefundOption>
          <ReturnsWithinOption>Days_14</ReturnsWithinOption>
          <Description>If you are not satisfied, return the item for refund.</Description>
          <ShippingCostPaidByOption>Buyer</ShippingCostPaidByOption>
        </ReturnPolicy>
        <ShippingDetails>
        <ShippingServiceOptions>
          <ShippingService>UK_StandardShippingFromOutside</ShippingService>
          <ShippingServiceCost currencyID="GBP">0.0</ShippingServiceCost>
          <ShippingServicePriority>1</ShippingServicePriority>
          <ExpeditedService>false</ExpeditedService>
          <ShippingTimeMin>5</ShippingTimeMin>
          <ShippingTimeMax>10</ShippingTimeMax>
          <FreeShipping>true</FreeShipping>
        </ShippingServiceOptions>

        <InternationalShippingServiceOption>
          <ShippingService>UK_SellersStandardInternationalRate</ShippingService>
          <ShippingServiceCost currencyID="GBP">0.0</ShippingServiceCost>
          <ShippingServicePriority>1</ShippingServicePriority>
          <ShipToLocation>Americas</ShipToLocation>
          <ShipToLocation>CA</ShipToLocation>
          <ShipToLocation>GB</ShipToLocation>
          <ShipToLocation>AU</ShipToLocation>
          <ShipToLocation>Europe</ShipToLocation>
          <ShipToLocation>Asia</ShipToLocation>
          <ShipToLocation>CN</ShipToLocation>
          <ShipToLocation>MX</ShipToLocation>
          <ShipToLocation>DE</ShipToLocation>
          <ShipToLocation>JP</ShipToLocation>
          <ShipToLocation>BR</ShipToLocation>
          <ShipToLocation>FR</ShipToLocation>
          <ShipToLocation>RU</ShipToLocation>
        </InternationalShippingServiceOption>
        <ShippingType>Flat</ShippingType><SellerExcludeShipToLocationsPreference>true</SellerExcludeShipToLocationsPreference>
        </ShippingDetails>
        <ShipToLocations>Worldwide</ShipToLocations><RegionID>0</RegionID><ShippingTermsInDescription>True</ShippingTermsInDescription>
        <ConditionID>1000</ConditionID>
    </Item>
</AddFixedPriceItemRequest>

Я получаю следующую ошибку в ответ на вышеуказанный запрос.

<?xml version="1.0" encoding="UTF-8"?>
<AddFixedPriceItemResponse xmlns="urn:ebay:apis:eBLBaseComponents">
  <Timestamp>2014-11-08T12:54:21.441Z</Timestamp>
  <Ack>Failure</Ack>
  <Errors>
    <ShortMessage>Invalid ShipToLocation.</ShortMessage>
    <LongMessage>Some of the ShipTo locations provided are not valid for this site. They have been dropped from your listing.</LongMessage>
    <ErrorCode>17520</ErrorCode>
    <SeverityCode>Warning</SeverityCode>
    <ErrorParameters ParamID="0">
      <Value>&lt;InternationalShippingServiceOptions&gt;</Value>
    </ErrorParameters>
    <ErrorClassification>RequestError</ErrorClassification>
  </Errors>
  <Version>891</Version>
  <Build>E891_UNI_API5_17051033_R1</Build>
</AddFixedPriceItemResponse>

person Dpak    schedule 08.11.2014    source источник


Ответы (1)


Содержимое тега <LongMessage> из XML-ответа не требует пояснений.

Некоторые из указанных местоположений ShipTo недействительны для этого сайта. Они были исключены из вашего списка.

Посмотрите на теги <ShipToLocation> из XML-запроса.

<ShipToLocation>Americas</ShipToLocation>
<ShipToLocation>CA</ShipToLocation>
<ShipToLocation>GB</ShipToLocation>
<ShipToLocation>AU</ShipToLocation>
<ShipToLocation>Europe</ShipToLocation>
<ShipToLocation>Asia</ShipToLocation>
<ShipToLocation>CN</ShipToLocation>
<ShipToLocation>MX</ShipToLocation>
<ShipToLocation>DE</ShipToLocation>
<ShipToLocation>JP</ShipToLocation>
<ShipToLocation>BR</ShipToLocation>
<ShipToLocation>FR</ShipToLocation>
<ShipToLocation>RU</ShipToLocation>

Согласно документации API eBay, BR и RU недействительны. Попробуйте удалить <ShipToLocation>BR</ShipToLocation> и <ShipToLocation>RU</ShipToLocation> из XML запроса.

person ekad    schedule 09.11.2014
comment
Я удалил ‹ShipToLocation›BR‹/ShipToLocation› и ‹ShipToLocation›RU‹/ShipToLocation›, но это не работает. - person Dpak; 10.11.2014
comment
Можете ли вы попробовать использовать только <ShipToLocation>Americas</ShipToLocation> в XML-запросе и посмотреть, работает ли он? - person ekad; 10.11.2014
comment
Затем возникают другие ошибки: Короткие сообщения: Условие неприменимо. Длинное условие сообщения не применимо для этой категории. - person Dpak; 10.11.2014
comment
Попробуйте позвонить в GeteBayDetails с помощью DetailName установите значение ShippingLocationDetails, затем в ответе выполните итерацию по каждому элементу ShippingLocationDetails и прочитайте значение ShippingLocation, оно должно показать допустимые значения для тега <ShipToLocation>. - person ekad; 10.11.2014