EdfaPay Soft POS
Transform any Android device into a secure payment terminal. Our Soft POS enables contactless payments directly on standard smartphones and tablets, eliminating the need for dedicated hardware.
Overview
The EdfaPay Soft POS provides a streamlined interface for integrating SoftPOS capabilities into your Android applications. It handles the complexities of EMV kernels, NFC communication, and secure payment processing so you can focus on building a great payment experience. Certified for "Tap on Phone" functionality, our SDK ensures that your app meets global security standards while providing seamless integration capabilities.
Supported Platforms
Available Integrations
| Integration Type | Status |
|---|---|
| Native (Kotlin / Java) | ✅ Official SDK |
| Flutter | ✅ Official Bridge Plugin |
| React Native | ✅ Official Bridge Plugin |
| Xamarin | ✅ Official Wrapper |
System Requirements
| Requirement | Value |
|---|---|
| Minimum SDK | 29 (Android 10) |
| Compile SDK | 36 |
| Kotlin | 2.0+ |
| Hardware | NFC-enabled Android device |
| Credentials | Auth Token or Email/Password |
Features
The EdfaPay Soft POS SDK provides a comprehensive set of features for payment processing.
Contactless Payments
Accept Visa, Mastercard, Amex, Discover, and mada via NFC tap.
PCI DSS Compliant
End-to-end encryption with certificate pinning built in.
Fully Customizable UI
Theme the SDK UI to match your brand with colors, logos, and animations.
Multiple Presentation Modes
Bottom sheet, fullscreen, or centered dialog with full configuration.
Transaction History
Query and display past transactions with pagination support.
Reconciliation
Perform end-of-day settlement and retrieve reconciliation receipts.
Terminal Management
Activate, deactivate, sync, and inspect terminal configurations.
Remote Access API
Accept payment commands from external POS systems over local network.
Payment Flow
The standard payment flow through the EdfaPay Soft POS SDK follows these steps:
Initialize SDK
Authenticate with credentials and bind a terminal.
Start Payment
Call purchase() with TxnParams including amount and type.
Tap Card (NFC)
Customer taps contactless card on the device.
Process Payment
SDK encrypts and transmits card data to payment server.
Result Callback
onPaymentProcessComplete fires with status, code, and Transaction.
Receipt Display
SDK shows receipt with configurable secondary actions.
Flow Types
You can control the UI experience with FlowType: IMMEDIATE (minimal UI), STATUS (status only), or DETAIL (full receipt with action buttons — default).
Architecture
The SDK is structured as a singleton object (EdfaPayPlugin) with three sub-modules.
EdfaPayPlugin
Main entry point. Handles initialization, payments, terminal, session, history, and reconciliation.
EdfaPayPlugin.Utils
Utility functions: device ID, location services, secure storage, dialogs.
EdfaPayPlugin.Extension
Advanced low-level API: custom login, OTP, terminal registration, kernel management.
EdfaPayPlugin.RemoteChannel
Local network listener to accept commands from external POS systems.
Installation
Add the EdfaPay SDK to your Android project in just a few steps.
Quick Start
Ready to integrate? Head to the Installation guide for step-by-step installation instructions.
On this page
Downloads
Coming SoonSample apps, release bundles, and more content will be available here soon.