Skip to main content

Migration guide

Migration to 8.0.0​

  • The minimum supported React Native version is 0.74 due to the requirements of compileSdk 34 and classpath("org.jetbrains.kotlin:kotlin-gradle-plugin"). Please upgrade your project to React Native version 0.74 or higher to ensure compatibility.

  • Update Android dependency in you app's build.gradle:

  dependencies {
- implementation 'com.incode.sdk:core-light:2.6.3'
+ implementation 'com.incode.sdk:core-light:2.6.4'
}
  • Update compileSdk version to 34:
  android {
- compileSdk 33
+ compileSdk 34
}
  • Expo integration. Update plugins field in app.json:
 "plugins": [
[
"@incode-sdks/expo-incode-sdk-configuration",
{
- "coreLightVersion": "2.6.3"
+ "coreLightVersion": "2.6.4"
}
]
]

Migration to 6.4.0​

  • Update Android dependency in you app's build.gradle:
  dependencies {
- implementation 'com.incode.sdk:core-light:2.6.2'
+ implementation 'com.incode.sdk:core-light:2.6.3'
}
  • Expo integration. Update plugins field in app.json:
 "plugins": [
[
"@incode-sdks/expo-incode-sdk-configuration",
{
- "coreLightVersion": "2.6.2"
+ "coreLightVersion": "2.6.3"
}
]
]

Migration to 6.2.0​

  • Update Android dependency in you app's build.gradle:
  dependencies {
- implementation 'com.incode.sdk:core-light:2.6.1'
+ implementation 'com.incode.sdk:core-light:2.6.2'
}
  • Expo integration. Update plugins field in app.json:
 "plugins": [
[
"@incode-sdks/expo-incode-sdk-configuration",
{
- "coreLightVersion": "2.6.1"
+ "coreLightVersion": "2.6.2"
}
]
]

Migration to 6.1.0​

  • Expo integration. Update plugins field in app.json:
 "plugins": [
[
"@incode-sdks/expo-incode-sdk-configuration",
{
+ "coreLightVersion": "2.6.1"
}
]
]

Migration to 6.0.0​

  • Update Incode SDK dependency in package.json:
  "dependencies": {
- "react-native-incode-sdk": "https://sdk-js.s3.amazonaws.com/react-native/react-native-incode-sdk-5.6.0-nvc.tgz"
+ "@incode-sdks/react-native-incode-sdk": "^6.0.0"
}
  • Update Podfile:

If RN >= 0.69 remove this line:

-   pod 'react-native-incode-sdk', :path => '../node_modules/react-native-incode-sdk/'

If RN < 0.69 update this line:

-    pod 'react-native-incode-sdk', :path => '../node_modules/react-native-incode-sdk/'
+ pod 'react-native-incode-sdk', :path => '../node_modules/@incode-sdks/react-native-incode-sdk/'
  • Update App.js:
-   import IncodeSdk from 'react-native-incode-sdk';
+ import IncodeSdk from '@incode-sdks/react-native-incode-sdk';
  • Update Android dependency in you app's build.gradle:
  dependencies {
- implementation 'com.incode.sdk:core-light:2.5.1
+ implementation 'com.incode.sdk:core-light:2.6.1'
}

Migration to 5.6.1​

  • Update Android dependency in you app's build.gradle:
  dependencies {
- implementation 'com.incode.sdk:core-light:2.5.0
+ implementation 'com.incode.sdk:core-light:2.5.1'
}

Migration to 5.4.0​

  • Update Android minSdkVersion in you Android projects's build.gradle:
  buildscript {
ext {
- minSdkVersion = 17
- compileSdkVersion = 31
- targetSdkVersion = 31
+ minSdkVersion = 21
+ compileSdkVersion = 21
+ targetSdkVersion = 21
}
}

Migration to 5.3.0​

  • Update Android dependency in you app's build.gradle:
  dependencies {
- implementation 'com.incode.sdk:core-light:2.3.0
+ implementation 'com.incode.sdk:core-light:2.5.0'
}

Migration to 5.2.1​

  • Update Android dependency in you app's build.gradle:
  dependencies {
- implementation 'com.incode.sdk:core-light:2.2.0
+ implementation 'com.incode.sdk:core-light:2.3.0'
}

Migration to 5.1.0​

Removed startFaceLogin parameter customerToken, specify only customerUUID.

Migration to 5.x​

  1. startOnboarding and startOnboardingSection parameter name config renamed to flowConfig.
