I have a call to the Trading API will the method GetOrders with status “Complete” ( which in ebay’s documentation is for others with checkout and payment completed ) but it is showing orders that are not payed and on the payment method is says “CCAccpeted”.
This CCAccepeted
is not a payment and on ebay’s admin section those orders are in “Awaiting payment”.
How can i get only the ones that are payed?
2
Answers
This is because
OrderStatus
field, which you use ingetOrders
call returns as complete all orders that have checkpoint complete either if they are paid or not.In this case eBay normally returns default payment value.
To check what orders are paid among the
complete
ones you will need to have a look at nodeOrderArray.Order.OrderStatus
in response. If an order is complete then is paid.You can also check
OrderArray.Order.PaidTime
to know when an order have been paidoYou can use the PaymentStatus response:
More details:
https://developer.ebay.com/devzone/xml/docs/Reference/eBay/types/PaymentStatusCodeType.html
According to the docs: This value indicates that the buyer’s payment for the order has cleared. A CheckoutStatus.eBayPaymentStatus value of ‘NoPaymentFailure’ and a CheckoutStatus.Status value of ‘Complete’ indicates that checkout is complete.