Initialise
Prerequisites
- Should be registered as a Yoco merchant via the Yoco website
- Received a Yoco card terminal [Go]
- Integrators: Requested a SDK Integration Key via SDK Integration Application form to obtain a
secret
key - minSDKVersion:
- targetSdkVersion:
- Requires Java 11
Project Configuration
You will need to add the following permissions, which are required by the Yoco SDK and should be aded to your Manifest.xml
Permission | Description |
---|---|
android.permission.BLUETOOTH_ADMIN | Required for Terminal state changes |
android.permission.BLUETOOTH | Required for connecting to terminals |
android.permission.BLUETOOTH_CONNECT | Required for connecting to terminals |
android.permission.BLUETOOTH_SCAN | Required for scanning for terminals |
android.permission.ACCESS_FINE_LOCATION | Required for security of transactions |
android.permission.ACCESS_COARSE_LOCATION | Required for security of transactions |
android.permission.ACCESS_WIFI_STATE | Required for sending/receiving data from Yoco servers |
android.permission.ACCESS_NETWORK_STATE | Required for sending/receiving data from Yoco servers |
android.permission.INTERNET | Required for sending/receiving data from Yoco servers |
android.permission.ACCESS_WAKE_LOCK | Required for processing of Transactions |
android.permission.READ_PHONE_STATE (optional) | Required for network diagnostics |
Initialising the YocoSDK
Initialise the YocoSDK
in your Application subclass to allow SDK to setup everything it needs to perform its tasks.
import com.yoco.payments.sdk.YocoSDK
class SampleApplication : Application() {
override fun onCreate() {
super.onCreate()
initialiseSdk()
}
fun initialiseSdk() {
// Initialises Yoco Payment UI SDK
YocoSDK.initialise(
context = applicationContext
)
}
}
danger
The YocoSDK
should ONLY be initialised once per application lifecycle.