IncodeSdk.startOnboarding({
- config: [
+ flowConfig: [
{ module: 'IdScan' },
{ module: 'SelfieScan' },
{ module: 'FaceMatch' },
],
})
IncodeSdk.startOnboardingSection({
- config: [
+ flowConfig: [
{ module: 'IdScan' },
{ module: 'SelfieScan' },
{ module: 'FaceMatch' },
],
})
  1. Added setupOnboardingSession that replaces creatingNewOnboardingSession and setOnboardingSession
- await IncodeSdk.creatingNewOnboardingSession({})
+ await IncodeSdk.setupOnboardingSession({})
- await IncodeSdk.setOnboardingSession({})
+ await IncodeSdk.setupOnboardingSession({})
  1. validationModules param of createNewOnboardingSession and setOnboardingSession is now part of setupOnboardingSession method's sessionConfig param
- await IncodeSdk.createNewOnboardingSession({
- sessionConfig: {
- ...
- },
- validationModules: ['id', 'liveness'],
+ await IncodeSdk.setupOnboardingSession({
+ sessionConfig: {
+ ...
+ validationModules: ['id', 'liveness'],
+ },
- await IncodeSdk.setOnboardingSession({
- sessionConfig: {
- ...
- },
- validationModules: ['id', 'liveness'],
+ await IncodeSdk.setupOnboardingSession({
+ sessionConfig: {
+ ...
+ validationModules: ['id', 'liveness'],
+ },

Migration to 4.5.0-nvc​

  • Update Android dependency in you app's build.gradle:
  dependencies {
- implementation 'com.incode.sdk:core-light:2.0.0
+ implementation 'com.incode.sdk:core-light:2.2.0'
}

Migration to 4.4.1-nvc​

  • In your Android app's build.gradle file set compileSdkVersion to 31 or higher.

Migration to 4.4.0-nvc​

UserScoreCompleteEvent fields are now reorganized differently:

  • Basic parsed user score results are stored in result.data
  • Full UserScore data is set as raw JSON in result.extendedUserScoreJsonData field

Migration to 4.x​

initialize method changes:

  • Removed conferenceUrl parameter method that wasn't used.
  • Removed regionCode parameter, now part of OnboardingSessionConfig object that is available as an optional parameter in startOnboarding, createOnboardingSession, and setOnboardingSession methods.

startOnboarding method changes:

  • Removed interviewId parameter, now part of sessionConfig object that is available as an optional parameter
  • Removed configurationId parameter, now part of sessionConfig object that is available as an optional parameter
  • Added optional sessionConfig parameter, OnboardingSessionConfig object where you can specify all session parameters.

createOnboardingSession method changes:

  • Removed unused verifiers parameter
  • Added optional sessionConfig parameter, OnboardingSessionConfig object where you can specify all session parameters.
  • Added validationModules parameter, where you can specify the list of validation modules used for a session.

startOnboardingSection method changes:

  • Removed interviewId parameter. Please specify it either in createOnboardingSession or setOnboardingSession via sessionConfig parameter.

Migration to 3.2.x​

How ID results were provided before 3.2.x:

const setupListeners = () => {
// returns a callback to unregister your listener, e.g. when your screen is getting unmounted
const complete = IncodeSdk.onStepCompleted;
return [
complete({
module: 'IdScan',
listener: (e) => {
console.log('ID scan result:', e.result);
},
}),
];
};

How to listen for ID results in 3.2.x:

const setupListeners = () => {
// returns a callback to unregister your listener, e.g. when your screen is getting unmounted
const complete = IncodeSdk.onStepCompleted;
return [
complete({
module: 'IdScanFront',
listener: (e) => {
console.log('ID scan front result:', e.result);
},
}),
complete({
module: 'IdScanBack',
listener: (e) => {
console.log('ID scan back result: ', e.result);
},
}),
complete({
module: 'ProcessId',
listener: (e) => {
console.log('ProcessId result: ', e.result.extendedOcrData);
},
}),
];
};

iOS Podfile changes​

Standard SDK:

Replace

pod 'react-native-incode-sdk', :path => '../node_modules/react-native-incode-sdk'

with:

pod 'react-native-incode-sdk', :path => '../node_modules/react-native-incode-sdk/ios'

Dynamic Delivery:

Replace

pod 'react-native-incode-sdk/ODR', :path => '../node_modules/react-native-incode-sdk'

with:

pod 'react-native-incode-sdk/ODR', :path => '../node_modules/react-native-incode-sdk/ios'

Migration to 3.1.x​

If you wish to keep using standard/Non-Dynamic Delivery version of the SDK on Android platform, please add this dependency in you app's build.gradle:

implementation 'com.incode.sdk:core-light:2.0.0'