CASE STUDY

DEVELOPMENT

How to Create a Kiosk Application: Case-based Guide

Published: November 7, 2024

26 min read

Ever noticed how unattended payment terminals have transformed modern interactions? From cafes and retail stores to EV charging stations, these devices are now essential tools across countless industries. But creating a smooth, reliable user experience — one that also integrates seamlessly with business workflows — requires more than just hardware.

Today’s payment terminals need user-friendly, adaptable kiosk app development services that manage everything from processing transactions to delivering real-time data insights and customer support.

Android-based payment terminals have emerged as a versatile solution for such needs. By leveraging Android’s flexibility, businesses can create tailored apps that meet the unique demands of their environment, whether that means easy-to-navigate interfaces, fast transactions, or compatibility with other enterprise systems.

In this article, we’ll explore what goes into Android kiosk application development, covering hardware capabilities, design considerations, and development strategies that ensure these devices enhance the user experience — all while keeping security and usability at the forefront.

Looking to dive straight into our case-based insights?

Or, if you’re interested in learning more about Android payment terminals, start with the section below!

❓ What is an Android Payment Terminal?

Android payment terminals are versatile devices designed to handle transactions, data capture, and other business applications across various professional environments. Built on the familiar Android platform, they provide flexibility, security, and seamless integration with enterprise systems, making them ideal for various industries.

Artem Manakov, Mobile Developer @ Stormotion

Android payment terminals provide a flexible, secure platform that can adapt to diverse business environments. By leveraging Android, we’re able to build a custom software that integrates seamlessly with enterprise systems.

Artem Manakov, Mobile Developer @ Stormotion

An example of how McDonald’s uses self-service kiosks in their restaurants

McDonald's uses self-service kiosks to reduce wait times and offer a more personalized experience for customers (video frame by Cuberto)

Types of Android Payment Terminals

Android payment terminals come in different types, each suited to various business needs and ideal for a range of kiosks software development solutions.

  • Android Kiosks. Android kiosks serve as self-service terminals, providing customers with streamlined access to services, digital wallet integration, and NFC equipment. These kiosks are often deployed in retail stores, transportation hubs, and hospitality settings, where they can improve efficiency and customer experience by enabling users to independently interact with intuitive, custom kiosk apps.
  • Smart POS Terminals. Smart terminals combine the flexibility of Android POS with advanced payment features such as POS system compatibility, payment network integration, and support for P2P payments. Commonly used in industries like retail and restaurants, smartPOS terminals offer versatile functionality for both self-service and assisted transactions, enhancing user experience and transaction efficiency. These devices are designed for easy POS app development, allowing POS developers to create tailored solutions for diverse business needs.
  • SoftPOS Terminals. SoftPOS (software POS) terminals allow businesses to turn Android devices into contactless payment systems, supporting NFC contactless payments without the need for dedicated POS hardware. Ideal for mobile settings like pop-up shops, softPOS terminals support digital wallet payments, dip NFC, and dip NFC contactless, providing a flexible, secure solution for businesses looking to simplify payments on the go and build kiosk application.
  • ChromeOS Kiosks. In addition to Android-based solutions, Chrome kiosks are also used in certain business applications. With the ability to choose app extensions, and access to Chrome apps and web apps, ChromeOS provides a secure, full-screen experience ideal for web applications and interactions. Kiosks with Chrome version are often chosen in educational and enterprise settings for their integration with Google Workspace tools and strong security features, making them an excellent choice if you want to create your own kiosk app.

According to Tilster study, 79% of customers prefer ordering through kiosks over interacting directly with staff, underscoring the increasing acceptance and demand for technology in customer service.

Key Features of Android Payment Terminals

Let’s discuss the features that make Android terminals valuable tools for businesses!

Feature

Explanation

Rugged Hardware

Many Android terminals are built to withstand rough handling, environmental challenges, and frequent usage. Their durability often includes impact resistance, water-proofing, and dust-proofing certifications (e.g., IP65).

Versatile Data Management and Security Compliance

With support for bill payment software and P2P app payment solutions, these terminals can handle diverse payment types while maintaining PCI PTS (Payment Card Industry PIN Transaction Security) compliance and using P2PE (Point-to-Point Encryption) to secure transactions. This capability is essential for effective custom POS software development.

Compatibility with Enterprise Systems

Android platform makes it easy to build kiosk app that integrate with various third-party applications and back-end systems, enabling seamless interaction between front-end devices and ERP (Enterprise Resource Planning) systems or POS solutions. Additionally, custom POS software allows for unique business functionalities tailored to specific operational needs, while Android POS integration with existing infrastructure can streamline operations.

