Xamarin Android app for PoS in restaurant
YoiPos is a mobile application designed for restaurants and food chains that streamlines the ordering process and enhances team communication and reporting. It is built using C# with the Xamarin.Forms framework (version 2.4.0.18342 or later), targets netstandard2.0 for PCL, uses Xunit 2.3.x for testing, and employs Serilog for logging with a sink to ElasticSearch. The app utilizes Telerik UI for Xamarin and targets Android (minimum API level 23), with plans for iOS in a later phase. Additional support comes from NuGet packages, including Xamarin.Auth v1.5.x.
The concept for this app had been under consideration for some time by the client. Picture yourself at a familiar restaurant or café—how does the ordering process typically work? A waiter approaches your table (if there is one) and provides you with a menu, then takes your order by writing it down in a notebook. Once you've made your selections, the order is relayed to the kitchen. If the waiter accurately documents your order, you’ll receive what you expected. As time passes, you might add to your order with drinks or desserts, requiring the waiter to remember and note each request. This order documentation becomes important for monthly and annual reporting purposes, especially when it comes to bonuses.
Now, consider if the waiter has a bad day or mishears your order, resulting in mistakes like your receiving chicken parmesan instead of pasta with meatballs, and beer instead of wine. You would then face an additional long wait for the correct order, leading to frustration for both you and the waiter. While such scenarios may seem improbable, they occur regularly in restaurants everywhere. The key to minimizing these errors is to reduce the potential for human mistakes, which is precisely what YoiPos aims to achieve.
We conducted research and a survey within a popular cooking community on Facebook, asking food industry professionals, including restaurant workers and diner's what annoys them the most when dining out. The top complaints included: 1) the need to reserve tables in advance, 2) waiting for orders to be prepared, 3) mixed-up orders, 4) malfunctioning POS systems requiring cash payments, and 5) unfriendly staff. These issues are well-known irritants that significantly affect patrons' experiences.
The app's core philosophy revolves around minimizing human interaction to create a more efficient and streamlined ordering process. However, we haven’t eliminated waitstaff; they are still essential. Each waiter is provided with a tablet loaded with the app, and there are also tablets in the kitchens. While waiters continue to greet guests, hand out menus, and take orders, they now enter orders directly into the app rather than memorizing or writing them down. This drastically lowers the chance of errors. Furthermore, waiters no longer need to deliver a written order to the kitchen, simplifying the process even further.