PayBuddy is a Point of Sale (POS) app which demonstrates the use of EMV and ISO 8583 to enable payments using the Nexgo Android SDK. Work in Progress 🚧🚧🚧
- Check card balance
- Card payment
- Automatic payment reversal for failed transactions
- Receipt printing
- Kotlin
- Kotlin Coroutines for network calls and other intensive operations
- Kotlin Flows for view-viewModel interactions
- Navigation Component for Navigation
- Dagger-Hilt for Dependency Injection
- Nexgo Android SDK to interface with the POS terminal kernel and for EMV operations
- JPOS for ISO operations
- ISO 8583 library for constructing and deconstructing ISO message sent to NIBSS
- Sockets for network operations
- OkHttp to assist with socket response parsing
- Bouncy Castle for cryptographic operations
- Timber for logging
- Shared preferences for storing simple data types