Skip to main content
Published: November 15 2006, 3:30:00 PMUpdated: July 28 2022, 2:37:01 AM

Why does GetSellerTransactions return the same transaction for more than 1 time period?

Why does GetSellerTransactions return the same transaction for more than 1 time period?

Summary

The transactions that are returned  by GetSellerTransactions depend on whether the last time they were modified fall in the ModTime filter.  It is possible for a transaction to be modified at different time periods and cause it to show up multiple times in the response with the current state of the transaction.  The intention of this design is to help you keep track of changes to the state of the transaction.



Detailed Description

Lets take the following example:

Item1 is purchased on July 28th 2022, 4:00 pm GMT, but no payment is made as yet.

You make a call to GetSellerTransactions with the following ModTimeFilter at 2022-07-28T01:00:00.000Z :

<?xml version="1.0" encoding="utf-8"?>
<
GetSellerTransactionsRequest xmlns="urn:ebay:apis:eBLBaseComponents">
  <
ModTimeFrom>2022-07-25T00:00:00.000Z</ModTimeFrom>
  <
ModTimeTo>2022-07-28T00:00:00.000Z</ModTimeTo>
  <
Version>1173</Version>
  <
RequesterCredentials>
    <
eBayAuthToken>*****</eBayAuthToken>
  </
RequesterCredentials>
</
GetSellerTransactionsRequest
>

The transaction for this item will be returned since the LastTimeModified is 2022-07-28T16:00:00.000Z with the following Status:<Status>
<
Status>
  <
eBayPaymentStatus>NoPaymentFailure</eBayPaymentStatus>
  <
CheckoutStatus>CheckoutIncomplete</CheckoutStatus>
  <
LastTimeModified>2022-07-28T16:00:00.000Z</LastTimeModified>
  <
PaymentMethodUsed>None</PaymentMethodUsed>
  <
CompleteStatus>Incomplete</CompleteStatus>
  <
BuyerSelectedShipping>false</BuyerSelectedShipping>
</
Status>

Subsequently, after getting the necessary details from the seller, the buyer completes checkout and pays for it on July 29th 2022 3:00 GMT

LastTimeModified for the transaction now becomes 2022-07-29T15:00:00.000Z

Now you make a call to GetSellerTransactions with the following ModTimeFilter :
  <ModTimeFrom>2022-07-29T00:00:00.000Z</ModTimeFrom>
  <
ModTimeTo>2022-07-30T00:00:00.000Z</ModTimeTo>

Since the
LastTimeModified falls in the ModTime filter range, the transaction is returned in this call also with the following status:
<Status>
  <
eBayPaymentStatus>NoPaymentFailure</eBayPaymentStatus>
  <
CheckoutStatus>CheckoutComplete</CheckoutStatus>
  <
LastTimeModified>2022-07-30T15:00:00.000Z</LastTimeModified>
  <
PaymentMethodUsed>CreditCard</PaymentMethodUsed>
  <
CompleteStatus>Complete</CompleteStatus>
  <
BuyerSelectedShipping>true</BuyerSelectedShipping>
</
Status>


It will no longer be returned for the following filter:
  <ModTimeFrom>2022-07-28T00:00:00.000Z</ModTimeFrom>
  <
ModTimeTo>2022-07-29T00:00:00.000Z</ModTimeTo
>

When designing your application, you need to account for this to happen and build your application accordingly.


Version Info

The code example above was based on the versions specified below:

API Schema Version 1173

 



Additional Resources

 

How well did this answer your question?
Answers others found helpful

Got thoughts? Click the feedback button – your insights help us improve!