PAX A920 Terminal POS System for Raffle Sales
Project Solution
INNERLUXES enhanced a raffle sales system, seamlessly integrated with PAX A920 terminals using Kotlin and Android SDKs — ensuring secure payments, efficient ticketing, and data integrity, with user-friendly features and advanced functionality.
Overview
The Client works in the events industry and has an application that serves as a raffle ticket point-of-sale system for sporting events, where 50% of sales go to the winners and the other half to charity. The application sells raffle tickets, takes payments via cash or credit card, and prints tickets, and the Client wanted it developed for PAX A920 terminal devices. The terminal sells tickets and processes payments; the app uses PaySafe payment processors for credit cards, and the PAX terminal prints the receipt of tickets sold — marking the ticket number with all entries bought by the customer and scanning cards using IDScan or a third-party open-source library.
The PAX A920 terminal is registered on a web portal by the administrator for a raffle event. The raffle seller or volunteer logs into the Client's app on the terminal and sells tickets with cash or credit-card payment; the PAX SDK and PaySafe handle card payments and receipt printing. An admin can log in to close out the terminal and send a logout message to the server, indicating the terminal is ready for another raffle.
The Approach
- Implemented an open-source library to read the required information on a driver's license QR code.
- Developed the ability to store sold tickets in the app's local database and the device's SD-card storage directory to recover data if the terminal is dropped or goes offline.
- Implemented a software-integrity check screen that validates the software hash received from the server against the app-generated SHA-1 hash value.
- Integrated a scan feature for PDF417 QR codes such as driver's licenses and ticket QR codes.
How It Works
On launch, the POS application presents three options — Login (access the login page), Recover (retrieve SD-card data from a dropped terminal and upload it to the server), and Scan (navigate to the driver's-license scan screen).
- Login module: user validation via a login web API; sellers must update their default password after the first login.
- Menu options: Sell Tickets (multiple price levels from the server), Raffle Info (details of the logged-in raffle), and Upload Sales (reconciled sales data to the server).
- Admin control: admins control terminal settings and customize the ticket-selling workflow, including security measures.
- Sales options: dynamic pricing to encourage larger selections, cash or credit-card purchasing, remaining-ticket counts, and batch ticket issuance from the server.
- Player information: captures details for tickets, sent to the server or stored locally for later reconciliation.
The system emphasizes privacy by collecting only essential information for ticket sales. Additional features include the software-integrity check at launch, an admin closeout and scan-upload screen, and a continuous login prompt at each launch. The terminal cannot void tickets — that function is managed separately by the raffle manager online. Player verification is available via phone number with optional driver's-license scans, and the app includes a leaderboard of top sellers based on sales data and a jackpot web API for retrieving current jackpot information.
The Impact
- A robust POS solution running seamlessly on PAX A920 terminal devices for event organizers and raffle sellers.
- Secure payment processing and QR-code scanning with software-integrity checks.
- Offline resilience through SD-card storage and recovery.
- Streamlined raffle sales that support charitable giving.
Technologies and Tools
Kotlin, Android SDK, HandPoint Android SDK, Android PAX SDK, Retrofit, PaySafe, IDScan / PDF417 scanning, SHA-1 integrity checks.