A web based order management system (OMS ) provides direct response, e-Commerce and multi-channel retail industries with scalable Order Management, and Call Center solutions that optimize sales performance. This OMS is developed under vteam #450 using ASP.Net WebForms, Vb.net and SQL Server.
Now our customer required the integration of OMS with Amazon Marketplace Web Service (Amazon MWS) to request Amazon for shipping items from the seller’s Amazon fulfillment network inventory to a destination address. This integration would include:
- A connection with Amazon Marketplace Web Service to submit orders data
- Parsing of Amazon Response and auto-update of orders in the database
- Generating a CSV file using current OMS’s export framework
It was a high priority task for vteam #450 with limited time duration. Customer only provided the URL of Amazon Marketplace Web Service to vteams engineer Waqas Ahmad. After reviewing the requirements, Waqas suggested to implement it as an export module that will submit orders to Amazon MWS and generate a CSV file showing the status of a particular submission. For its implementation:
- Amazon MWS functions were used for mapping parameters with database fields. A custom code was written to traverse all orders (ready for shipping) for creating a request URL with the required parameters.
- Appropriate documentation of Amazon MWS for .NET was not available so Java based documentation was consulted to write a separate custom class library (DLL) for generating Amazon MWS accepted signature and URL for every request. This library would basically run in OMS’s export module as a separate process.
- Appropriate request posting methods were applied to submit information to Amazon MWS. Additionally a custom method was written to send request to Amazon MWS URL.
- Date, time and currency related fields were converted to their required formats.
- Error handling/fall back for each type of response was implemented.
- Logging based on Amazon MWS response was added. This feature would help debugging the application while running on production environment.
- Amazon MWS response XML parsing code was written to extract and add/update information of only successful orders in database.
- At the end, a CSV based file would be generated to show the necessary details of a submission.
Amazon MWS integration module was completed within the estimated time along with proper QA testing. Customer was regularly updated with the progress being made. He was delighted to revolutionize the whole process of shipping products to his users by submitting the order inventory to Amazon fulfillment network with a single click only (without using Amazon website).