E-commerce System

Client: E-commerce retailer.

Type:  Hard-to-find niche products.

Goal:  Building a system that can buy products from a bulk seller and sell them on various marketplace platforms simultaneously.

Tech: Java 8, Spring JDBC Template, MS SQL, Jenkins, Amazon API, eBay API, AngularJS.



Speak to us about your software development requirements: contact@getdeveloper.net



Our task was to change the Java code for functions dealing with prices in the system because when bulk vendors changed the price of the product, the system updated the whole database. The algorithm needed to be adjusted due to multiple vendors having similar products but at lower prices, which decreased profitability. As we changed the business logic, we had to eliminate product duplication’s. The business logic had to decide which items to keep and which to delete. The challenge was to analyse the data and decide on how to handle product dependencies.


To overcome the update issue, we applied database normalization. Our team created a new database with a clear structure that contained only singular prices for every item. Therefore, updates were performed separately, not overloading the main database.

The business logic was created using SQL. We added two new tables which stored the existing relationships between brand names. After the business logic was implemented, we removed duplicate items from the marketplace and linked them with the remaining ones.


Our team delivered a complex solution for e-commerce workflow automation. The resulting system structure consisted of modules which: 

  1. Handled the flow between the marketplace and bulk sellers, vendor dashboards and product manager dashboards.
  2. Allowed the workflow to orchestrate orders when the system received orders from the different marketplaces and processed them, sending the submitted order to the seller.
  3. Responsible for updating the system. Bulk vendors send updated prices and inventory, which the system later update on the marketplace. Vendor dashboards allow managers to process orders manually and verify suspicious ones.

getDeveloperSpeak to us about your software development requirements: contact@getdeveloper.net

Related Posts