Amazon-MWS: Difference Between Reports and Order Lists
I am trying to integrate Amazon Marketplace orders into our system. I've done this before with Magento and thought it should be easy, but somehow I got stuck.
I downloaded the Java API from Amazon and started playing with the examples.
So far so good - I was able to get them to work. But playing with the Reporting API and the Orders API , I started wondering which one to use if I only want to get unmanaged orders to put into our system. 1. Doing this with the reporting API seems to be very complex and involves a lot of calls to MWS. This is described by Amazon here .
2. Using the order API seems pretty straightforward. I need to create ListOrdersRequest
, define what types of orders I want to receive, and finally get them through a call ListOrders
.
So my question is: What is the reason for choosing the reporting API over the ordering API?
It seems that Amazon recommends the reporting API, but I really don't understand why it should be so hard. Why should I receive reports when I can receive Orders directly?
source to share
Both approaches can work. This is why I would choose the reporting API:
- Reports are more scalable. I believe MWS reports can return an unlimited number of records.
ListOrders
can return a maximum of 100 orders. You can get more by usingListOrdersByNextToken
, but this leads to embarrassment in the problem, and it is not clear if you will just paging with offset (which could lead to lost / duplicate orders) or if this is a snapshot. - You can confirm reports and filter out unconfirmed reports. Orders can be confirmed as well, but I don't think there is a way to filter ListOrders based on confirmation status.
- Reports can be scheduled to be automatically generated at intervals like every 15 minutes. This means that you may not have as many calls as you think: in fact, there are only three of each interval: one to list unconfirmed order reports, one to display the report you want and confirm it.
source to share