7

I am specifying a SKU in my AddFixedPriceItem requests but the response does not come back with a SKU (although SKU is specified in the schema). This is a problem because I am using Large Merchant Services and can submit many items at once. If one item in a batch fails, how am I supposed to be able to tell which one it is? How can I relate SKUs to ItemIds? The response information has very little value if I can't map it back to something in my inventory.

Here is an example of a request going out that does not return a SKU:

<?xml version="1.0" encoding="UTF-8"?>
<BulkDataExchangeRequests xmlns="urn:ebay:apis:eBLBaseComponents">
  <Header>
    <SiteID>0</SiteID>
    <Version>639</Version>
  </Header>
  <AddFixedPriceItemRequest xmlns="urn:ebay:apis:eBLBaseComponents">
    <Version>639</Version>
    <Item>
      <CategoryMappingAllowed>true</CategoryMappingAllowed>
      <Country>US</Country>
      <Currency>USD</Currency>
      <Description>This is the description.</Description>
      <ListingDuration>GTC</ListingDuration>
      <ListingType>FixedPriceItem</ListingType>
      <Location>Provo, UT</Location>
      <PaymentMethods>PayPal</PaymentMethods>
      <PayPalEmailAddress>ebay@mystore.com</PayPalEmailAddress>
      <PrimaryCategory>
        <CategoryID>63850</CategoryID>
      </PrimaryCategory>
      <Quantity>10</Quantity>
      <ShippingDetails>
        <SalesTax>
          <SalesTaxPercent>6.5</SalesTaxPercent>
          <SalesTaxState>UT</SalesTaxState>
          <ShippingIncludedInTax>false</ShippingIncludedInTax>
        </SalesTax>
        <ShippingServiceOptions>
          <ShippingService>UPSGround</ShippingService>
          <ShippingServiceCost currencyID="USD">7.99</ShippingServiceCost>
          <ShippingServiceAdditionalCost currencyID="USD">0.0</ShippingServiceAdditionalCost>
          <ShippingServicePriority>1</ShippingServicePriority>
        </ShippingServiceOptions>
        <ShippingType>Flat</ShippingType>
        <InsuranceDetails>
          <InsuranceOption>NotOffered</InsuranceOption>
        </InsuranceDetails>
      </ShippingDetails>
      <Site>US</Site>
      <StartPrice currencyID="USD">100.0</StartPrice>
      <Title>Test Product</Title>
      <SKU>PROD02-TST</SKU>
      <DispatchTimeMax>3</DispatchTimeMax>
      <ReturnPolicy>
        <ReturnsWithinOption>Days_30</ReturnsWithinOption>
        <ReturnsAcceptedOption>ReturnsAccepted</ReturnsAcceptedOption>
        <Description>Our return policy details.</Description>
        <ShippingCostPaidByOption>Buyer</ShippingCostPaidByOption>
      </ReturnPolicy>
      <InventoryTrackingMethod>ItemID</InventoryTrackingMethod>
    </Item>
  </AddFixedPriceItemRequest>
</BulkDataExchangeRequests>
Machavity
  • 30,841
  • 27
  • 92
  • 100
Ryan Elkins
  • 5,731
  • 13
  • 41
  • 67

1 Answers1

6

If one item in a batch fails, how am I supposed to be able to tell which one it is?

Use MessageID in your AddFixedPriceItem Request.

How can I relate SKUs to ItemIds

Most likely I'm assuming you're wanting to manage your inventory via SKUs, i.e. "Increase Quantity by +2 for SKU 'MYTESTSKU02'. If this is the case, you'll want:

<InventoryTrackingMethod>SKU</InventoryTrackingMethod>

Then you can Relist/Revise/End by SKU. If you merely wish to associate a SKU to an ItemID as more of a label and you still desire to manage your inventory by ItemID, then your current request seems correct.

In terms of the SKU field not being returned, can you paste the AddFixedPriceItemResponse?

  • I'll paste it when I go back to work on Monday. I can't track via SKU because then you can only list a SKU once. Basically I want to know that ItemId 123 is for a product with SKU ABC or something like that. I think I can call a GetItem or something but it would obviously be much easier if it was just returned with the AddFixedPriceItemResponse. – Ryan Elkins Nov 21 '09 at 18:47
  • Using the MessageID field seems to work and will be what I go with for now although I'd still like to try and see what is happening with the SKU not being sent back. – Ryan Elkins Nov 23 '09 at 20:42
  • Almost 6 years later and the `SKU` still isn't returned - thank God for this. FYI - Sending `SKU` in the `MessageID` field means it is returned in the `CorrelationID` field. – Percy May 30 '16 at 13:42