E-Commerce System for Distribution Business

E-commerce system for a distribution business that manages products and orders across multiple marketplaces. ZappySales is a platform that optimizes the process of selling high SKU catalogs via various marketplace channels.


COUNTRY

USA

FOUNDED
Amazon APIAngular JSeBay APIJava 8JenkinsMS SQLSpring JDBC Template
E-Commerce System for Distribution Business

Our Approach

1. Database normalization

In dropshipping business, databases powers the system. Our project has one database that combined all the information about orders, clients, and products. When bulk vendors change the price of the product, the system updated the whole thing. We’ve got a high number of deadlocks as other functions were making requests to the database.

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

Our task was to change the java code for functions dealing with prices in the system. We changed business logic and updated about 1 000 000 items on every marketplace. This challenge allowed us to play with logic and accelerate connections between stores and systems.

2. Change vendor logic

According to the business logic, when a client orders a product via the store, the system sends a request to the vendor assigned to this product. However, we figured out such an algorithm doesn’t bring maximum profit. Since we had vendors with similar products but lower prices.

With new business logic, after the client makes an order, a system in a runtime monitors identical products from all the vendors and assigns a request to the one having the lowest price.

3. Delete duplicated items from marketplaces

Since we had similar products assigned to different vendors, we were selling duplicate items in one store. As we changed business logic, we had to eliminate duplications.

The challenge was to dig into the database and save dependencies’ product names. For example: ‘SomeBrandName’ has a relation to ‘SomeNameBrand Inc’. This task was done using SQL. We added two new tables which stored the relation between brand names.

– first table stores «VendorBrandName», «brandId»
– second table stores «BrandName», «brandId»
– new column «brandId» we added to our inventory table
The next step was actually to merge existing items by having brand name relations.

We came up with a new business logic to decide which items to keep and which to delete. After determining we removed duplicate items from marketplaces and linked them in our system with the remaining ones.

Business Value

Our team managed to deliver a complex solution for e-commerce workflow automation. The e-commerce system structure consists of three modules:

  • The module that handles flow between the marketplace and bulk sellers;
  • Vendor dashboard and product manager dashboard.

The workflow module orchestrates orders. There are two flows of functions, first of all, the system receives orders from different marketplace and process them (filter, calculates profit, and selects vendor with the most favorable price) and send the submitted order to the seller. When the seller formed an order and sends it to the buyer, the system receives an invoice that further goes to the buyer’s account on the marketplace.

The second flow is responsible for updating the system. Bulk vendors send updated prices and inventory, which the system later updates on the marketplace.

The vendor dashboard allows managers to manage orders manually and verify suspicious ones.

The product manager dashboard is an interface where managers can change or add photos, descriptions of the product, and prices.

Contact Us

Fill in the form to explore the services suited
to address your current business challenges.

Slider_comment__img__OqYpn

Chris Garbacz

Co-founder, StudioNinja

The solution launched to user praise and minimal bugs. Sombra has adapted to technical challenges and limited resources throughout the partnership. Consistent communication, flexibility, and a willingness to incorporate feedback have enabled a seamlessly integrated workflow. Our relationship has run smoothly since the beginning.
Slider_comment__img__OqYpn

Martin Weber

CTO, Fooring Company

This is the best offshoring experience I’ve had in my 25 years of doing this. Sombra is very productive. We’re cranking things out with very little rework needed. We have speed and quality, which is important because the system is live, so if we make a change, it has an immediate effect on our customer base.
Slider_comment__img__OqYpn

Sloan Ginn

Former Director of Product

Sombra successfully delivered a smooth-functioning product in the time that the client needed. Their developers were competent and receptive to feedback; the team lead, in particular, proved to have great expertise. They were accommodating of large and abrupt changes, making them a reliable partner.
Slider_comment__img__OqYpn

Jack Crews

CTO, Legal Monkeys

Sombra keeps everything simple and prioritizes getting the work done. One thing that I was pleased with was that Sombra was able to adapt to and learn our approach to software development. They adopted our best practices and were productive within that development methodology. Overall, the quality of their work is above average.
labels