ShippingServiceSelectedCost is returned as 0 in GetItemTransactions and GetSellerTransactions
Find the answer to your question
Please enter a search keyword.
Advanced Search
Products
Question
Why does GetItemTransactions / GetSellerTransactions return 0 for ShippingServiceSelected.ShippingServiceCost even though the buyer has completed checkout on eBay?
Answer
Summary
It is a product limitation that GetItemTransactions and GetSellerTransactions may not return the correct ShippingServiceCost if the transaction is part of an Order paid together with other transactions.
Detailed Description
GetSellerTransactions / GetItemTransactions does not return correct information for transactions that are part of a combined order and we recommend that you switch to GetOrders. Since version 705, GetOrders has been updated to work with single and multiple order line items, so you can drop the use of GetSellerTransactions completely. Similarly with GetItemTransactions.
If your application still uses GetSellerTransactions / GetItemTransactions, and if you find that a transaction is part of an order, you should not process any of the checkout / shipping information for the transaction, but process the information for the containing Order instead. To find out if a transaction is part of an Order, you can use the IncludeContainingOrder tag in your request.
Here is an example of a GetSellerTransactions call: <?xml version="1.0" encoding="utf-8"?>
<GetSellerTransactionsRequest xmlns="urn:ebay:apis:eBLBaseComponents">
<WarningLevel>High</WarningLevel>
<RequesterCredentials>
<eBayAuthToken>*****</eBayAuthToken>
</RequesterCredentials>
<ModTimeFrom>2006-10-03T20:00:00.000Z</ModTimeFrom>
<ModTimeTo>2006-10-03T21:00:00.000Z</ModTimeTo>
<IncludeContainingOrder>true</IncludeContainingOrder>
</GetSellerTransactionsRequest>
In the response, you will see information similar to the following:
<ShippingServiceSelected>
<ShippingInsuranceCost currencyID="USD">0.0</ShippingInsuranceCost>
<ShippingService>USPSParcel</ShippingService>
<ShippingServiceCost currencyID="USD">0.0</ShippingServiceCost>
</ShippingServiceSelected>
<ContainingOrder>
<OrderID>2849917</OrderID>
<OrderStatus>Completed</OrderStatus>
<CreatingUserRole>Buyer</CreatingUserRole>
</ContainingOrder>
You can then make a call to GetOrders with the OrderID and it will return the correct information.
Additional Resources
- Documentation for Retrieving Order Line Item Data and Managing Orders