NFC and Contactless Payment Support

These terminals facilitate NFC contactless payments and are compatible with digital wallets, making transactions faster and more convenient for customers. The POS reader functionality enhances versatility, catering to various payment methods. Terminal POS applications can be developed to leverage these capabilities fully.

Smart POS Functionality

Android SmartPOS terminals include advanced features such as customer engagement tools and inventory management integration. Adaptability and ease of use of Android SmartPOS terminals enable businesses to build a robust custom POS system through custom POS development that meets their unique requirements. The POS software development capabilities facilitate seamless integration with various POS terminal applications, ensuring that businesses can efficiently manage their operations.

📌 As you see, payment terminal application development is a powerful tool that allows companies to limit devices to specific applications or functions, providing enhanced security and control.

Benefits of Android Kiosk Mode

Based on our extensive expertise in Android app development services, we can affirm that one of the most popular types of Android payment terminal apps is the kiosk mode app. Let’s explore the main benefits of using Android kiosk mode for business operations.

Advantages of Kiosk Mode Apps for Businesses

  1. Enhanced Data Security. Android kiosk mode profile restricts access to a single app, safeguarding sensitive information and preventing unauthorized access, making it ideal for public terminals.
  2. Streamlined User Interactions. Android kiosk mode simplifies the user interface by limiting functions, guiding users through workflows, and minimizing distractions, optimizing them for mobile self-service and educational environments.
  3. Centralized Control via Admin Console. Kiosk mode allows remote management through an admin console, enabling kiosk software developers to monitor performance, deploy updates, and troubleshoot issues in real time. This centralized control allows IT teams to access kiosk mode settings, access user accounts, and utilize admin APIs, facilitating the effective use of admin apps.
  4. Improved Operational Efficiency. By setting up tailored kiosk mode profiles, companies ensure consistent device performance, reduce maintenance time, and enhance productivity with a simplified interface.

📌 These benefits make Android kiosk mode an invaluable tool for businesses aiming to implement secure, scalable, and efficient digital solutions for self-service and POS apps.

Interested in leveraging the benefits of Android kiosk mode for your business? Contact us to learn how we can develop a secure, efficient kiosk solution tailored to your needs.

Real-World Examples of Android-Based Payment Terminals

Next, we’ll look at two widespread Android-based payment terminals: Worldline Valina EP2 and Sunmi FT2, optimized for secure payment and enterprise use.

Worldline Valina EP2 Terminal Overview

The Worldline Valina EP2 is a compact, Android-based payment terminal designed for unattended environments such as parking lots and EV charging stations.

An example of the Worldline Valina terminal

Worldline Valina terminals enable businesses to integrate custom software, enhancing their service offerings (image by Wordline)

Some key specifications of Worldline Valina EP2 include:

  • Rugged Design. The device features a scratch-resistant display, and it’s certified for vandal- and weather-proofing (IK09, IP65).
  • Security Features. The terminal meets PCI PTS standards and supports P2PE encryption for secure transactions. ARM TrustZone technology provides additional processor-level security.
  • Flexible Payments. It accepts all major payment methods including contactless, chip-based, and magnetic stripe cards.

Worldline’s Android-based system ensures compatibility with business strategies, allowing each company to build a kiosk application that extends its functionality beyond payment processing.

Sunmi K2 Mini Terminal Overview

The Sunmi K2 Mini is a versatile, Android-based self-service kiosk terminal designed for industries such as retail, hospitality, and transportation. Its standout features make it an ideal choice for businesses seeking a powerful yet compact solution for self-service interactions.

An example of the Sunmi K2 Mini self-service kiosk

Sunmi K2 Mini terminals allow companies to integrate custom kiosk software for their business needs (image by Sunmi)

Some key specifications of Sunmi K2 Mini include:

  • High-Resolution Touchscreen. Equipped with a 15.6" Full HD multi-touch display, the K2 Mini provides a user-friendly and engaging experience for customers. The screen is highly responsive, making it perfect for smooth, quick interactions.
  • Connectivity and Peripheral Support. The terminal includes a range of connectivity options, such as Wi-Fi (2.4G/5GHz) and Bluetooth (supporting BLE), ensuring reliable and fast communication. It also features multiple USB ports, a LAN port, and additional peripherals for seamless integration with various payment and verification tools.
  • Built-In Printer and Barcode Scanner. The K2 Mini includes a high-speed thermal printer, supporting both 58mm and 80mm paper rolls, ideal for generating receipts quickly. An integrated barcode scanner allows for 1D and 2D barcode and QR code scanning, enhancing its utility for payment processing and product scanning.
  • Face Recognition Capabilities. For advanced user verification, the terminal supports facial recognition through a 3D structured light camera, which can be used for secure payments and membership verification.
  • Powerful Hardware. Running on either a Qualcomm Snapdragon octa-core or Rockchip quad-core processor, with 2GB RAM and 16GB ROM (expandable via MicroSD), the K2 Mini offers robust performance for handling complex tasks efficiently.

