0

I need to write a program that imports payments taken via amazon for items we sell on the Amazon website into our system.

According to the Amazon Marketplace Web Service site i can get this information:

Amazon Marketplace Web Service (Amazon MWS) is an integrated Web service API that helps Amazon sellers to programmatically exchange data on listings, orders, payments, reports, and more.

However, i can't find anything about this at all. None of the client libraries appear to have anything about retrieving a list of payments.

How can i get a list of payments made via amazon, preferably using the Amazon Marketplace Web Service?

John Rotenstein
  • 241,921
  • 22
  • 380
  • 470
George Duckett
  • 31,770
  • 9
  • 95
  • 162
  • Could you clarify your question regarding "items we sell"? Are you selling your items on Amazon.com, as an Amazon 3rd party seller, OR, are you using Amazon Payments in the checkout or your e-commerce platform (unrelated to Amazon.com the website)? – fmr Nov 02 '11 at 00:38
  • I am selling items on amazon, as a 3rd party seller. – George Duckett Nov 02 '11 at 07:40

2 Answers2

0

Using MWS, you can programmatically retrieve the settlement report which is produced monthly by Amazon. This is the same settlement report that you would download from Seller Central. The report type you're looking for is: _GET_FLAT_FILE_PAYMENT_SETTLEMENT_DATA_ (for the CSV format).

fmr
  • 1,518
  • 13
  • 14
  • Is there any way of getting more current/live data? – George Duckett Nov 02 '11 at 13:27
  • The MWS offers near real-time data for Orders, which is what as a seller you really have to handle in real-time. I think that in Amazon's mind, payments information are for accounting purposes and therefore do not need to be provided in real-time, hence only the scheduled settlement reports are available. Would you like to explain why you believe you need "live" payments information? – fmr Nov 03 '11 at 16:30
  • The main reason is so that cash matching works in the same was as i have ebay set up. I want to run something each night, that imports all the payments we received for that day. – George Duckett Nov 03 '11 at 16:32
  • I don't think there's going to be an easy way. As mentioned in the other response, customers are charged when you confirm that you shipped, not when they place an order (it gets worse if you use FBA, in which case Amazon ships for you). In addition, there may be delays in the charging process due to a number of incidents that can happen. So you'd have to work out yourself an approximation of the payments based on the orders that you have confirmed - this also means computing the fees taken by Amazon if you want to exclude them from your cash account. Lots of work... – fmr Nov 04 '11 at 18:12
0

Based on your comment to the answer provided by fmr, I would suggest that you use the MWS Orders API to get "current/live" data.

Using the ListOrders request with the OrderStatus parameter set to Shipped will give you a list of orders that have, for all intents and purposes, been paid for (not exactly, but read on).

When an OrderStatus is set to Pending the buyer's payment instrument (ie. credit card) has not yet been approved by Amazon and the order cannot be shipped. When the status moves to Unshipped the payment instrument has been approved and the order can be shipped. When the order is shipped and the seller (you) have confirmed the shipment, the buyer's payment instrument is "charged", the OrderStatus is set to Shipped and the funds are available in Seller Central for you to disperse. The dispersing of funds is when you actually get the money (well, in 3-5 business days).

Settlement Reports are generated every 14 days by Amazon and can't be scheduled. So, to get around this you could use the above technique to see the account activity based on the items you've sold.

Jonathan Spooner
  • 7,682
  • 2
  • 34
  • 41