When it comes to standardized software solutions available on the market, it is not always fittable to the needs of a particular business. It is not always about the size of the company, but the functionality that one could require.
Besides, not all clients and workers are the same as well. Ready-2-Go solutions are great for freshly made businesses, but if the player is in the game for long enough, he will surely have some sort of specific requests to the software that serves the work.
The client of this case study wanted an exceptional approach to building a custom PoS(Point of Sale) solution for the existing gas station network with the option for expansion in the future.
The main functions that the gas station software should provide are the ability to control the gas pumps, run tests, pull in and correct prices on the Price Boards outside of the station, control the cashier device, track the available inventory for selling goods and provide clarity in the transaction history.
The scalability of the system doesn’t only include the possibility to add more gas stations later, but to have more local-oriented tailoring, such as:
- supporting multiple currencies, rather than USD only
- being able to add more languages
- to have different catalogs between separate gas stations.
Clarifying the Needs
The gas station’s network has two main sources of income: it is the gas itself and the restaurant/selling goods.
On the first slide, you can see the categories all shop items are sorted: Gas, Coffee, Snacks, Dishes, Products, Alcohol, and Tobacco.
Selling the last two categories' of items to minors is prohibited, so the software will trigger a reminder to check the buyer’s ID!
Previously the client had issues with workers selling alcohol and tobacco to underage buyers, unfortunately, that’s why we have implemented this feature to the software.
The buyer can pay the bill by Cash(USD), Credit Card, and Prepaid Fuel Card.
As it was mentioned earlier, the cashier will also support multiple currencies in the next update.
Pity to say, but it’s just the world we live in - one of the main complaints of the client was that some workers were able to sell some goods without a transaction on the cashier, or even to ‘borrow’ a part of the daily earnings, so the client has requested an advanced tracking system for the cash flow and inventory.
Extra Layer of Precision in the Cash Management
To do so, we have added a checker to the workflow of the cashier. When the worker logs in to start a shift, he has to count the amount of cash in the cashier before the shift starts. During the shift, all transactions are tracked and can be found in transaction history.
Also, there is a filter added in the transaction history, which allows finding the info by the manager, date, etc. The client can check any shift, any transaction, and any manager within the range of half of the year.
Tech Stack Explained
One of the most challenging tasks was to connect the cashier software and the pump hardware with the use of the master forecourt controller. The connection between a cashier and fuel dispenser is rigged through a Forecourt Device Controller API, provided to React POS application through a Java-based Android APP container.
Most of the business logic is handled by POS applications. It's much more maintainable and faster to develop.
Even more, this setup allows instant cloud updates.
Java Container provides an extra API to connect to hardware like Printers, Cash Drawers, Scanners, Payment Terminals, and FDC.
API side is a scalable, cloud-based service written on TypeScript and NestJS.
Having a connection to FDC, the POS application allows control of the whole Gas Station, including Fuel dispensers, Price boards, and Fuel tanks, gathers safety metrics, and reports if something goes wrong.
Results and Outcome
After the implementation of the custom built software, compared to the previous setup, the client states the rise of the efficiency, time and profit on every gas station!
Round-the-clock gas stations don't need a 15m break everyday, the number of technical support tickets reduced by 80%, new features are delivered in minutes, instead of days.
Not to mention, employees onboarding takes hours due to native UX.
A new Loyalty program that we implemented to the network and Fuel cards has increased the average paycheck and the number of transactions as well.
Delightful experience of the new software helps workers to proceed with the operation faster and more precisely. Besides that, the daily earning increased up to 7% daily, because of the increased speed of the procedure and clarity of the transaction.
The implementation of our software had an impact on the cost reduction of the service maintenance. Previously, to apply any updates to the cashier, or the pump controller on any single PoS, the client had to schedule a visit of a specialist to the particular gas station. Every scheduled visit of a maintenance worker had cost a fortune for the client, and what is most important—the delay between the error on the gas station and availability of the worker was crucial and resulted in pauses of services.
We have added the self-tests of the pumps, service scripts and auto-maintenance to the system, which runs tests on the whole system and reboots the modules which caused the tests to initially start. It means that most of the time the software repairs automatically and excludes the need of a maintenance worker to visit.
With the increased amount of payment methods on the gas station after the software implementation, the client has stated the rise of the profit on the whole network by 15%. This percentage is covered by the use of Fuel Cards, which are linked to bonuses on the gas station, a free coffee for example. The general Loyalty Program has a complex design and is divided by several specific programs. Every program in the Loyalty System can and should be set up to be triggered by an event. Events are likely to be like a scan of a Fuel Card, high/low amount of sales of a product, times of day, manual sale trigger or any other event that the client could possibly require.
The client contacted us in early 2021, and as far as every detail was settled, we started to develop the prototype of the software. Every aspect of the prototype was needed to be guided and approved by the client, which took us more than a month to develop.
As soon as the prototype was created and fully approved by the client, it took us seven months to build the first version of the software. The main version was implemented at the first gas station a few weeks after, and after it was fully tested and found perfectly working—all thirty PoS were updated.
To get yourself the reimagined software instead or to make an outstanding project from scratch - get in touch with our specialists and we will see bring a game changer into your business!