The Sunmi K2 Mini is a comprehensive solution for companies looking to create kiosk app. With Android kiosk mode and customizability, the Sunmi K2 Mini offers a reliable, self-service experience for businesses that need to streamline customer interactions in high-traffic settings.

Comparison of Worldline Valina EP2 and SUNMI FT2 Terminals

Let’s compare both terminals to better understand their possible real-world applications.

Feature

Worldline Valina EP2

Sunmi K2 Mini

OS Version

Android (KitKat)

Sunmi OS (Android-based, based on Android 7.1)

Processor

ARM Cortex A9 (600 MHz)

Qualcomm Snapdragon Octa-core or Rockchip Quad-core

Memory

1GB RAM, 4GB Flash

2GB RAM, 16GB ROM (expandable via MicroSD)

Display

3.5” LCD (320x480 pixels

15.6" Full HD, multi-touch screen

Card Readers

Chip, Magstripe, Contactless NFC

Barcode, QR code, and Face-ID

Security Compliance

PCI PTS 4.x, P2PE, ARM TrustZone

App Store management, canary deployment, and kiosk mode via Sunmi OS

Connectivity

Ethernet, USB, RS232

Wi-Fi (2.4G/5GHz), Bluetooth (including BLE)

Physical Durability

Impact- and scratch-resistant (IK09, IP65 certified)

Suitable for high-traffic indoor environments

POS Software Integration

Optimized for payment request processing

Focused on custom kiosk app development for tailored customer experiences

Target Use Case

Self-service kiosks, vending machines, EV charging networks, parking lots

Retail, hospitality, and self-service applications

Unique Feature

Multimedia support with audio-video playback

High-speed thermal printer, face recognition, and large HD display

📌 The comparison between the Worldline Valina EP2 and Sunmi K2 Mini highlights their unique strengths for various self-service applications, particularly in the context of kiosk development software.

Let’s recap this section:

  1. Android payment terminals are versatile devices that enhance transaction efficiency across diverse industries, offering robust features like rugged hardware, security compliance, and seamless integration with enterprise systems.
  2. The types of terminals — ranging from kiosks and Smart POS to SoftPOS and ChromeOS solutions — cater to various business needs.
  3. Key benefits of utilizing Android kiosk mode include improved data security, streamlined user interactions, centralized control, and enhanced operational efficiency.
  4. Real-world examples like the Worldline Valina EP2 and Sunmi K2 Mini showcase the effectiveness of these terminals in delivering secure and engaging customer experiences, making them ideal for modern payment solutions.

⚙️ Understanding the Requirements for an Android Kiosk App Development

Now, let’s discuss the main requirements for building Android kiosk mode app. Creating a seamless user experience for a kiosk app isn’t just about functionality but overcoming unique hardware challenges.

In our recent collaboration with Milence, we worked on kiosk software development for their EV charging payment terminals, addressing the constraints of compact screens and limited color reproduction. Our Android and iOS developer, Artem Manakov, shares insights on how thoughtful design and smart solutions turned these limitations into opportunities.

Android-Based Payment Terminal Constraints

When developing kiosk mode applications in Android, especially for EV truck charging services, it's crucial to consider the limitations posed by the hardware of payment terminals.

An example of the usage of the Milence payment terminal app

Milence’s EV charging infrastructure utilizes Android-based payment terminal apps to enhance customer satisfaction (image by Stormotion)

Two key constraints affect both the visual design and user experience.

  1. Small Display Size. Payment terminals for EV charging infrastructure usually have small screens compared to smartphones, necessitating a minimalist and user-friendly design. Simplified layouts with large, touch-friendly buttons for key actions such as "Start," "End," “Continue” or "Help" are essential. Clear, readable text with dynamic sizing ensures that critical information, like charging status or payment confirmation, remains legible. The interface should be streamlined to guide users through the process with minimal distractions.

Tip: Always conduct user testing to gather feedback on the interface's usability and ensure that the design meets their needs effectively.

  1. Limited Color Reproduction. Payment terminals for EV charging infrastructure usually have restricted color capabilities, impacting the display of user interface elements. High-contrast color schemes, such as dark text on light backgrounds, improve readability in various lighting conditions. A simple color palette should be chosen, using distinct colors like green for success and red for errors. This helps ensure that important alerts and statuses are communicated.

Tip: Test your color choices in different lighting environments to ensure they are effective and easy to read in all scenarios, such as bright sunlight or low-light conditions.

Core App Functionality

The core features of Milence’s Android payment terminal application development focus on simplifying the charging process for EV truck drivers.

Artem Manakov, Mobile Developer @ Stormotion

Designing a core functionality for Android payment terminal application was all about ensuring secure, fast, and user-friendly services. We structured the flow to pass charging information to the app automatically, making it as seamless as possible for the drivers.

Artem Manakov, Mobile Developer @ Stormotion

Let’s discuss its core functionality!

  1. Payment Processing. The kiosk app supports payment systems, allowing users to pay using debit or credit cards. Pre-authorization ensures that the payment method is valid before starting the charging session. Secure payment handling is critical, ensuring that sensitive customer data is safe. The payment flow is designed to be seamless, automatically passing charging information to the station after successful payment.

Tip: Implement robust logging of payment processes to monitor and troubleshoot any payment issues that may arise, enhancing user confidence in the system. For instance, successful EV charging apps rely on seamless payment gateway integration in mobile application to ensure a smooth and secure transaction experience.

  1. Monitoring Charging Status. Drivers need real-time updates on their charging session, including metrics such as energy consumption, battery state of charge, and charging duration. The app should display these updates clearly, allowing drivers to monitor their sessions and plan their schedules effectively.

Tip: Include visual indicators (like progress bars) for charging status to provide drivers with an intuitive understanding of how much charging is left, improving their overall experience.

  1. Viewing Statistics. Detailed session statistics, such as total energy consumed, charging time, and final costs, are presented at the end of each session. Drivers can retrieve their receipts via QR codes, allowing for easy cost tracking and reporting.

Tip: Consider adding a summary of the charging session, so drivers can quickly reference their activity and expenses, enhancing user engagement.

  1. Contacting Support. The app integrates multiple support options, including a hotline and FAQs, to help users resolve any issues. Multi-language support ensures accessibility for drivers across Europe, while clear error and success screens guide users through any difficulties.

Tip: Implement a live support option to provide immediate assistance, making the user experience smoother and more responsive to driver needs.

Security Considerations

Ensuring robust security is at the core of how to make a kiosk app for the Android payment terminal. Let’s discuss the essential security measures we implemented to ensure smooth and reliable EV charging services.

  1. Integration with Third-Party Systems. The Milence app integrates with third-party systems, namely the native payment app and Milance API key to ensure seamless service delivery. This includes connecting to the Milence API for managing sessions and authorizing payments, and a third-party payment apps for processing transactions. Additionally, robust error handling is necessary to prevent crashes or vulnerabilities during communication failures, ensuring the app remains stable without exposing sensitive system details.

Tip: Regularly review and update third-party integrations to address potential security vulnerabilities and ensure compliance with evolving security standards.

  1. Passing Non-Disturbance Testing (NDT). Before deployment, the smart kiosk application must pass Non-Disturbance Testing (NDT) to confirm its stability and security. NDT ensures that the app functions reliably under various conditions without compromising security. This includes verifying the application's compatibility with external services, such as the payment app and Milence APIs, and ensuring that it handles errors gracefully.

Tip: Schedule NDT at various stages of development to identify and resolve potential issues early, saving time and resources before final deployment.

Our kiosk software developers maintained high standards with 81% test coverage and top SonarCloud ratings in Reliability, Security, and Maintainability, while also passing the terminal vendor's NDT and meeting Milence’s security guidelines.

  1. Maintaining Financial Security. Security in kiosk applications is as critical as in other financial technology solutions, such as how to create online banking website. The Android-based kiosk app should use pre-authorization to secure payments before charging begins and encryption techniques like tokenization to protect sensitive data. It also ensures that error messages are generic to prevent exposing system vulnerabilities.

Tip: Regularly conduct security audits and penetration testing to identify and mitigate potential vulnerabilities, ensuring that financial data remains secure against evolving threats.

In summary, to create your own kiosk app for Android payment terminals, it's essential to navigate specific hardware constraints while prioritizing customer experience and security.

Through our collaboration with Milence, we demonstrated that thoughtful design and strategic problem-solving can transform challenges into opportunities, ultimately paving the way for a reliable and user-friendly kiosk application.

⚒️ Kiosk Application Development Process

Building specialized Android kiosk apps for payment terminals requires more than just technical know-how; it demands a deep understanding of the industry’s unique challenges.

For Milence, a leading European company in EV charging infrastructure, our goal was to build kiosk application that streamlined the charging experience for EV truck drivers — providing them with a reliable, user-friendly interface on compact Android terminals.

With the EV market growing at a staggering pace — projected to reach a value of $257 billion by 2032 (according to the Fortune Business Insights report) — reliable and accessible charging infrastructure is crucial to sustaining this momentum.

Project Kickoff

Partnering with Stormotion, an experienced EV charging app development company, was crucial for meeting Milence’s objectives and ensuring a reliable user experience.

When Milence approached us to develop a kiosk app for their Android payment terminals, we knew that building a seamless user experience would mean navigating specific constraints and collaborating closely with the client from day one. Milence had a clear objective: to create a secure, intuitive app allowing EV truck drivers to manage charging sessions, view essential statistics, and reach support when needed.

Uliana Veretko, PM @ Stormotion

Our first step was a series of in-depth discussions with Milence to define the app’s requirements. Milence provided wireframes for each screen, giving our team a clear vision of the app’s flow and user interactions. Having these blueprints upfront was invaluable, as it helped us map out critical features and anticipate potential challenges in advance.

With security and ease of use as top priorities, our team knew the app’s quality and precision had to meet Milence’s high standards.

Uliana Veretko, PM @ Stormotion

As with all our IoT projects, our Project Manager, Uliana Veretko, requested the Android payment device and two test payment cards (Visa and MasterCard) to develop payment terminals app and conduct real-world testing. This allowed us to create, iterate, and refine the app directly on the device, ensuring it functioned reliably in a real-world environment.

Over the next 43 weeks, our five-person team — comprising a Project Manager, two Android Developers, a UX/UI Designer, and a QA Engineer — dedicated themselves to delivering an app that was both robust and highly user-focused.

Looking to develop a custom Android kiosk application for your business needs? Contact us to discuss how our development services can help you build a scalable, secure, and user-friendly app.

Tech Stack Choices for Kiosk App Development on Payment Terminals

Challenge #1: Finding the right balance between performance and security was crucial for developing a responsive Android kiosk app tailored to EV charging services.

Choosing the right technology stack is pivotal for a payment terminal application developer to create a secure and responsive Android payment app, especially one tailored to EV charging services.

Our tech stack enabled real-time interactions with charging stations, secure payment processing, and seamless third-party integrations while maintaining a smooth user experience on Android hardware.

Tech Stack

Application

Kotlin

Kotlin was chosen for its concise syntax and safety features, enhancing performance and minimizing common programming errors. Kotlin’s expressiveness allowed us to build a more secure and efficient Android application compared to Java, making it an ideal fit for the Milence project.

User Interface (XML)

XML layouts were employed to design the UI, ensuring compatibility with the smaller display of the payment terminal. This approach allowed us to create a structured, responsive design that adapted seamlessly to the terminal’s unique display requirements.

Backend Communication (REST APIs)

The app’s communication with external services relied on REST APIs, secured with HTTPS and TLS encryption. This ensured that sensitive information was well-protected, while error-handling mechanisms provided stability even in cases of weak network connections.

Payment APIs

For secure payment handling services, our kiosk app developer used the payment SDK along with Milence’s API. The SDK managed card transactions, while the terminal API coordinated charging sessions, activating them upon successful payment authorization.n

Error Tracking (Sentry)

To maintain optimal performance, we integrated Sentry for error tracking. This tool automatically captured errors and provided detailed contextual insights, such as stack traces and user actions, which expedited debugging and improved reliability.

Azure DevOps

CI/CD (Continuous Integration and Deployment) were streamlined through Azure DevOps. This setup allowed us to implement automated testing, version control, and rapid updates, ensuring a stable and continually improving Android application.

📌 Starting with a well-defined project kickoff, our team was able to identify critical challenges and set a clear roadmap for how to create a kiosk application. The tech stack choice provided a strong foundation, enabling us to deliver a robust solution for both customers and providers in the rapidly growing EV sector.

🧩 Integration of Key Features into the Kiosk Application

Challenge #2: Designing features for a small display while ensuring quick responsiveness and secure interactions created a unique challenge requiring careful consideration of user experience and hardware limitations.

For businesses looking to integrate custom features and improve customer experience, mobile app development services offer tailored solutions. To provide drivers with a seamless charging experience, Milence’s app needed to integrate features that made navigation intuitive and efficient on compact payment terminals. Each feature had to balance usability and functionality, from connector selection and session monitoring to localization across multiple languages.

Here’s a closer look at how we approached Android kiosk software development to develop the app’s core features, overcoming these challenges and enhancing the overall user experience.

List of Connectors

The "List of connectors" feature allows drivers to view all available charging options with clear visual indicators for each connector’s type and status (e.g., Available, Connected, Charging, Reserved, Unavailable).

Once the driver clicks “Continue” on the welcome screen, an API request retrieves the charging station details. If the API requests succeed, the driver can see all connectors and make an informed choice; if it fails, a failure screen appears. This feature minimizes errors and enhances usability by ensuring that drivers know which connectors are ready to use.

Here is the code where we get the list of connectors:

Click Charging Connector

The "Clicking a Connector" feature, integral to our Android kiosk application development, lets drivers select the appropriate connector for charging by showing all available options. Different actions occur based on the selected connector’s status:

  • Available: Prompts the user to plug in.
  • Connected: Displays session details.
  • Charging: Shows the session overview.
  • Reserved or Unavailable: Shows an error screen with a “back” button.

This feature ensures that drivers can easily initiate charging sessions by identifying the right connector.

When we choose the connector, we call this function:

Check the Session Information

The "Check the Session Information" feature provides drivers with real-time updates on their active charging sessions directly on the Android-based payment terminal. By selecting the icon for the connected charging session, users can easily monitor key metrics such as battery status, charging power, and remaining time.

As part of our efforts to build kiosk app functionality, session information displays on the screen and refreshes regularly to keep users informed at every stage.

An example of the Milence payment terminal app design featuring charging windows

Milence’s payment terminal app allows drivers to select a connector and monitor the charging status (image by Stormotion)

Payment Tap Screens

The "Payment Tap Screens" feature initiates a pre-authorization process to secure funds for the upcoming session. A reservation amount displays on the screen along with a card tap icon, allowing drivers to pre-authorize payment securely through the terminal. If successful, the user sees a confirmation screen; if unsuccessful, an error screen appears, keeping the driver informed of payment status every step of the way.

Localization

The “Localization” feature supports multiple languages, enabling drivers across different regions to navigate the interface with ease. This feature enhances accessibility by offering options in English, German, French, Dutch, Romanian, Polish, Spanish, Russian, and Italian.

A default language selection is set to English, but localization requires extra care to ensure translations fit within the UI constraints and are displayed correctly across languages. We’ll talk about the design constraints in the next section.

An example of the Milence kiosk app featuring localization options and QR code reader screens

Milence’s app allows drivers to choose their preferred language and monitor the charging session via smartphone (image by Stormotion)

The integration of these key features showcases the user-first approach on which Milence’s app was built, highlighting how to create a kiosk application that prioritizes user experience and high-quality services.

By tailoring each feature to meet the practical needs of EV drivers, the app enhances the charging experience, making it more intuitive and accessible.
Each of these features plays a vital role in creating a streamlined process, allowing users to easily navigate, start sessions, and monitor their charging progress with confidence.

🎨 Kiosk Application Design Considerations

Challenge #3: Limited color options and small screen space required a straightforward UX/UI design with large, intuitive buttons and high-contrast colors for readability in various lighting conditions.

Iryna Ponomarenko, UX/UI Designer @ Stormotion

Creating an intuitive design on a compact, low-resolution terminal screen requires careful consideration of user experience and interface constraints. In Milence’s app, our design process focused on making the app both readable and accessible, ensuring a seamless user experience across diverse languages and display limitations.

Iryna Ponomarenko, UX/UI Designer @ Stormotion

Here’s how our UI/UX designer, Iryna Ponomarenko, tackled the unique design challenges.

UX/UI Challenges

The terminal’s small screen size presented one of the biggest design challenges when we set out to build kiosk application. Our company needed to adjust element sizes, font styles, and layouts to maintain readability, even at a viewing distance of about half a meter.

Additionally, the terminal’s low-contrast display matrix and limited color reproduction meant that some shades weren’t visible or sufficiently distinct. We approached this by testing various color schemes and contrast levels directly on the terminal, optimizing the final design to ensure each element remained clear and visible under different lighting conditions.

An example of Milence’s charging sessions windows

The Milence’s design was developed with approaching all Android-based payment terminal constraints (image by Stormotion)

Localization

Localizing the app for multiple languages — including those with longer phrases and non-Latin scripts — introduced further challenges. To avoid breaking the layout, we adapted font sizes and rephrased certain terms for compactness.

Additionally, customizing the Cyrillic font to fit the terminal’s display properly was essential to create kiosk app that blended seamlessly into the interface. This adaptability ensured that the Android app maintained its readability and functionality across all supported languages.

The outcome of our UI/UX efforts is a visually accessible, multilingual app specifically designed to meet the unique constraints of EV charging terminals.

📝 Agile Development for Kiosk Application

In a project as dynamic as payment terminal application development, the flexibility and adaptability of both companies, Stomotion and Milence, are key. Leveraging Agile methodology allowed our team to move forward with unblocked items, ensuring that development continued efficiently despite these obstacles.

Here’s how Agile and rigorous testing practices enabled us to overcome evolving needs and build a robust, reliable app.

Iterative Development

Challenge #4: Navigating dependencies on unavailable resources, such as critical protocols and backend support, threatened to stall the project’s progress.

The absence of a necessary communication protocol hindered our app's functionality, while delayed backend dependencies risked halting progress. By utilizing an Agile approach, our Android kiosk software developers focused on unblocked tasks and adapted the project scope, allowing us to maintain productivity until all resources were available.

This experience taught us three important lessons:

  1. Buffering for Dependencies. Adding time for unforeseen delays in areas like protocol provisioning, backend readiness, and hardware access can be invaluable for maintaining project timelines.
  2. Aligning Corporate Expectations. Our client’s vendor, a large enterprise, operated with slower, less responsive processes than Milence anticipated. The difference in corporate pace can create bottlenecks, making it essential to plan accordingly.
  3. Early Technical Discovery. Significant project decisions were made before the hardware characteristics were fully disclosed, which impacted security and app design. Conducting technical discoveries upfront helps avoid unforeseen issues later, paving the way to successfully build a kiosk application for the Android payment terminal.

Quality Assurance Focus

Challenge #5: QA testing posed significant hurdles, particularly for features requiring real-time data synchronization with Milence’s backend systems.

Ostap Shtypuk, QA Engineer @ Stormotion

Our QA process involved comprehensive testing across multiple scenarios, including prolonged idle times and internet outages.

Ostap Shtypuk, QA Engineer @ Stormotion

While the client’s backend developer adjusted values, our QA Engineer, Ostap Shtypuk, conducted real-time testing to ensure consistent feature performance.

This process included:

  1. Security and Coverage Testing: Verifying compliance with security protocols to protect sensitive information.
  2. Localization Testing: Given the terminal’s compact Android 4.4 display, we tested the display of information in multiple languages, adapting font sizes and shortening phrases as needed to fit the screen.
  3. Interruption Testing: By simulating internet outages, we ensured the app’s stability and responsiveness under network disruptions, enabling smooth recovery when connections resumed.

Agile development allowed us to remain flexible and productive in the face of unexpected challenges, enabling us to effectively develop payment terminals app. By testing the app’s services and functionality in a variety of real-world scenarios, we ensured that the Milence app was not only adaptable but also highly reliable.

🔗 Ensuring Scalability and Maintenance of the Kiosk App

Challenge #6: Integrating with the terminal vendor’s native payment system required strict adherence to security protocols while ensuring scalability for future growth and updates.

Maintaining high standards for quality, security, and scalability is paramount when considering how to make an EV charging app that effectively supports essential EV charging services. From kiosks software development through deployment, every aspect of the app was built with long-term sustainability in mind, ensuring it can evolve alongside both technology and user needs.

Here’s how we ensured a robust foundation for Milence’s app, ready to support future growth and ongoing maintenance.

High Standards

Integrating with the terminal vendor’s native payment system demanded strict adherence to security protocols. Ensuring compliance with Milence’s security guidelines was critical to protect users’ financial data while maintaining smooth functionality.

To maintain high standards, our Android kiosk app developer implemented continuous code quality monitoring using SonarCloud, a tool that provides real-time feedback on code integrity, security, and maintainability.

This allowed us to detect potential issues early, ensuring compliance with strict security guidelines and reducing the risk of vulnerabilities. SonarCloud’s automated insights helped us maintain a clean, reliable codebase, which is crucial for an app that handles sensitive transactions and user interactions.

Post-Launch Readiness

Our team designed the app with scalability at its core, enabling it to accommodate future updates and growing user demands. We employed a modular development approach, which makes it easier to introduce new features, apply updates, or adapt to emerging standards without disrupting existing functionalities.

This flexibility in design ensures that the app will remain responsive and reliable as Milence expands its charging network, empowering them to meet evolving industry needs with minimal technical disruptions.

By focusing on quality from the outset, we utilized kiosk development software to build a scalable, maintainable app that aligns with Milence’s long-term objectives.

🗂️ How Stormotion Helped Milence?

Our collaboration with Milence resulted in a robust, user-friendly Android app that streamlines the EV charging experience for drivers of heavy-duty trucks. Through focused design adaptability, agile development, and rigorous testing, we delivered a secure, scalable solution tailored to the constraints of payment terminals.

The kiosk app’s intuitive interface, real-time session tracking, and reliable pre-authorization process now support Milence’s mission to provide accessible, efficient charging infrastructure across Europe.

With scalability built into the app, Milence can easily adapt to future updates and features as they continue to expand. Our partnership in how to make a kiosk app enabled the company to bridge the gap between hardware limitations and user expectations, delivering an app that not only meets their needs today but is also prepared for the future.

The upcoming video feedback from Milence will highlight the project's impact and success, showcasing the value of this collaboration.

💡 Takeaways

Android payment terminals are integral across numerous industries due to their robust transaction management, adaptability, and seamless integration capabilities.

Developing kiosk mode applications in Android demands balancing hardware constraints with services, functionality, security, and user experience. Here are the essential lessons from our case-based guide:

  • Optimize small displays with minimal layouts, touch-friendly elements, and high-contrast color schemes for readability.
  • Use encryption, pre-authorization, and generic error handling to protect financial data and maintain trust.
  • Provide session updates, statistics, and multi-language support to enhance accessibility for diverse users.
  • Connect with third-party APIs and conduct thorough testing, ensuring smooth operation and error resilience.

These strategies are key for secure, reliable, and user-friendly kiosk app development in any Android-based terminal environment.

Ready to take the next step in developing your kiosk application? Whether you need help with payment integration, security features, or custom app design, contact us today to discuss your project and how we can bring your vision to life.

Contact us

Questions you may have

Take a look at how we solve challenges to meet project requirements

What hardware requirements should I consider for a kiosk app on Android terminals?

Consider a rugged, impact-resistant build with IP65 certification for dust and water resistance for an Android device used as a kiosk. Ensure NFC compatibility, sufficient processing power for smooth performance, a responsive multi-touch touchscreen, and reliable connectivity options like Wi-Fi and Bluetooth. Having these Android applications ready for kiosk deployment on durable hardware ensures reliability in various environments.

What are the main security measures for kiosk apps handling payments?

For secure payment processing, integrate P2PE and PCI PTS compliance. Utilize tokenization for sensitive data, limit app access through Android kiosk software, and apply pre-authorization for transactions to secure funds before the service begins, preventing data breaches. Our payment terminal application developer always implements payment software designed to handle sensitive information.

How can I ensure my kiosk app is compliant with industry security standards?

Maintaining compliance by adhering to PCI standards, performing regular security audits, and updating third-party integrations for potential vulnerabilities. Software development practices focused on encryption and tokenization ensure that all data meets industry security requirements. This allows app developers to stay up-to-date with evolving standards, especially in sectors relying on high security.

What types of payment methods can be integrated into an Android kiosk app?

Android apps for kiosks can support NFC payments, credit and debit cards, digital wallets, and QR code-based transactions. Flexible payment solutions enable the integration of smart payment options suited to customer preferences and device compatibility.

How can the app design be optimized for small screen displays in kiosks?

During kiosk application development for Android gadgets, you can simplify the interface by using a minimalistic layout with large, touch-friendly buttons and high-contrast text for readability. Dropdown menus and clear icons enhance navigation, ensuring an intuitive experience on small screens.

What is involved in testing a kiosk app for stability and usability?

Stability testing includes running the kiosk app under various network conditions, conducting Non-Disturbance Testing, and assessing compatibility with external systems. Usability testing gathers feedback on the user experience, particularly for intuitive application development suited to diverse customer needs. These examples help demonstrate a strong commitment to usability and stability.

How does an Android-based kiosk app handle updates and maintenance?

Android kiosk apps can handle updates via centralized remote management software, allowing a payment terminal application developer to deploy updates without manual intervention. Regular monitoring and scheduled maintenance keep the custom kiosk software up to date with the latest features and security patches.

What are the options for real-time monitoring in a kiosk payment app?

Real-time monitoring options include an admin console for centralized control, where performance data and issues are accessible. Custom kiosk solutions may also integrate logging software for continuous performance tracking, allowing quick responses to technical issues. This approach supports digital transformation by ensuring a seamless and resilient user experience.

How can multi-language support be implemented in a kiosk app?

Multi-language support involves incorporating localization for key app components and using dropdown menus for language selection. This allows users to select their preferred language, enhancing accessibility for a wider audience in international environments, which is essential in today’s diverse market where app development must consider global reach.

Read also

How can we help you?

Our clients say

Stormotion client Max Scheidlock, Product Manager from [object Object]

They understand what it takes to be a great service provider, prioritizing our success over money. I think their approach to addressing ambiguity is their biggest strength. It definitely sets them apart from other remote developers.

Max Scheidlock, Product Manager

HUMANOO