Android integration

Repositories, the dependency, imports, and a quick reference for every SDK method.

Setup and installation

Step 1: Configure repositories

Ensure mavenCentral() is defined in your project-level settings.gradle.kts:

dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
    }
}

Step 2: Add the dependency

dependencies {
    // Production
    implementation("io.github.blinc-technologies:blinc-pos-sdk-ui:0.1.2")
}

blinc-pos-sdk-ui pulls in blinc-pos-sdk-core transitively. Do not add core separately.

Step 3: Imports

Since 0.1.0, registerLauncher, startTransactionWithNFC, and startTransactionWithQR are Kotlin extension functions on BlincPosSdk. Their call sites look exactly as before, but each extension needs its own import:

import com.blinc.blincpos.BlincPosSdk
import com.blinc.blincpos.registerLauncher
import com.blinc.blincpos.startTransactionWithNFC
import com.blinc.blincpos.startTransactionWithQR

Utility methods

MethodDescription
registerLauncher(caller, callback)Registers the result callback. Call once in Activity.onCreate() before setContent.
ensureRegistered(context, terminalId, merchantId, paymentFacilitatorID, environment, challengeProvider)Recommended. suspend. Registers the terminal only when needed. Returns true when ready, false if the challenge provider returned null.
isInitialized(context)Returns true only when credentials are stored, hardware keys exist, and attestation is complete. ensureRegistered() checks this for you.
getNfcStatus(context)Returns NfcStatus enum.
initialize(context, terminalId, merchantId, paymentFacilitatorID, environment, challenge)Low-level primitive. Prefer ensureRegistered(). See Advanced.
clearConfiguration(context)Wipes all stored credentials and keys. After calling this, the terminal must register again before any transaction.

Next

  1. Register the terminal
  2. Take a payment
  3. Production example

Did this page help you?