Who is the Company

A food and beverage company with an extensive chain of stores worldwide.

The Challenge

The company has many brick-and-mortar outlets across multiple time zones throughout North America. The company had difficulty tracking the publication status of store orders within North America, which led to problems with inventory management. These problems resulted in out-of-stock items, poor decision-making, and lost profits due to excess inventory.

Each store ideally posted daily inventory orders before they opened for business. Once the orders are posted, store partners need to review and approve the published orders. This review and approval process is important because it ensures that the orders are accurate and complete.

The company has set a cut-off time, which is the last time stores can make any changes or adjustments to their orders before they are sent to the distributors for processing. This cut-off time is critical for the company's operations, as it ensures that the store orders are accurate and inventory will be delivered on time. It also allows the company to avoid overstocking or stock-outs.


The lack of visibility into the store order status led to inventory management problems. Sales suffered because out-of-stock items led to customer dissatisfaction and lost conversion opportunities. The company also lost potential profits because the excess inventory generated higher carrying costs.

In brief, the company was looking for the following:

  • Increased publication status frequency: On the current business date, various stakeholders need to be alerted about order publication status hourly. Lack of timely data led to poor decision-making. The company was looking for a way to increase the frequency of order publication status without sacrificing overall system speed or data quality.
  • Greater control over inventory management: Order discrepancies were not spotted and corrected promptly in the existing system. This resulted in misaligned inventory levels, inefficiencies in the supply chain, and confusion in order and fulfillment processing. The company’s production support team needed to know if discrepancies were observed between forecasted and published orders. 
  • Complete order visibility: The existing ordering system lacked transparency. The company wanted a solution to provide them with near-continuous monitoring of stores’ order status. The lack of order visibility resulted in delays and errors, costing the company tangible losses in terms of money and intangible losses in terms of customer dissatisfaction.

The Solution

Our production support team integrated Slack with the company’s DB2 database to help them track the publication status of store orders. This integration allowed the support team to quickly alert the appropriate company resources if any discrepancies were observed in the ordering process. Our engineers then set up an automated process, called a cron job, that runs every hour from 12:30 to 3:30 AM Pacific time. This process is responsible for publishing the order publication status, which gives the company near-continuous monitoring of store order status. This time frame was chosen to validate the total number of orders that matched the forecast.

Our team implemented the solution in two stages. In the first stage, the system retrieves the total number of orders forecasted for the day. The new system also pulls the number of orders created and the pending forecast through the end of the hour. The system also checks for skipped orders that missed deadlines, invalid orders, and order delivery schedules. It also checks for duplicate orders and calculates how many orders remain unfulfilled.


In the second stage, the new solution posts order counts to the integrated Slack messaging service every hour. Image 3 shows a mockup of a posted Slack channel message.


As an example, let’s say that the order forecast is for 100 stores, one order each, distributed as shown in Image 3 above. In this example, an alert is triggered if the order cut-off is at 3:15 AM Pacific time and only 90 orders have been published. The new system sends out a message to all stakeholders regarding the missing ten orders via email and Slack. The replenishment team now has time to complete the missing orders manually and, therefore, can avoid any supply chain disruptions.

Key points in our solution include:

  • DB2 to Slack integration: Integrating the company’s DB2 database with Slack allows the company to post messages to a Slack channel. The decision to use Slack was a brilliant design choice made by our engineering team because Slack is available on all PC platforms, browsers, and most mobile devices.
  • Hourly postings: Another key innovation our team introduced was to post order totals each hour. This gives members more time to react proactively in cases where a problem arises, such as orders that missed the agreed-upon deadline or duplicate orders.

Business Impact

Key benefits the company enjoyed after project completion included:

  • Effective ordering management: Automation of order publication count minimizes errors. This, in turn, allows stores to make accurate orders, increasing profitability.
  • Reliability and flexibility: The new system provides accurate results without any loss of information. Company members can now expect a reliable order count on an hourly basis and have the flexibility to take action to ensure there is time to 
  • Increases reaction time window: The new system reduces the manual effort required to monitor order creation. This allows company resources to focus on more important tasks. 
  • Improved inventory management: Inaccurate product demand forecasting led to over or understocking. The new system allows stakeholders to manage orders efficiently, leading to better inventory management. Having items in stock resulted in increased sales and lower carrying costs.

Technologies Used

Slack: A business-oriented messaging app
Db2: A database management system from IBM
Micronaut: A framework to build lightweight, modular applications
Kotlin: A modern, statically typed programming language
Apache Cassandra: A high-volume distributed database management system
ScyllaDB: A fast, distributed, scalable NoSQL database

Do you have a similar project in mind?

Enter your email address to start the conversation