4.21.0 (Sep 16th, 2026)
- Added optional
minVideoLengthRequiredparameter to theVideoSelfiemodule. - Added
locationUnavailabletoIncodeSdkFlowError. - Added
storageUnavailabletoIncodeSdkFlowError. Android only. Flow APIs report it when the device cannot provide a writable images directory, so the flow now fails at start instead of losing captures later on. - On Android, the SDK reports the user-cancel tracking event as
userCanceledinstead ofuserCancelled. TheonUserCancelledcallback is unchanged. See the Migration Guide. - On Android, the Video Selfie V2 camera steps hide the close (X) button, so
showCloseButtonno longer applies to them. Other screens are unaffected. - On Android, Signature V2 reads its title and description from the new
onboard_sdk_signature_capture_titleandonboard_sdk_signature_capture_descriptionstring resources. See the Migration Guide. - Fixed a bug on iOS where a skipped, denied or unavailable location during the
Geolocationmodule ended thestartOnboarding/startOnboardingSectioncall immediately.
Working with Android SDK 5.53.0 and iOS SDK 5.49.0
4.20.0 (Aug 27th, 2026)
- Added a
setQuantityStringsmethod, used to localize plural texts on Android. setThemeandsetUXConfignow take a JSONStringinstead ofMap<String, dynamic>. Encode maps withjsonEncodebefore calling. See the Migration Guide.- Added an optional
sdkModeparameter toinit(). It accepts the same values assetSdkMode, so you can set the mode during initialization. - Added a
sendDiagnosticsDataparameter toinit(), for iOS only. Set tofalseto prevent the Incode SDK from sending diagnostic data. If omitted, the native SDK default is used (true). Ignored on Android. - Added
configErrorandinvalidInitParamscodes toIncodeSdkInitError. Initialize failures now also include a human-readablemessage;onErrorstill receives the error code. - Removed unused
waitForTutorialsparameter frominit(). Tutorial behavior is configured per module withshowTutorials; see Modules. - Updated the Android build requirements:
compileSdk36, Kotlin Gradle plugin2.2.21, Android Gradle Plugin8.9.1, and Gradle8.14.5are now the minimums. See the Migration Guide.
Working with Android SDK 5.51.0 and iOS SDK 5.47.0
4.19.0 (Jul 29th, 2026)
- Added support for Dart 3.x. The plugin's SDK constraint was widened to
>=2.12.0 <4.0.0. - Added optional
voiceConsentLanguageparameter toOnboardingSessionConfigurationto set the voice consent language in theVideoSelfiemodule. Supported values: 'en', 'es', 'pt', and 'he'. Default is English. - Added SNA (Silent Network Authentication) to
PhoneModule(only available via Flows integration and on a new variant-sna). - Replaced
jailbreakDetectederror code withintegrityCompromisedinIncodeSdkFlowErrorto indicate that the device integrity has been compromised (e.g., jail-broken or rooted). - Removed
disableJailbreakDetectionparameter frominit()method.
Working with Android SDK 5.50.0 and iOS SDK 5.46.0
4.18.0 (Jun 23rd, 2026)
- Added
isInitializedmethod that returns a boolean indicating whether the SDK has been fully initialized. - Deprecated
FaceAuthMode.serverinstartFaceLogin. Migrate to theFaceAuthenticationmodule instead.FaceAuthMode.localandstartFaceLogin()with local mode remain fully supported. - Deprecated
IncodeSdkFlowError.badEnvDetected. It is no longer reported: the native SDK now terminates the process when a compromised device environment is detected, so the error can never be delivered viaonError. It will be removed in a future release. - Fixed an Android ANR ("Input dispatching timed out" /
FocusEvent) that could occur at startup. SDK setup calls (initialize,setSdkMode,setTheme,setUXConfig, etc.) now run off the platform main thread, with results marshaled back to it.
Working with Android SDK 5.49.0 and iOS SDK 5.44.0
4.17.0 (May 28th, 2026)
- Updated the default values of the
faceMaskCheck,eyesClosedCheck,headCoverCheckandlensesCheckparameters totruein theFaceAuthenticationmodule. - Updated the default values of the
faceMaskCheckandlensesCheckparameters totruein theSelfieScanmodule. - Fixed a bug on iOS where the
MLConsentmodule screen was not shown whentypewas not provided. Thetypeparameter ofMLConsentmodule is now required. - Fixed:
showCloseButton(allowUserToCancel: false)now correctly hides the close button on Android. Previously the button was always shown regardless of the parameter value.
Working with Android SDK 5.48.0 and iOS SDK 5.44.0
4.16.0 (May 12th, 2026)
- Added
isSkippableflag to theGeolocationmodule. It allows the geolocation step to be skipped. When set totrue, skipping or denying location permission advances the flow instead of ending the session with a permission error. - Added
allAttemptsExhaustedflag toIdScanResultandSelfieScanResultindicating when capture or upload retries are no longer available. - Added per-attempt
IdScancallbacksonIdFrontAttemptCompleted/onIdBackAttemptCompleted. They fire after every individual capture attempt, including intermediate failures. The terminal attempt is signaled whenIdScanResult.allAttemptsExhaustedistrueor when the attempt succeeds. - Added per-attempt
SelfieScancallbackonSelfieScanAttemptCompleted. It fires after every individual selfie capture attempt, including intermediate failures. The terminal attempt is signaled whenSelfieScanResult.allAttemptsExhaustedistrueor when the attempt succeeds.
Working with Android SDK 5.47.0 and iOS SDK 5.43.0
4.15.0 (Apr 29th, 2026)
- Added
deleteLocalUserDatamethod. - Added new internal Android dependency com.incode.sdk.hybrid-bridge that is required to have to a successful build. In case you're experiencing issues fetching it during gradle sync phase please contact your Incode representative, as your account access might have to be updated.
- Fixed UIScene lifecycle crash on iOS.
Working with Android SDK 5.46.0 and iOS SDK 5.42.0
4.14.0 (Apr 7th, 2026)
- Added support for Android SDK initialization without api key and with e2ee url.
- Added parameter
showIdTypeChoosertoIDScanmodule. ID Document Chooser visibility is now controlled solely by theshowIdTypeChooserparameter inaddIdScan. Previously, settingidTypeimplicitly hid the chooser. The configuredidTypeis now only used as a pre-selection when the chooser is disabled(showIdTypeChooser == false) - Added new parameter
e2eeEncryptionEnabledforstartFaceLoginmethod that enables End-to-End Encryption (E2EE) on Android. - Introduced
startFaceMatchmethod to perform a face match without showing UI. - Fixed a bug caused by
flowTaghaving been an optional parameter ofstartNewOnboardingSection. It is now required to provide aflowTagto usestartNewOnboardingSection. - Removed parameters
disableHookDetection,disableEmulatorDetection,disableRootDetection,disableVirtualEnvironmentDetectionfrominitmethod. - Removed
simulatorDetected,rootDetected,hookDetected,virtualEnvDetectedfromIncodeSdkFlowError.
Working with Android SDK 5.45.1 and iOS SDK 5.41.0
4.13.0 (Feb 26th, 2026)
- Added
enableFrontShownAsBackCheckandenableBackShownAsFrontCheckoptional parameters to theVideoSelfiemodule. - Deprecated
autocaptureUxModeparameter from theIdScanmodule. - Deprecated
enableIdSummaryScreenparameter from theProcessIdmodule. - Fixed issue preventing custom V2 theme from applying when configured via JSON.
Working with Android SDK 5.44.0 and iOS SDK 5.40.0
4.12.0 (Feb 6th 2026)
- Added new Flutter SDK variant '-l', so now Flutter SDK is delivered in multiple variants: 4.12.0: Standard variant 4.12.0-vc: Includes streaming 4.12.0-nfc: Includes NFC 4.12.0-l: Includes local face recognition models
- Removed the
enableRotationOnRetakeScreenparameter from theIdScanmodule. Captured documents are now always displayed in a vertical orientation on the Review Screen. - Renamed the
showRetakeScreenparameter toshowRetakeScreenForManualCapturein theIdScanmodule. - Renamed the
showAutoCaptureRetakeScreenparameter toshowRetakeScreenForAutoCapturein theIdScanmodule.
Working with Android SDK 5.43.0 and iOS SDK 5.39.1
4.11.0 (Dec 2nd 2025)
- Added optional
sslPinningEnabledandforceSSLPinningparameters to theinitmethod to support SSL pinning configuration. - Added
titleanddescriptionparams to theSignaturemodule. - Fixed error handling on Android.
Working with Android SDK 5.41.1 and iOS SDK 5.38.0
4.10.0 (Sep 25th 2025)
- Added support for the Face Authentication module that performs a selfie scan to authenticate the user as part of the flow or a workflow.
- Introduced
setFaceAuthenticationHintmethod to provide a face authentication hint. - Introduced
setUXConfigmethod for UX customizations in V2 IdScan and SelfieScan modules.
Working with Android SDK 5.40.1 and iOS SDK 5.37.0