technology: React, TypeScript, Kotlin, Spring Boot, Swift, Realm, AWS
problem: connecting various devices with POS
What lies behind the bustling restaurant kitchen counter? You’ll find a medley of fresh ingredients and a blend of known and unknown flavors. The kitchen buzzes with a busy staff managing multiple orders simultaneously. However, there are also crucial elements you might not consider – numerous retail devices as part of the point of sales system.
From printers and terminals to kitchen display systems and tablets, these devices are integral to restaurant operations. Yet, their sheer number and complexity can add to the chaos for an already overwhelmed restaurant staff.
the solution: POS integration with multiple devices from different producers
Just Eat POS is a point-of-sale (POS) system that we have been scaling for almost a decade, evolving from the startup Practi to a global solution within the JustEat Takeaway portfolio. One of the system's key advantages is the uninterrupted integration of POS devices.
The system we built supports devices from various producers, allowing restaurants to easily connect their POS printers from manufacturers such as Epson, Star, and tablets with built-in printers like Citaq or Sunmi.
The POS system is also flexible in terms of the types of devices it supports. Restaurants and stores could easily operate with equipment such as cash registers, electronic scales, barcode scanners, magnetic stripe readers, and kiosks. These devices are mostly connected via Bluetooth and, in some cases, through WiFi, making Just Eat POS the central hub for all restaurant payment and order operations.
We added crucial automation features to alleviate some responsibilities from the already burdened waitstaff. One such feature is the automated order printout for the kitchen. After completing an order, a printer prints the kitchen receipt with only the essential information for the kitchen (excluding prices, for example), ensuring that the kitchen staff receives the order promptly and can proceed with meal preparation. This automation means the waitstaff no longer has to worry about whether the kitchen receives the necessary information.
challenges: maintaining a reliable connection with multiple printers
Our software development team was in charge of unifying various devices with different Software Development Kits (SDKs) into one system. Diving into different SDKs and hardware producers' requirements was a demanding process, but it enabled our team to greatly increase the number of devices Just Eat POS supports, giving restaurants a lot of freedom in terms of the devices they wanted to use.
One of the challenges of printer integration was maintaining a reliable connection with multiple printers simultaneously. Restaurant employees often needed to print receipts for clients while also printing meal orders for the kitchen. To tackle this, our team developed an efficient simple system that assigned specific roles to each printer, streamlining the process and ensuring smooth operations.
The system must remain reliable even if one of the printers turns off. In such cases, the mechanism designed by our team allows the system to reroute the receipt or kitchen order to another device. This assures waitstaff that, regardless of any issues with printing devices, the system always finds an alternative way to print the document. This is of utmost importance, especially when restaurant staff are taking orders from clients, as any printing malfunctions could negatively impact the customer experience and potentially result in poor reviews.
the result: stable connection with retail devices
As a result, Just Eat POS has become a system offering a stable connection to various retail devices. It allows restaurants to choose the hardware they prefer while ensuring that, even if a printer malfunctions, the system will still manage the printing process. This solution has been highly appreciated by restaurants and stores across Israel and the UK.