OUT NOW: Android 13 for Raspberry Pi 4

Why use Android for your self checkout system

Self checkout illustrations by Storyset

Self checkout systems continue to grow in popularity.

A recent article on CNN indicated that 29% of people used checkout systems in 2022, up from 23% in 2021. Research by the Kiosk Manufacturer Association KIMA indicated that nearly 50% of customers use a self checkout system "all the time" when it is available. 

Self checkout systems have been a game-changer for retail companies, improving "line busting" for customers. 

Line busting is any means used to avoid long queues when shopping. 

A properly implemented self checkout system can mean the difference between beating your competitors or succumbing to them. In a world where users expect everything to happen now, waiting in line to pay for items can be immensely frustrating. The self service checkout system lets users move quickly through shopping queues with minimal complication. 

Self checkout systems are especially important at grocery stores where traffic is high and lines can build up quickly. 

For developers of self checkout systems, certain important questions arise before development begins:

  • What operating system to use?
  • What programming language to use to create the self checkout system application?
  • What hardware architecture is the right choice?

These questions are not independent of each other. The operating system you use will have a direct relationship to the hardware it’s based on and also to the language chosen to create the self checkout system application. 

In this article, we're going to look at the different choices manufacturers have when developing self checkout systems. We'll also look at which choices are most likely to result in a more affordable selfcheckout system for your clients. Choosing the wrong device and hardware can result in higher initial development costs for the self checkout system, but also in large maintenance overheads that leave your customers dissatisfied. 

Let's get started!Self checkout-amico(1)-1

The three different self-checkout systems

Self checkout systems generally break down into:

Self ordering systems (such as for tickets)
Self checkout (such as at a grocery store)
Self service (such as in a restaurant). 

 

Image source: Customer illustrations by Storyset

These three categories all share one major element in common: Touch-screen interaction with the user. 

These three forms of self checkout systems will have their unique challenges to create. For example, tabletop ordering systems will not typically require barcode scanning hardware. In-room self-ordering systems probably don't need to be as robust as a retail store self-checkout POS system. 

But in all of the above types, Mobile Device Management (MDM) features are essential. An MDM service — such as MDM in retail — is crucial to monitor devices, manage their software, and push firmware OTA (over the air) updates to them. These are just some benefits of MDM.

Enterprises should take a software-first approach to developing their self checkout systems. It's easy to get mired down in the hardware. But choosing hardware at the cost of excellent software means that the user will suffer because of a poor user experience. A user's contact with your device is primarily through the software, not the hardware specifics. Users don't care what type of processor is being used inside.

They care only if:

The system works
It is user friendly
It is easy to understand.

Device manufacturers don't have time to tinker with operating system issues. The best operating system is one that works. Choosing an OS that supports a wide variety of hardware configurations frees your company up to focus on improving the overall self checkout system instead of wasting time trying to get the operating system to talk to the underlying hardware. 

Overcoming the disadvantage of self checkout system development cost

Any development venture has upfront costs but these can be increased exponentially when the wrong tools are used. 

Mistakes early in the development cycle can lead to enormous costs later on. For example, if the user experience is consistently poor, the entire project might need to be redone. One common area for a poor user experience is a lack of familiarity with the user interface. Using Android for a self checkout system means that the user interface is universally familiar to users. Using another operating system opens the door to potential dissatisfaction or a lot of unnecessary investment in UX development.

Developing a self checkout system on a non-optimum operating system is a guaranteed way to increase the overall cost of the project in the long term. Cutting corners at the start might lead to costly errors in the future. 

A lack of operating system updates could also lead to severe security flaws in the future. Your job as the developer of a self checkout system isn't to program updates for operating systems. If you don't choose an OS that has a strong team behind it, you might have to switch to a different OS altogether mid-flight because of constantly unpatched errors. Ultimately, if any breaches occur on your self checkout system, it is your company's neck on the line. 

Anyone who manages self checkout system development must consider the long-term impacts of maintaining all aspects of that self checkout system, from the hardware to the OS and the end application itself. Ending the self checkout system development cycle doesn't end the project. Installation is only the beginning. Now comes the hard task of keeping the self checkout system regularly maintained and handling errors in the live system fast. Picking the right OS at the beginning is crucial to making that possible. 

AdobeStock_106205936

What is the role of the OS in a self checkout POS system?

The operating system used for a self checkout POS system is essential to its success.

The operating system will have a direct effect on:

What hardware is supported
What software can be created
The overall user experience
Security
The use of peripherals

Hardware

Mass-produced commercial operating systems are created for large-scale device and hardware configurations such as smartphones. But smaller fleets of self checkout systems are usually made using more economical hardware configurations because kiosk-mode devices don't need bells and whistles. 

Choosing an operating system that only works on higher-end, mass-produced devices results in wasted costs. Android can be applied to a wide range of devices, not just phones.

The self checkout system software itself

The self checkout system you develop will need to run on the target operating system. You will not be able to execute an Android app on a Windows device easily and use Android kiosk software to lock user interaction to a certain app.

Overall user experience

The overall user experience also plays a role. Android has a stellar record for user experience. Users are familiar with its interface, and it was designed using a mobile-first, touch-screen approach.  

The Android experience is a far cry from some of the "ugly button" devices we've seen around. 

Security

The security of your self checkout POS system is primarily determined by the choice of operating system. 

Security relates to:

The OS itself
The OS's ability to be updated

One vital feature the operating system must have is the ability to receive OTA updates to install security fixes. Self checkout POS systems are connected devices, meaning that they are always online. They need to communicate with payment gateways and inventory systems. As such, they are prime targets for hackers. Leaving a known vulnerability unpatched in a self checkout system is a sure way to get hacked. 

