Implementation of Inventory Management for Multiple Offline Stores

February 6, 2025 Author: korjeek

How We Implemented Inventory Management for ITKKIT Considering Multiple Offline Stores

In today’s world of e-commerce, it is important not only to efficiently manage an online store but also to consider the needs of offline retail locations. We faced an interesting and complex challenge: to develop a system that would allow managers of two ITKKIT offline stores to see up-to-date inventory levels not only in their own stores but also in other warehouses, including the online store. This solution would help increase sales and improve logistics within the company.

Initial Data

The client — ITKKIT, has:

  • An online store with high traffic and a large number of products.
  • Two offline stores, each with its own warehouse.
  • An accounting system in 1C, already used for inventory management.

Main Project Challenges

  1. High website load. The online store’s database was already operating at its limit, so any bulk operations could lead to reduced performance and failures.
  2. Data caching. The website actively used caching, making it impossible to retrieve real-time inventory data.

These limitations forced us to look for efficient solutions that would not overload the database while ensuring data accuracy.

Solution Implementation

1. Integration of Data from 1C

The first step was to establish interaction with the 1C accounting system, where inventory tracking was already in place for all warehouses. Together with the client’s specialist, we configured the export of two new properties for each product:

  • Stock levels in the first offline store.
  • Stock levels in the second offline store.

Thus, we obtained structured data that could be loaded into the online store’s database.

2. Optimized Data Updates

Since the website’s database was under heavy load, we could not simply update all stock data at once. Instead, we developed a gradual update method:

  • Every 5 minutes, small batches of 10 product requests were sent.
  • Over a week, the system updated data for all products and their sizes without causing excessive server load.

This allowed us to implement up-to-date data without harming website performance.

3. Asynchronous Data Display System

The next step was to create a user-friendly interface for store managers. Since real-time data retrieval was impossible due to caching, we implemented an asynchronous request system:

  • When a manager opens a product page, the system sends a background request to the server.
  • The server retrieves stock data from all warehouses.
  • The data is loaded on the page without reloading, ensuring high-speed operation.

This way, managers could instantly see up-to-date inventory information without creating additional server load.

4. Automated Inventory Deduction and Reporting

To make the system fully functional, we implemented two key features:

  • Automatic inventory deduction. When a purchase was made, the product was reserved and deducted from the appropriate warehouse.
  • Inventory reporting. We configured a reporting system that allowed sales and inventory data analysis in a convenient format.

Project Results

As a result of our work, ITKKIT’s inventory management system reached a new level. Now, managers in each store:

  • Can see not only their store’s inventory but also stock levels in the other offline store and the online store.
  • Can quickly check product availability and direct customers to the right location.
  • Work in a convenient interface without delays or system overloads.

This solution not only improved employee efficiency but also increased sales through optimal inventory distribution.

Our team successfully completed the task despite technical limitations and helped ITKKIT take inventory management to the next level!

Leave a Reply

Your email address will not be published. Required fields are marked *

Begin work on your project today
Contact us on Telegram. Ask a question and get a quick response.
or
Message
in Telegram
By clicking the button, you give your consent to the processing of personal data and agree to the privacy policy.