Integration of Klipfolio with Amazon Marketplace Web Services(MWS)

Client

A USA based consulting group having offices in Los Angeles and New York, which provides variety of services and products that solve the key needs of entrepreneurs. These needs include: Designing, Marketing, identifying new opportunities, developing business plans and raising capital and Brand Strategy. The customer also builds Business Intelligence Dashboards for entrepreneurs to track their sales and profits.

Challenges

As our client is a large organization and has served more than 3,000 clients throughout the United States and also has connected to the network of professionals worldwide. They needed a sophisticated way to connect the Klipfolio Dashboard with Amazon MWS API. Klipfolio is an online dashboard platform for building powerful real-time business dashboards that contains Reports, Key Performance Indicators using Charts etc. On the other hand Amazon MWS is a system which store the orders/SKU information of the products for the seller whose products are available on Amazon[dot]com website. Amazon MWS also provides an API which allows third parties to programmatically access their business logic and data. The API allows access to MWS’s aggregate classes and marketing data for third-party web and mobile developers, as well as integration with individual business websites.

The data that we need to query are related to the sales and order of the Product. Inventory and SKU details. These details are available in the Order, Product and Inventory method of the API. Now, we need to fetch this data through custom API Queries. The Amazon MWS API is developed using industry standard technologies (REST web service, using JSON Data transport format) and it follows complex Authentication to validate the API connections. The authentication validation in Amazon MWS API is a crucial task. It uses the time-stamp and some API parameters i.e. MWSAuthToken, Seller ID, Secret Key and Marketplace ID. Using time-stamp and other API parameters, a signature is generated which expires just after the single use. So, whenever a new request is needed a new authentication would need to be setup. Therefore, a solution had to be developed to find an approach which automatically setup the authentication, validate it and fetch the data from Amazon API. Then, parse and post the data to Klipfolio dashboard.

Solutions

We have made dynamic data sources to fetch the required business data from the Amazon MWS API using Java Program. It is a REST based API and uses two step authentication with time-stamp and the data transportation format is JSON, we have performed parsing to get the data from the API and post it to the JSON based data source of the Klipfolio Dashboard.

We are using the Order, Product and Inventory method of the API to get the data from Amazon Server. To post the data on Klipfolio dashboard, we first generated the signature by encoding the time-stamp with API parameter using HMAC algorithm, then fetch the data from the Amazon MWS server, We have also made scheduler service to update the data source of Klipfolio Dashboard at regular intervals. This service will take regular updates from all the methods of Amazon MWS API for the data source of Klipfolio Dashboard.

Results

  1. Amazon MWS is a system to store the seller information and their Sales/SKU/Inventory details at Amazon site. Now using this application, users are able to track the statistics of all the products sales in Daily, Weekly, MTD and YTD format by creating graph in Klipfolio.
  2. Users can easily check their daily statistics and are able to make performance comparisons.
  3. Users can check the Sales status of each of the product.
  4. User is able to see the status of the Inventory/SKU and will update their inventory if the product quantity showing is low.