Not all operating systems allow for remote device updates.  

In addition to the operating system itself, there needs to be an update infrastructure in place that the operating system connects to so it can receive updates. This means that the OS should be supported by a reliable organization behind it. For enterprise use cases, that usually eliminates choosing an open-source solution that is worked on by only a handful of private individuals. 

Updating the OS itself is not the only aspect of security that needs to be considered for your self checkout system. The self checkout system application will likely need updates. Using an OS that comes enabled with MDM features means you are able to push updates of the self checkout system directly onto the device remotely. 

These features also let you ensure the device is in compliance with company device policies such as using a proper password or maintaining its Bluetooth connectivity in a certain state. 

The use of peripherals

Driver support for peripherals is essential for a self checkout system. Not all operating systems have the same level of support. These peripherals likely would include a printer to print receipts, touch screen, payment processing device, and a barcode scanning device. 

The wider the choice of peripherals, the more customized the operating system for your self checkout system needs to be.  

Should you make or buy self checkout system software?

A lot of plumbing sits inside of a self checkout system. This ranges from the kiosk application itself to the internals of the operating system and hardware. 

Companies that create fleets of devices for self checkout systems run into the problem that no stock operating systems match the hardware configuration of their devices. These stock OSes are made for large-scale mobile and hardware manufacturers where device numbers reach hundreds of millions. Fleets of a few thousand or even a hundred thousand need to go hunting for an OS that matches the device they are using. 

Customize your own operating system

A self checkout system has very specific hardware requirements, making it even more challenging to find an operating system that works with that self checkout system. 

One option is to customize an existing operating system yourself. At first glance, this might seem the logical choice, especially for a system such as Android that has many thousands of developers for it. 

But it's important to understand that those Android developers are primarily application developers. The Android operating system is a hybrid of a Linux kernel and Android code. Developing the Android operating system requires knowledge of both Linux and Android, as well as a knowledge of hardware. 

Still, Android would indeed be the logical solution because it is open source, and it offers an excellent user experience. 

Implications of a home-grown Android

Creating a home-grown Android version that works on your self checkout system involves far more than just tweaking the OS.

To enable OTA updates, which are required by law in Europe and especially in Germany, requires:

  • Specifically coding this feature into the Android operating system
  • Building and maintaining the backend infrastructure to build and deliver these updates regularly. 

This backend infrastructure cannot be understated. It requires regular code-builds, a testing team, server maintenance, and rigorous security standards. 

For a fleet of a hundred thousand devices, it just doesn't make sense to build this entire infrastructure yourself when integrated and complete android fleet management solutions already exist.  

Self checkout system development

Developing a self checkout system requires a DevOps approach because the hardware, OS, and self checkout system software are all so closely interrelated. The easiest way to navigate this is to have a standard operating system with hardware APIs that work regardless of the underlying hardware. 

Android provides this with its Hardware Abstraction Layer (HAL). So long as the underlying drivers exist, the app developers need to call the respective HAL functions and the drivers ideally take care of the rest. 

Once the team has developed the self-checkout system, the final step is testing it, including testing OTA updates and maintenance of the system from a distance.  

Self checkout system comparison

There are several types of self checkout systems out there. 

  • Express retail self checkout systems (basically, a self-service kiosk)
  • Smart carts and mobile scanners, a portable self checkout system where users scan items while they shop. 
  • RFID scanners — users walk through a gate that scans items packaged with RFID tags, and then simply have to pay. No checkout necessary. 
  • Self-checkout sensors as used in Amazon Go stores. 

Let's look at some of the pros and cons of these systems:

 

Initial cost to set up

Efficiency

User experience

User frustrations

Retail self checkout system

The easiest of all to set up, especially with Android.

Efficient if the right hardware and OS are used. 

Overall good experience.

Weight detectors sometimes fail. 

Smart carts and mobile scanners

More costly to set up. Can also be done with Android. 

Highly efficient. 

Excellent user experience provided the code is robust and weight sensors in the cart work properly. 

More automated so can lead to higher frustration when things go wrong. 

RFID gates

Additional solution required to tag each item. 

Highly efficient but can lead to shoplifting because RFID tags can easily be seen and removed. 

Incredible user experience. No checkout needed. 

The "black box" solution can be highly frustrating if anything goes wrong. 

Sensors

Massive investment as the entire store must use state-of-the-art sensors

Extremely efficient. Users walk in and walk out. 

Amazing user experience. 

This is also a "black box" solution but Amazon already has excellent customer support so users have somewhere to turn if anything goes wrong. 

A self checkout system example using Android

Android is an amazing operating system used for self checkout systems. But it needs to be properly modified to make it work on different hardware configurations. 

Emteria.OS is an enterprise-ready version of Android that includes OTA update functionality, wide support for a variety of hardware configurations, and has a strong team behind it to keep it updated. 

Using embedded Android for self checkout systems makes sense because Android facilitates cost-effective app development and provides intuitive usability, especially on touch screens. This last point is vital because end users are not experts or tech professionals. They just want a system that works. 

Emteria provides long-term support and regular OTA updates. MDM functionality is included, and devices can be provisioned and managed through emteria's easy cloud-based Device Hub

Header image source: Customer illustrations by Storyset

Power your kiosk with Android

Interested in running embedded Android on your self checkout system?

Check out the comprehensive guide to Android kiosk software and learn more about how to create secure and up-to-date Android kiosks.

Check out kiosk guide
AdobeStock_195826808
Back to Blog

Table of contents