FAQS
This section provides quick answers to common questions about integration, usage, and troubleshooting across the EdfaPay platform.
Integration & Setup
What are the minimum hardware and software requirements?
Android 6.0 (API 23) or higher is required, along with an NFC-enabled device.
The SDK requires Kotlin 1.9.22 and permissions for NFC, location, internet, and network state.
Can I use any package name?
Yes, any package name can be used. However, restrictions may apply depending on your merchant agreement.
What permissions are required?
The SDK requires NFC, location (fine & coarse), internet, and network state permissions.
SDK & Authentication
What is the difference between token login and credential login?
Token login allows background authentication using a pre-generated token without UI.
Credential login provides a built-in login screen and handles OTP verification.
Does the SDK support multiple accounts?
Yes, multiple sessions are supported. You can retrieve sessions using:
EdfaPayPlugin.getSessionList()
What is TRSM?
TRSM is a secure terminal identifier linking your device to terminal configuration.
Transactions
What are FlowType options?
DETAIL → Full summary
STATUS → Short confirmation
IMMEDIATE → Minimal UI
What is the difference between Reverse and Void?
Reverse handles technical failures.
Void handles business cancellations before settlement.
What is CVM limit?
Defines when PIN is required and is configured from the server.
Security & NFC
Why is location required?
Required for PCI-DSS compliance to prevent fraud.
Is internet required?
Yes, for security checks like Play Integrity and SafetyNet.
How is card data protected?
Card data is encrypted and never stored.
What happens if the card disconnects?
Hold the card steady for 2 seconds and retry.
Merchant Usage
How do I enable NFC?
Settings → Connected Devices → NFC → Enable
Where should the card be tapped?
Back of device near the camera.
Is entering PIN safe?
Yes, it uses secure encrypted input.
Payments & Operations
What cards are supported?
Visa, Mastercard, American Express, Mada.
Mobile wallets include Apple Pay, Google Pay, Samsung Pay.
How do I know a payment is successful?
A green “Approved” screen appears with authorization code.
How can I send a receipt?
A QR code is shown for download or sharing.
Troubleshooting
Why is the app showing "Location Required"?
Enable location permission in app settings.
Why was the card declined?
Possible reasons: insufficient funds, expired card, incorrect PIN, bank restrictions.
What is reconciliation?
Daily process to settle transactions.
Platform & Integration
Can I use test cards?
Yes, in sandbox mode.
Can I use real cards in test mode?
No, only test cards are supported.
Is Apple Pay available in test mode?
No, only in production.
Can I use localhost for callback URL?
No, it must be public.
Can I use HTTP instead of HTTPS?
No, HTTPS is required.
Can order IDs be reused?
No, must be unique.
How do I validate callbacks?
Validate using the hash parameter.
Can I customize the payment page?
Yes, using S2S APIs.
Updated 2 days ago