EdfaPay Logo

SDK Setup & Installation

Follow this step-by-step guide to integrate the EdfaPay Soft POS SDK into your application. Covers prerequisites, repository configuration, and dependency implementation.

1

Prerequisites

Before you begin the integration, ensure your development environment meets the following requirements. The SDK requires a minimum Android SDK version to function correctly with NFC capabilities.

Android Min SDK

Version 29 (Android 10) or higher

Hardware

NFC-enabled Android device

Build Tools

Kotlin 2.0+
compileSdk 36
AGP 8.9.1+

Credentials

Auth Token or Email/Password

2

Add Maven Repository

Add the EdfaPay Maven repository so Gradle can download the SDK artifacts. Native Android declares it in settings.gradle(.kts); Flutter and React Native add it inside their app's android/ project. Each tab shows both the Kotlin DSL (.kts) and Groovy DSL (.gradle) forms — use the one matching your build files.

Loading...

Kotlin DSL vs Groovy DSL

Newer templates use the Kotlin DSL (settings.gradle.kts) with dependencyResolutionManagement; older ones use the Groovy DSL (build.gradle) with an allprojects block. Pick whichever matches your existing Android build files — don't add both.

3

Add Dependency

Add the implementation dependency to your module-level build.gradle.kts file. Ensure you are using the latest version of the SDK.

Loading...

Flavor coordinate changed in v1.0.8

The recommended native artifact is now com.edfapay:saEdfapay:1.0.8. The old com.edfapay:sa-edfapay-revamp coordinate is deprecated (still published at 1.0.8 for backward compatibility, but will be removed). For Dspread external card-reader devices use com.edfapay:saEdfapayDspread:1.0.8. Flutter and React Native pin the native dependency internally — you only set the plugin version.

Packaging Options

To avoid duplicate file conflicts during build, add the following packaging exclusions to your app/build.gradle.kts:

Loading...

ProGuard Rules

If you have minification enabled in your release build, add these rules to your proguard-rules.pro to prevent the SDK classes from being obfuscated:

Loading...
4

5-Minute Quick Start

Get up and running quickly with this minimal example. This code demonstrates the basic flow: initialize the SDK, then process a payment.

Loading...

That's it!

You've successfully integrated the SDK. For detailed configuration options, check out the Initialization guide.