Enterprise Mobile Cashier App Development for Betting Retail Networks(NDA)
FinanceA FinTech mobile app case study for cashier workflow automation: PIN operations, offline transactions, ESC/POS receipt printing, multi-region configuration, and Protobuf backend integration.

About the Project
FinTech / Betting / Gaming Industry • iOS, Android • Mobile App
A mobile app for betting shop cashiers — a cross-platform solution designed to automate cashier operations at retail locations connected to a betting platform.
The client is a betting operator with a distributed retail network across several regions. The platform provides the infrastructure for managing player balances through a PIN-based system and required reliable offline-capable tools for cashiers.
Client: betting platform (NDA)
Project geography: USA, Kazakhstan, Latin America
Delivery timeline: ~3.5 months
Status: Production
Primary system users:
- • Cashiers at betting retail locations
- • Cash collection operators
Goal
Business objective:
Automate cashier workflows at retail locations and replace paper-based processes with a digital mobile solution integrated with the bookmaker’s existing backend platform.
Project goals:
- Build a cross-platform mobile app for iOS and Android
- Implement the full PIN workflow: issuance, top-up, and redemption
- Integrate receipt printing via ESC/POS printers
- Support multi-region deployment and multilingual UI
- Implement reporting and transaction history
- Set up push notifications and an in-app auto-update system
- Ensure stable operation under unreliable internet connectivity
Expected outcome: a production-ready mobile application prepared for rollout across new regions and retail locations.
Solution
We developed a cross-platform mobile cashier application for betting shops using React Native. The app is integrated with the client’s backend through a binary Protobuf protocol and supports two operating modes, receipt printing, offline functionality, multilingual UI, and centralized reporting.
The app was optimized for high-frequency daily cashier operations and is used on both smartphones and tablets.
Core Functionality
Authentication and Access
- Username and password sign-in
- Personal cashier PIN setup
- Cashier-to-terminal assignment
PIN Operations
- PIN creation for customers
- Balance top-up
- Balance redemption
- Validation of limits and transaction amounts
Operating Modes
- Pinsale — a simplified mode focused on PIN-based operations only
- Direct — direct balance top-up without using a PIN
Reporting and Control
- Cashier transaction history for the last 24 hours
- Daily transaction reports
- Cash collection reports
- Terminal and device management
Receipt Printing
- Automatic receipt printing
- ESC/POS printer support
- Duplicate receipt protection
- Caching of printed transaction data
Additional Features
- Player bonus management
- Copying transaction data to clipboard
- Push notifications for system events
Architecture and Technical Highlights
- Cross-platform application (iOS / Android)
- MobX for state management
- Modular screen architecture
- Protobuf for backend communication
- Data caching and offline support
- Service-oriented architecture
- Support for multi-region configurations
UX/UI
- Custom UI tailored to cashier workflows
- Large controls for fast input
- Error minimization in money-related operations
- Dark mode support
- Adapted for smartphones and tablets
- Interface designed for intensive shift-based work
Security and Reliability
- Secure authentication via backend API
- PIN validation before every transaction
- Validation of minimum and maximum limits
- Terminal lock capability when required
- Protection against repeated transactions and duplicate receipts
- Offline mode support for unstable internet environments
Challenges and Complexity
Key project challenges:
- Working with a binary Protobuf API instead of REST
- Supporting multiple ESC/POS printer models
- Implementing APK auto-updates outside Google Play
- Multi-region support with different currencies, languages, and business rules
- Reliable offline operation
- Dynamic multilingual support (6+ languages)
How we solved them:
- Built abstraction layers for working with Protobuf
- Implemented a universal receipt printing layer
- Added an application auto-update system
- Designed a configuration model for regional deployments
- Implemented resilient offline logic and caching
Project Team
Development team:
- •Project Manager
- •Mobile Developer
- •Backend Developer (integration)
- •QA Engineer
Client-side team:
- •Product Owner
- •Backend team
Tech Stack
Mobile
Integrations and APIs
Data Storage
Results
Outcome:
- Production-ready mobile application
- Rolled out across 3 regions
- Used in real-world retail locations
Key metrics:
3
Deployment regions
6+
Interface languages
2
Operating modes
Business impact:
- End-to-end automation of cashier workflows
- Fewer operational errors
- Faster customer service at retail points
- Centralized reporting
- Ready for expansion into new markets
Status: the application has been deployed and is actively used in production.
Want to discuss your project?
Get in touch, and we’ll show you how we can help bring your idea to life