CHANGE_LOG
Changelogβ
5.31.0 (November 12th 2024)β
Added (ALL modes)
- Added Age Assurance selfie tutorial.
- Add ID Capture tutorial screen when age assurance is enabled.
- Added console logging for public API callbacks.
- Updated ID detection model.
- Adjusted translations for the selfie capture feedback messages.
- Show relevant message if a wrong side of an ID is captured.
- After a selfie capture fails, we now present a screen with instructions to help the user troubleshoot the issue.
Added (STANDARD mode only)
- Added new Combined Consent module that is meant to replace the old Consent module.
- Added more analytics data to frame stats for
IdScan
module.
Fixed (ALL modes)
- Fixed the problem with missing session recording.
- Fixed bug that prevented the app from uploading videos recorded in the Video Selfie module after a "no pass" step fails.
- Fixed issue with the camera switching message disappearing in the Video selfie module.
- Fixed localization for 'Opening camera' message in Video Selfie module.
- Respecting dashboard configuration for disabling the face match animation.
5.30.1 (October 15th 2024)β
Added (ALL modes)
- Added Camera spoofing detection.
Fixed (ALL modes)
- Fixed crash in Face Capture module on iPad.
- Fixed collapsed UI in Common Issue screen when custom theme is used.
- Fixed face authentication when capturing manually.
5.30.0 (September 20th 2024)β
- Added
enabled
option toVideoSelfieConfiguration.selfieScan
for enabling/disabling Selfie scan. - Added Recording permissions request as a separate step in the Progress bar of the Video selfie module.
- Added an option to customize the Signature canvas background color. This option is available through the
canvasBackgroundColor
parameter withinSignatureConfiguration
. - Updated expired token for liveness-stat API. For fully functional authentications, update to 5.30.0 is advised.
- Removed Questions and Document scan steps from default
VideoSelfieConfiguration
. - ID validations & OCR are enabled by default in
VideoSelfieConfiguration
. - Added
progressBarColor
andprogressBarSelectedColor
properties toVideoSelfieThemeConfiguration
. - Adjusted application of theme parameters in Video selfie module.
- Added
faceRecognition
parameter toVoiceConsent
step ofVideoSelfieConfiguration
to enable face recognition during the Voice consent. - Fixed app crash when denying camera permission in the Selfie capture module.
- Separated the settings for the
RandomQuestions
andVoiceConsent
steps in theVideoSelfieConfiguration
. - Added customizable image asset
incdOnboarding.videoselfie.recordingPermission
for Recording permission tutorial of the Video selfie module. - Fixed issue with customization on the Government validation status screen.
- Removed hybrid mode from authentication.
- Workflows can now be started with an externaly generated token.
5.29.0 (August 1st 2024)β
- Removed
moduleNotIncluded
errorType, now throwing fatalError if a module/feature is requested but isn't available in specified SDK variant. - Added
feedbackSmall
andfeedbackLarge
toFontsConfiguration
that enables customization of font for feedback messages in IDCapture and FaceCapture modules. - Prevent audio recording in VS Voice Consent from starting before clicking "Tap to speak".
- Introduced the
mergeSessionRecordings
parameter to theIncdOnboardingSessionConfiguration
class. This parameter instructs the backend to merge ID Scan and Selfie Scan recordings server-side in autogenerated flows. - Introduced a new parameter,
enableAudioStream
, in theaddSelfieScan()
andaddIdScan()
functions. This parameter enables audio recording while streaming frames, with a default value of false. Note that this parameter takes effect only whenstreamFrames
is set to true. - Updated Help screen in ID Capture.
- Fixed unlimited number of attempts to retry Voice consent in Video selfie module.
- Fixed custom logo showing on Video Selfie module.
- Supported new Government validation module key.
- Enabled depth data capture by default within regular Selfie scan.
- Updated photo review screen for ID Capture.
- Fixed bug that prevented the custom theme from applying in the User Consent module.
- Enabled Data Input Source configuration values for name and address in EKYC module if Id Capture or Proof of Address modules were called previously. Data Input Source is set on dashboard.
- Added animation on Questions and Voice Consent steps in Video selfie module.
- Updated inital UI state of ID capture step in Video selfie module.
- Glare values can now be sent to the server during ID capture to override server glare prediction. This feature is configurable through a feature toggle that can be remotely enabled upon client request.
- Fixed bug that caused
onIdFrontCompleted
callback to be slightly delayed. - Removed ID Capture initial delay in Video selfie module.
- Sending analytics for each frame in IDCapture and FaceCapture.
5.28.0 (May 31st 2024)β
- IncdOnboarding SDK now requires minimum Xcode 15.0.1 and iOS 13.0
- Reduced SDK size for 'e2ee' and 'nfc' (optimized OpenSSL).
- Added
idAutoCaptureNoIdTimeout
field to theIncdOnboardingManager
. It configures a timer that activates ID manual capture mode in case no ID is detected before time runs out. If set to 0, it activates manual capture mode immediately. - If
idAutoCaptureTimeout
is set to 0, it will now activate manual capture mode after ID is detected for the first time. To activate manual capture mode immediately when ID scan starts, set new fieldidAutoCaptureNoIdTimeout
to 0. - Added parameter
showDataConfirmationScreenAtBeginning
toaddNfcModule
Show edit OCR screen at beginning of module. Default istrue
. - Fixed styling of the check box in the Phone module.
- Added support for HTML and Markdown formatting on User Consent.
- Updated default User Consent content, title and agreements.
- Fixed typo on passport tutorial.
- Fixed Continue button showing on succesful Id capture.
- Split Questions and Voice consent steps of Video Selfie.
- Updated UI of the Voice consent retry screen for the Video selfie module.
- Improved display of UI messages in case of lack of internet connection.
- Added screen for specific ID upload issues to show instead of 'Common issues'.
5.27.1 (Apr 22nd 2024)β
- Resolved an issue where streaming and video conferencing features were not functioning properly in the EU SAAS environment.
5.27.0 (Apr 19th 2024)β
- Fixed double tap issue with Continue button on Consent Views.
- Added PNG (iOS 13 onward) and HEIF (iOS 14 onward) file format support to Proof of Address and Document Capture module.
- Video Selfie now has a progress bar that indicates user's progress.
- Redesigned UX when answering Video Selfie questions.
- Updated Video Selfie tutorial to instruct user what needs to be done depending on the steps configured.
- Video Selfie now asks the users first for the ID (if it is enabled) and then for the Selfie scan.
- Fix Objective-C duplicate symbols for "User" and "Template"
*Changes that apply for a default .standard SDK mode only:
- Updated Video Selfie upload screen UX when retrying or quitting.
- Added capturing depth data for Selfie with TrueDepth camera if available.
- Fixed bug when showing 'Face not detected' on ID Scan.
AESResult
,EKYCResult
,GlobalWatchlistModuleResult
andEkybVerificationStep
now have public members in order to access results properly.- Added
errorUnacceptableID
toIncdIdScanStatus
for more accurate capture error. - Added simulator support for 'k' framework.
- Fix "ID Side Label" staying on screen during upload.
5.26.0 (March 8th 2024)β
- Fixed an issue where
deleteLocalUserData
sometimes did not clear cached files for upload requests. - Added a new variable
modalTransitionStyle
toIncdOnboardingManager
that enables customization ofUIModalTransitionStyle
for presenting the SDK's UI. - VideoSelfie errors are now extended to more granularly describe denied permissions.
permissionsDenied
is now replaced with:screenRecordingPermissionsDenied
,recordingMicrophonePermissionsDenied
,voiceConsentMicrophonePermissionsDenied
, andcameraPermissionsDenied
. - Added a new screen to VideoSelfie that instructs users on properly accepting the screen recording system permission.
- Show an alert when the user denies screen recording for VideoSelfie, where they can choose to go back to grant permission.
- Added new color to
ColorConfiguration
:primaryDark
that enables customization of elements against dark backgrounds. - Added new button to
ButtonConfiguration
:chooser
that enables customization of the ID type chooser on the ID Capture module.
*Changes that apply for a default .standard SDK mode only:
- Updated uploading face frame as a JPEG instead of a PNG.
- Video Selfie upload retries are now reusing upload URL generated for the first upload attempt.
- Fixed an issue where ID Capture was asking for Back ID on Failure when passport was selected.
- Fixed an issue where ID Capture was not updating remaining attempts properly.
- Fixed multiple face match animations shown when using workflows
5.25.0 (Feb 27th 2024)β
- Redesigned ID type chooser screen.
- ID Manual capture timeout is now 60 seconds if no ID is detected at all, or 25 seconds (configurable) after the ID is first detected.
- The ID overlay now automatically adjusts to align with the orientation of the ID, whether it is placed horizontally or vertically. Defaults to vertical, specify
initialOrientation
param in theaddIdScan
method to change it. - Overall ID capture performance improvements.
- Passport capture now processes full frame photo instead of a cropped one.
- Added 3 new analytic events -
idOrientationChanged
,frontIdDetected
, andbackIdDetected
. - Region code has been deprecated and ignored for future use.
- Updated VoiceOver strings for better clarity.
- Added privacy manifest file.
*Changes that apply for a default .standard SDK mode only:
- Fixed valid OTPs not being allowed in Email and Phone modules.
- (BETA) Reconnect AI support - Added a new method
startFlow
that enables the initiation of an online flow. The flow is referenced by setting its ID as theconfigurationId
in thesessionConfig
object passed to this method. Additionally, the methodstartFlow
has been overloaded to take a Universal Link URL as a parameter and allows resumption of an interrupted flow. - Added parameter
externalCustomerId
toIncdOnboardingSessionConfiguration
Id that is used outside of Incode Omni platform. Similar toexternalId
but it creates a new session, instead of restarting one. - The global watchlist module no longer displays the input UI. Instead, it automatically retrieves data from the session, and the processing screen is shown.
- If a user chooses 'passport' but provides an ID, the module will continue with capturing the back of the ID. Conversely, if 'ID' is chosen but a passport is presented, back ID capture will be omitted.
- Fixed a bug where second ID would be processed as a first ID.
5.24.1 (Jan 25th 2024)β
- Fixed wrong .podspec file causing compilation errors for Cocoapods integration with version 5.24.0
5.24.0 (Jan 12th 2024)β
*Changes that apply for a default .standard
SDK mode only:
- Added parameter
isBackgroundExecuted
toaddGovernmentValidation
making it execute without presenting UI. - Fixed a crash in the Video Selfie module that occurred when video was uploading if screen recording was on.
- Added optional End-to-end encryption for API requests and responses. Can be enabled using the
e2eEncryptionEnabled
flag in theIncdOnboardingSessionConfiguration
model and settinge2eeURL
param of theinitIncdOnboarding
method. See full guide here. - Added a mandatory consent screen for using Incode services from regulated states. User consent can be displayed either immediately after the session starts or after scanning the front of the ID. If the user decides to omit giving consent, the flow is interrupted, the
onError
callback is called, and all session data is deleted. New type of error will be returned in this case:IncdFlowError.biometricConsentNotGiven
5.23.0 (Dec 20th 2023)β
- Added global variable
IncdTheme.logo
that will override all by default visible logos. - Added parameter
customLogo
toaddSelfieScan
and tostartFaceLogin
to customize Face Capture Module only. - Calling
setLogo
onVideoSelfieConfiguration
customises logo for Video Selfie Module only. - Added option to provide a custom text for Face Capture and Video Selfie modules.
*Changes that apply for a default .standard
SDK mode only:
- Fixed an issue in NFC module where scan would not start and try again button would remain disabled.
- Fixed an issue in NFC module where black vertical lines would appear on the edges of the authentication result screen.
5.22.0 (Dec 4th 2023)β
- Fixed a bug on editable ocr where date of birth could be set in the future.
- Added ability to configure capture overlay color and opacity with
idCaptureFrame
property for ID capture module and withvideoSelfie
for Video selfie module atThemeConfiguration.customComponents
. - Fixed status bar style which was incorrect in some cases on the Video Selfie screen.
- Fixed problems with auto capture when ID or Face recording is turned on.
*Changes that apply for a default .standard
SDK mode only:
- Added missing module events when running workflows.
- Face recording setting is now respected inside the workflows.
- Fixed video selfie back ID validation results not visible on dashboard.
- Accessible constructor is now available for
ExternalVerificationConfiguration
. - Fixed bug where face recording config for Face capture has been ignored.
- Added new analytics for the video selfie module to track recording details and log any errors during the upload process.
5.21.0β
- ID scan back ID capture will always start in autocapture mode, even if front ID was captured manually.
- Enhanced VoiceOver for the Selfie Scan module.
- Enhanced VoiceOver for ID Scan module.
- Replaced some of the Screen opened/closed log events with their specific ones, ie.
Events.screenOpened
andEvents.screenClosed
with ascreen
SELFIE_UPLOAD_SUCCEEDED' is now
Events.selfieUploadSucceeded` - Added new logging events for OTP screen.
*Changes that apply for a default .standard
SDK mode only:
- Fixed bug that caused recorded video sessions not to appear on the Dashboard.
- Added threeway face match between the primary ID, secondary ID and selfie by specifying
idCategory
param this way:addFaceMatch(idCategory: .primary, .secondary)
- The user consent screen will now display a default title and subtitle if they are not provided.
- Fixed bug on recording last screen opened, now it is being properly logged.
- Added eKYB (Electronic "Know Your Business") module, which allows users to validate the existence and legitimacy of business.
- Added eKYC (Electronic "Know Your Customer") module, which allows users to validate the existence and legitimacy of their customer.
- Added Global watchlist module. Check customer identities against sources of Sanctions, Politically Exposed Persons (PEPs) etc.
- Introducing Workflows. New way of creating user's onboarding journeys. Please follow the guide on how to use them here.
5.20.1 (Oct 10th 2023)β
- Resolved additional
SSZipArchive
name conflicts.
5.20.0 (Sep 29th 2023)β
*Changes that apply for a default .standard
SDK mode only:
- Updated Machine learning consent screen UI, mainly to include a title.
- Upon specific flow configuration, it is now possible to automatically skip the back ID scan after front ID scan is done.
- Added validations for the Video Selfie back ID step
- Fixed missing videos on dashboard when
streamFrames
parameter is enabled for ID and Selfie modules. - If
streamFrames
is true users will now see 'Please wait, adjusting camera' dialogue before streaming from camera feed is ready inside ID and Selfie modules. - Streaming videos on dashboard now contain all attempts instead of only the last one
- Added parameter
defaultRegionPrefix
to theaddPhone()
which overrides the default region prefix derived from device's selected region. Valid values are integers greater than 0, up to 4 digits. Invalid values will be ignored and default region prefix will be used.
5.19.0 (Sep 1st)β
- Updated
SSZipArchive
to 2.5.4 and resolved method name conflicts. - Fixed external screens tracking not stopped/started properly when using sections API
- Fixed default region code in Phone module when cell provider is not available, which prevents issue of users not being able to type in their phone number.
- Refactor capturing events for ID / Selfie capture.
- Added new model for face mask, glasses, headwear, and closed eyes detection.
- Removed framework variant '-m'. Local mask check is now always available. Check migration guide for more details.
- Fixed streamed frames not being recorded in
-d-vc
framework variant.
*Changes that apply for a default .standard
SDK mode only:
- Added AES module for signing documents. (Demo environment only)
- Error messages on the Email and SMS OTP screen are now displayed in the
ColorsConfiguration.error
color. OnboardingValidationModule
now hasaddressFieldPoAValidation
module for Proof of address classification.- Blacklisted users upon server 1:1 login will see 'Access denied' message, instead of 'Something went wrong'
5.18.0 (July 12th)β
- IncdOnboarding SDK now requires minimum Xcode 14.1 and iOS 13.0
- Logging events for OTP screen.
- Improved capture efficacy when using photo review screen
- Instead of using mp4 video files for tutorials, we are now transitioning to Lottie vector animations.
- Added 18 character limit on CURP input filed.
*Changes that apply for a default .standard
SDK mode only:
- onCURPValidationCompleted called with CURP for failed attempts as well.
5.17.0 (June 14th)β
- Added '-ra' framework variant which performs Sardine's 'Risk analysis during onboarding
- Fixed issue on Digital Signature screen where theme customization was not applied.
- Ensure AVCaptureSession is started on a background thread.
- Incorporated
externalAnalyticsEnabled
andenableExternalScreenshots
intoIncdOnboardingManager
, providing refined control over tracking. The default settings for tracking extrarnal screens istrue
, and for screenshots of external screens isfalse
. - Added logging of events once ID and Selfie video recordings are uploaded for better visibility on dashboard.
- Added ID autocapture feedback message 'Too Dark' in case image brightness is too low (applies to Video Selfie ID capture as well)
- Fixed 'Help' button within ID screen being shown without theme and localization applied
- Fixed ID autocapture feedback message UI glitch within back ID autocapture when closing 'Help' screen
- Fixed faulty ID feedback messages that appeared during manual capture
- Prevented multi-click on ID manual capture button
- Fixed ID autocapture feedback message UI glitch if same feedback message needs to stay visible for the user (applies to Video Selfie ID capture as well)
- Loosened the threshold for ID being too big, thus making the ID autocapture getting triggered even though ID is slightly outside of pulsing rectangle.
- Added
tooDark
,idDetectionError
,idNotFullyVisible
,horizontalIdDetected
,idTooSmall
,idTooBig
errorStates that are logged as part ofswitchToManualCaptureFrontId
andswitchToManualCaptureBackId
events - Video Selfie ID autocapture hint to show front or back ID is now visible for 3 seconds before ID detection starts
- Fixed crash in User Score module if being called without ID, Selfie or Face Match modules being executed before it.
*Changes that apply for a default .standard
SDK mode only:
- Added OTP verification option for the Phone and Email modules. To enable this feature you need to pass the
otpVerification
parameter set totrue
to theaddPhone()
andaddEmail()
methods. - New module added:
Antifraud
. Enable it usingaddAntifraud()
method withinIncdOnboardingFlowConfig
, which will show a brief processing UI to the user. To perform a non-UI antifraud check callIncdOnboardingManager.shared.antifraudCheck
method. - Fixed flow getting stuck on uploading session video recordings
- Now able to stream camera feed using the
streamFrames
flag set inaddIdScan
andaddSelfieScan
. Only available for the VC variant.
5.16.0 (May 9th 2023)β
Changelog:
- Manual captures in Selfie Scan don't perform error checks by default. To enable it set
IncdOnboardingManager.shared.manualCaptureLocalErrorCheck
totrue
. (BETA) - Removed
HelpButtonConfiguration
in favor of an improved standardButtonConfiguration
when theming the 'Help' button in the ID scan. Please refer to the migration guide. - Improved accuracy in Selfie scan for local lenses and face mask detection during autocapture.
- If local face mask check detects a face mask during Selfie autocapture feedback message 'Take off your mask' will appear for 3 seconds, instead of pausing the camera session, showing an error message and asking the user to retry before resuming it.
- Fix for Video Selfie missing Spanish and Portuguese translations when lenses and face mask are detected during Selfie scan.
*Changes that apply for a default .standard SDK mode only:
- Added NFC ID support, plese refer to the migration guide for updates. (BETA)
- Fix for 1:1 local mode attempts are not visible on the dashboard in case there is no locally stored identity.
- Authentication attempts on the dashboard now contain information if an attempt was done using zFaceAuthMode.local
,
FaceAuthMode.hybridor
FaceAuthMode.server`. FaceLoginResult
now contains hasLenses which indicates that login failed due to a person wearing lensesFaceMaskCheckMode.loca
l will now also respect server mask check in case locally mask wasn't detected, but server check detected upon selfie upload- Showing 'Something went wrong' if the selfie couldn't be uploaded due to some error so no liveness confidence couldn't be calculated
- Fixed an issue where the SDK did not recognize that location permissions have been granted after being set to
Never
- Fix for Video Selfie lenses and face mask detection server results being ignored
5.15.0 (Apr 13th 2023)β
- Added Jailbreak detection. May be disabled by setting
true
toIncdOnboardingManager.shared.disableJailbreakDetection
property - Reduced size of non-NFC framework variants by removing NFC related resources
deleteLocalUserData
now clears session data and is available for all framework variants- Added
showIDOverlay
parameter to theaddIdScan
method to show ID template overlay within ID capture frame. - Removed pulsating ID frame animation during manual capture
- Fixed an issue where user could start multiple NFC scans.
- Fixed successful checkmark color issue on Video Selfie success screen
- Sending Face Login local recognition and spoof thresholds in order to display face login attempts more accurately on the dashboard
- Improved performance of capturing the documents in Document Scan module.
*Changes that apply for a default .standard
SDK mode only:
- Support for API key rotation
- Fix skipping Geolocation module if there is no internet
- Fixed successful checkmark color issue on CURP and Government Validation success screens
- Remove concurrency within NFC codebase to make it work with Xcode 13.0
- Fix for being unable to upload document correctly to the server on certain devices.
- Fix for document capture flow freeze after multiple unsuccessful document capture attempts
- Breaking Change: The function
onEvent(_ event: Event, data: [String: Any])
has been replaced withonEvents(_ eventsWithDetails: [EventWithDetails])
, which takes an array ofEventWithDetails
as an input, whereEventWithDetails
is atypealias
for a tuple containing anEvent
and its associated data.
5.14.1 (Mar 29st 2023)β
- Resolved integration issue with dynamic SDK variants.
5.14.0 (Mar 21st 2023)β
- Added 'Screen Opened' and 'Screen Closed' log events for each screen
- Added 'Module Opened' and 'Module closed' for each module
- Added event logging whenever external app screen is shown after Incode SDK is initialized and before the flow ends. To disable this, set
loggingEnabled
tofalse
ininitIncdOnboaringSDK
method - Removed some unused resources to reduce SDK size impact
- Fixed UI glitch on iPads during screen rotation in Selfie module
- Fixed Video Selfie getting stuck if audio is disabled and
recordSession
is enabled for that flow - Fixed
onIdBackCompleted
callback being triggered for passports - Fixed camera freeze when sending app to the background
*Changes that apply for a default .standard
SDK mode only:
- Added NFC scan module in BETA (also Xcode 13.3.1+ required and iOS 13), please refer to NFC Scan - Integration & Usage
- Retry dialog shown to the user if something fails due to bad Internet
- Fixed app freeze when going to background after uploading the document
- Added
issueName
,issueYear
,failReason
andcountryCode
to theIdScanResult
- Added ability to upload a PDF from device for
.otherDocument1
,.otherDocument2
,.otherDocument3
and.paymentProof
document types - Showing 'ID type unacceptable' upon uploading the ID if that ID type is configured not to be accepted
- Showing 'Face not detected' if a face isn't found upon capturing Selfie
- Added 'spoofThreshold' and 'recognitionThreshold' settings that apply to local and hybrid face login
5.13.1 (Feb 23rd 2023)β
- Fix Video Selfie videos being corrupted in case user temporarily leaves the app
- Renamed db file names to support toolchains that don't allow spaces
5.13.0 (Feb 14th 2023)β
- iPad landscape ID capture and Selfie module UX optimizations
- Fixed continue button being enabled even when input is not completed in Captcha Module
- Fixed Video Selfie showing wrong ID frame when used in capture only mode
*Changes that apply for a default .standard
SDK mode only:
- Removed redundant API call in Video Selfie in case selfie spoof attempt was detected
- Enabled background upload of data in case user leaves the app in the middle of the data upload
5.12.0β
- Added
autocaptureUxMode
parameter to ID Scan module configuration. Default isholdStill
that waits for 1 second after ID is detected, specify.countdown
to show 3-2-1 countdown to capture. - Using latest ID side detection model to detect more accurate if front or back of the ID is being used
*Changes that apply for a default .standard
SDK mode only:
- Added
logAuthenticationEnabled
parameter tostartFaceLogin
. Enables/disables sending login statistics after a login attempt. - Video Selfie continues with the flow if ID can't be validated due to the regular ID scan step not being present in the flow
- Fix
startFaceLogin
method usingserver
mode instead of ahybrid
in case no identity is stored locally onDocumentScanCompleted
callback now contains raw JSON fielddata
that contains all the info extracted from the document
5.11.0β
- Added
getUserOCRData
public API method to fetch OCR data - Added
lensesCheck
andfaceMaskCheck
parameters toselfieScan
method inVideoSelfieConfiguration
- Callback
onVideoSelfieCompleted
triggered with audio/video data whenever a video is recorded, even if Video Selfie didn't complete successfully - "Show front/back ID" messages during the ID capture in Video Selfie now present on the screen for longer
- Fixed Video Selfie recording session not being closed timely
IncdError
now hasnoActiveSession
case thrown when trying to start onboarding section or calling other API methods that require an active session- Updated liveness threshold from 0.3 to 0.5
- Updated
incdOnboarding.cameraState.scanFrontID
andincdOnboarding.cameraState.scanBackID
icons when during ID capture we detect a user shown wrong side of the ID. - Fixed font theme issues
5.10.0β
- Replaced
Name
module with a simplified version that asks for full name - Video Selfie now uses
idBackShownAsFrontCheck
andidFrontShownAsBackCheck
settings - Replaced
incdOnboarding.cameraState.scanBack
asset withincdOnboarding.cameraState.scanFrontId
- Updated local ID detection model. It should improve ID capture module and ID capturing within Video Selfie
VideoSelfieError
now hasidTypeNotMatched
for case when ID captured during Video Selfie is different type then the one taken from the ID scan step- Added
downloadImagesEnabled
parameter to theOnboardingSessionConfig
that prevents processed images captured during onboarding to be fetched - Added
enableRotationOnRetakeScreen
parameter to theaddIdScan
method. Enables/disables rotation of the ID preview to the right by 90 on the Retake screen - Removed 'Continue' button during Selfie capture in Video Selfie, face capture now starts immediately
- Fixed bad Video Selfie error messaging when passport is shown
- Fixed Selfie manual capture not detecting a face mask
- SDK info on dashboard now shows a specific iOS SDK variant used
- Added
SDKMode.submitOnly
that only uploads data to the server without returning results back to the SDK user
5.9.0β
- Video Selfie isn't interrupted if ID isn't validated
- Added event logging for processing states within Video Selfie
- Video Selfie now displays feedback messages how to complete the step successfully
OnboardingValidationModule
now has finer granulation for modules within Video Selfie, newly added arevideoSelfieLiveness
,videoSelfieOcr
,videoSelfieIdType
andvideoSelfieSpeech
VideoSelfieError
now hasinternalError(String)
case to expose more detail about internal errors that can occur.- Face Match now can be configured not to show 'User already exists' by specifying
showUserExists
prameter tofalse
inaddFaceMatch
method - Face login Close button now disabled by default, can be enabled by specifying
IncdOnboardingManager.shared.allowUserToCancel
totrue
- Fixed re-introduced issue of getting duplicated symbols for SSZipArchive
5.8.1β
- Fixed text alignment and color issue in subtitles for ID back tutorial screen
- Introduced
idBackShownAsFrontCheck
param to theIncdOnboardingManager
- Removed 'X' close button from screens that don't have user interaction
- Added autocapture timeout in Selfie screen during Login, after which manual capture UX will appear. Defaults to 25 seconds and can be change via
IncdOnboardingManager.shared.selfieTimeout
field. - Fixed
Document Scan
camera issue on iPhone 14 Pro - Fixed ID autofocus camera issue on iPhone 14 Pro
- Video Selfie recording gets uploaded even if the user presses 'X' close button
- Video Selfie step now continues with the flow even if ID OCR doesn't match
- Video Selfie now has support for Passports besides regular IDs
- Video Selfie now has improved image quality checks during ID scan
- Fix for Selfie recording not getting uploaded if app is sent to background
- Added
loadModels
API that preloads the local models in order to speed up the startup time of some steps, ie. Selfie. - Added missing translations for feedback messages in ID and Video Selfie steps
5.7.0β
- Added a delay of 3 seconds before retry inside Selfie module when lenses are detected
- ML Consent module now fetches the content from the server, shows the content for
.gdpr
in language set as user's locale, and for.us
always in English - It is possible to specify preferred language. To do it, set
IncdOnboardingManager.shared.localizationLanguage
to desired locale, ie. "es". - Replaced ID capture countdown once ID is detected with a 'Hold still...' delay. The best frame during ID capture will be used, instead of last one after the countdown.
- Fixed CURP module wrong font size
- Fixed issue with fetching flow configuration when
OnboardingSessionConfiguration
is being setup with a token - Fixed Video Selfie issue for Selfie step where user will get stuck on 'Processing...' state
5.6.0β
- Fixed issue with
finishFlow
failing with 401 error - Fixed issue with flow error event not being sent
IncdOnboardingManager.shared.addNOM151Archive
method now returnsAddNOM151ArchiveResponse
, which containsarchiveUrl
andsignature
for the NOM151Archive- Added
showAutoCaptureRetakeScreen
param to theaddIdScan
method to show Photo Review screen after ID auto-capture - Added parameter
cameraFacing
to theaddSelfieScan
method to specify front or back camera that will be used during SelfieScan. Defaults to front camera. - Added new Video Selfie tutorial that shows a video to the user how to complete the Video Selfie step efficiently.
- Added new method
maxVideoLength
to theVideoSelfieConfiguration
that allows setting of maximum video length of captured video. VideoSelfieConfiguration
now has voice consent and questions steps turned off by default- Back camera is now used for capturing the ID and Document inside Video Selfie. To change this behaviour set
cameraFacingConfig
inVideoSelfieConfiguration
- Fixed Video Selfie voice consent issues on iOS 16
- Fixed ID Scan feedback messages not visible for large font sizes
- Added Kiosk APIs
startKioskFlow
andstartKioskLogin
methods that can be used on iPads embedded in Aila frames. These will be available as part of 'd-k' variant only.
5.5.0β
- Added Face Login 1:N local mode and APIs
addFace
,removeFace
,setFaces
andgetFaces
. These are available for framework variants '-l'. - Added local FaceMaskCheck during Selfie autocapture for framework varaints '-m'. Choose between
.server
and.local
check by specifyingfaceMaskCheckMode
inIncdOnboardingManager
. - Renamed setting
serverSelfieFaceMaskCheck: Bool
tofaceMaskCheck: Bool
. - Added local faceMaskCheck mode on Selfie screen for framework variants '-m'
- Added Machine learning Consent module
- Added option to customise Signature module canvas and border colors
- Added option to provide a custom name for a .strings file in which you will overide texts in the SDK
- Fixed Selfie not getting uploaded if app is closed during upload
- Now clearing Keychain stored values related to session once session is completed
- Fixed custom fonts not being applied to Email and Enter name modules
5.4.0β
- Added Custom watchlists module
- Added Face Login 1:1 in local mode. To use
FaceAuthMode.local
you have to use-l
framework variant - Added
deleteLocalUserData
method that clears stored user data - Fixed wrong text in Spanish when capturing ID inside Video Selfie
- Added
additionalTextHeight
theme parameter tofonts
to support changing height of certain fonts - Fixed memory leak related to delegate reference provided in
startOnboardingSection
- Fixed screen recording for selfie not uploaded in certain scenarios
5.3.0β
- Face Login 1:1 now uses faster and more advanced API call.
- Added
faceMaskCheck
parameter tostartFaceLogin
method. Specifytrue
to deny face login attempts when face mask is detected FaceLoginResult
now includes for both 1:1 and 1:N:success
,customerUUID
,interviewId
,interviewToken
,token
,transactionId
andhasFaceMask
(iffaceMaskCheck
is enabled)- ID and Selfie attempts can be recorded, to enable it use
recordSession
method insideIncdOnboardingFlowConfiguration
- Removed redundant CATransaction calls during ID scan
- Fixed pulsating animation not visible after first attempt during ID scan autocapture
- Fixed Signature upload fail for custom themes
- Fixed issues with callbacks for DocumentScan in
captureOnly
SDK mode - Document Scan module now shows 'Review Photo' screen by default after manual capture, can be disabled via
showRetakeScreen
parameter - Video Selfie can now record video only, to turn off audio set
disableAudio
to true when creatingVideoSelfieConfiguration
- Improved ID detection in Video Selfie
5.2.0β
- Added
.sessionCreationFailed
error case withinIncdFlowError
andOnboardingSessionError
that will be thrown in case session creation fails IncdOnboardingManager.shared.allowUserToCancel
now adds 'X' cancel button to other screens in the flow, instead of only showing it inside camera capture screens.- Added
IncdTheme.current.colors.cancelDark
theme color, now used inVideo Selfie
'X' button - Added
transactionId
to theFaceLoginResult
response of 1:1 Face Login DocumentScan
module now has 3 retries by default when uploading docments- Fixed
startFaceLogin
throwing error.notInitialized
if it is called without creating a session beforehand. IncdOnboardingDelegate
now extendsAnyObject
, it is referenced asweak
and it gets released inIncdOnboardingManager
singleton afterstartOnboarding
is completed.- Keyboard now shown automatically inside
Captcha
step - Removed animation when closing CURP screen
- Now disabling signature canvas after user submitted the signature
- Enforced SwiftLint code style
5.1.0β
- Added
minVideoLengthRequired
parameter toVideoSelfieConfiguration
. Specifyingfalse
means there will be no minimum 30 seconds limit. - Now sending Login Authentication info/statistics to the server for each attempt
- Fixed bug in Document Scan when uploading images
- Fixed bug for Document Scan uploads not shown in dashboard
- Fix Selfie tutorial subtitle alignment
- Fix Retake screen subtitle alignment
- Fixed issue with
showRetakeScreen
not being applied when SDK is running in.captureOnly
mode - Fixed bug when specifying
token
inIncdOnboardingSessionConfiguration
and usingstartOnboarding
afterwards.
5.0.2β
- Fixed bug in Document Scan while in Capture Only mode.
5.0.1β
- Fixed bug in Capture Only mode when using sections.
5.0.0β
- Introduced new way to configure flows and setup onboarding sessions. Plese refer to the migration guide.
- Video Selfie module now works in capture only mode. Please refer to the guide here.
- Removed network calls from
initIncdOnboarding
method.url
parameter is now optional. - Init errors related to
API
key andURL
will now be delegated throughIncdOnboardingDelegate.onError(_ error: IncdFlowError)
(caseinitError(_ error: IncdInitError)
). - Fixed iOS 12 camera issues during document scan.
- Fixed camera session staying open after ID scan.
- Fixed custom font letters being cut-off.
- Fixed Signature subtitle alignment.
- Fixed Signature module not using proper theme colors.
- Fixed Face Login screen not getting closed in some scenarios.
- Added
errorDescription
when logging error events. - Removed faulty blinking line during ID auto-capture.
- Animated overlay during passport auto-capture.
- Switched to non-base64 document upload API.
- Fixed Back ID being skipped in secondary flow.
- Fixed duplicate symbols error that emerged in React Native platforms.
4.7.3β
- Crash fix for memory issues during camera capture on low-end devices .
- Fixed Proof of address capture on devices with smaller screens.
- iOS 12 fix for continue button not being hidden during ID upload.
- Bugfix when using both
addIdProcess
andaddIdScan
modules. - Fix for input error when using swipe keyboard.
4.7.2β
- Added all camera feedback assets to customizables.
4.7.1β
- Added email module support.
- Added autocapture for passports.
- Added
rawJSON
data to theUserScore
result. - Updated
IncdTheme
, check IncdTheme Guide for more info. - Fixed several UI issues.
4.6.0β
- JSON theme customization.
- ID help screen title labels can now have up to two lines.
- ID capture "side label" can now be customized.
- ID capture "side label" can now change text when autocapture countdown timer starts through
"incdOnboarding.id.showBackIDSideOnCountdown"
and"incdOnboarding.id.showFrontIDSideOnCountdown"
localization labels. - Introducing Dynamic Localization. Check Localization Guide.
4.5.0β
- Localization for specific continue buttons.
- Added ability to customize specific views.
- Added subtitle labels to the ID capture "Need help" screen.
- Added set onboarding session with token
4.4.1β
- Added an optional parameter
token
for initializing the sdk. - Added an optional parameter to show/hide retake screen after manually capturing an ID.
- Fixed bug with Captcha module where code would not refresh after being used.
4.3.0β
- Added
onEvent
method to theIncdOnboardingDelegate
protocol, so that optionally you can get notified about events that are being tracked inside the SDK. - Fixed QR scan wrong processing logic.
- Now using
faceCaptureQuality
obj-c method during Selfie scan.
4.2.0β
- Added Side Label and Help Button on the ID scan to customizable list.
- Fixed issue with Help Button where it was applying localization after it gets appeared.
4.1.1β
- Added
externalId
parameter forcreateNewOnboardingSession
. - Added Barcode scan module.
- Fixed issue with not returning
classifiedIdType
after the ID scan module. - Fixed issue with manual selfie capture in the
captreOnly
mode. - Added
otherDocument3
in theDocumentType
that doesn't require server validation. - Optimazing size impact, resulting in smaller download and install size.
4.1.0β
- Reworked Document Scan to support new type, check Migration Guide for more info about breaking change.
- Added User Review screen which allows user to check and retake manually captured photo before uploading.
- Added an official Cocoapods ODR functionality.
- Added support for iOS Simulator on Apple Silicon Macs (non - Video Conference variants only).
- Added option to change Video Selfie video codec type. Use
videoSelfieConfiguration.videoCodecType = .h264
to change codec toH.264
. Default isHEVC
. - Added
processPaymentProof
API. - Added
processLaborHistory
API. - Added lazy load model for more optimized performance and memory handling.
- Fixed ghost onboarding session issue after going through the flow again.
- Fixed tutorial videos freeze if the device gets locked on iOS 15 and later.
- Fixed "SDK info" event log being sent when each onboarding section is started.
- Fixed issue where iOS SDK version was not visible in βDevice infoβ on dashboard.
- Fixed issue where QR scan did not look for generic codes, minor UX improvements.
- Restored ODR functionality.
- Renamed ODR tag
StaticSDKResoucesBundleODR
from toIncdOmniResources
. - Minor UI improvements.
4.0.1β
- Captcha module (aka One Time Password) received an UI/UX update.
- Added
croppedFace: UIImage?
to theIdScanResult
- Support for dynamic localization. Check
IncdOnboardingManager.localizationBundle
property.
4.0.0β
- New module added: Process ID.
- Added parameter
showIdSummary
(default istrue
) which will display summary of ID scan in case it is not successful. Also known as "Referred to Executive" screen. - Introducing new result structure
IdProcessResult
.
- Added parameter
- Added individual, non-UI function
idProcess
which performs ID process immediately. - Added individual, non-UI function
geolocation
which performs Geolocation process immediately. - ID Scan:
- Added paarmeter
ScanSide
to specify which side to scan. Process ID module has to be added unless.both
is specified, in which case it is added automatically. - Introducing new result structure
IdScanResult
.
- Added paarmeter
- Added 30s timer for Captcha (OTP) after which it will be refreshed automatically.
- Warning icon on ID Capture Summary screen is now customizable.
- Removed most of individual functions.
- Removed deprecated API which were using parameter
vc: UIViewController
.
3.2.0β
- Added nameMatched, confidence, existingUser and existingInterviewId to the
FaceMatchResult
initIncdOnboarding
method will return.serverUnreachable
error in case device is in airplane mode- Fix for app events being sent after user cancels the session
- Added basic theming via JSON config
3.1.0β
- Added geolocation API which doesn't show UI.
- Calling
faceMatch
now returns an error if SDK is not initialized. - Added property to check SDK initialization status -
isSDKEntierlyInitialized
. IfisSDKEntierlyInitialized.flag
is true SDK is successfully initialized, false otherwise. - Added Server Face mask check in Selfie Scan.
- Removed 'simulatorDetected' error type & bugfix for 'refered to executive screen' shown on iOS simulator.
- Fix frozen flow after secondary ID isn't captured correctly 3 times.
3.0.4β
- Add show id side label on id capture screen
- Add face match api without ui
- Removed error events for errors that don't stop the flow
- Bugfix for crash if UserDefaults is erased by host app
- Added selfieBase64 to selfie result
- User Canceled event now sent as standard event instead of an error
- Bugfix for ID session not cancelled properly when user presses 'X'
- userCancelledSession now called once the user cancels any of the steps, instead of onError with .userCanceled error being triggered
- Added 'serverUnreachable' error for initIncdOnboarding method that happens when Incode server couln't be reached due to bad internet connection
- Fix for User Consent content not being scrolled to top on iOS 12.x devices
- Added local liveness failed event
3.0.3β
- Added User Consent module
3.0.2β
- Added option to perform local Liveness check during Selfie Scan.
- Sending additional face coordinates during Selfie Scan to improve processing.
3.0.1β
- Added option to send
externalId
when creating onboarding session - Improved Document Scan UX
- Fixed unnecessary face cropping during Selfie Scan due to aspect ratio
- Now returning encrypted base64 images from Id and Selfie scans.
3.0.0β
- Cocapods variants breaking change -> Static and Dynamic now don't include Video Conference module by default. To use Video Conference module, please add
vc
, ie.3.0.0-d-vc
. - Fix for
onCaptchaCompleted
not being called once the Captcha step is completed - Fix for onboarding sections not being shown if being opened too quickly after previous sections got completed
- Fix for some session not being flagged as NEEDS_REVIEW
2.0.1β
- Introduced new Video Selfie mode
faceMatch
, that does a comparison between photo from the ID and Selfie. - Introduced
startFaceLogin
method that does 1:1 and 1:N face authentication. Please visit Face Login Guide for more info.
1.12.6β
startOnboarding
can now be called with a specificinterviewId
, so it doesn't create a new session.
1.12.3β
- Fix some customization issues on iOS 11-12
1.11.0β
- Added IncdTheme (please visit IncdTheme Guide for more info)
- Added option to show close button during ID or selfie capture
- Minor bugfixes & improvements
1.10.3β
- Fixed not having captured ID images inside IDValidationResult in case upload fails
- Removed unnecessary face processing during ID front autocapture
1.10.2β
- API change (please take a look at the Migration Guide)
- Added support for presenting SDK from a modal UIViewController
- Fixing a few UI issues, mostly in Capture Only mode
- Added Portugeese localization
1.9.47β
- Introducing Static framework with On-Demand-Resources option
- Added CURP module, refined ID Verification
- New ID detection model for Video Selfie
- Fixing onboarding presentation on UIViewControllers which are not part of UINavigationController stack
- Various bugfixes & improvements
1.9.46β
- SDK now delivered as a static IncdOnboarding.xcframework
- Because some framework files now exceed 100MB Git Large File Storage is needed to be installed to fetch all the updated frameworks.
- Improved Error handling
1.9.42β
- Lenses check enabled by default in Selfie Scan module
- Added new OCR fields notExtracted and notExtractedDetails
- ID Scan autocapture not working after migration
- ID Scan crash fix when permissions are manually disabled in Settings
1.9.27β
- Crash fixes
1.9.25β
- OMNI rebranding
- Selfie scan defaults to manual capture if photo is not taken automatically
- Help feature in ID scan
- Informing the user about the number of ID scan retries
- Analytics events updates
- Added intro module for educating users about the process and to help with measuring conversion
- Added noLocationExtracted case in GeolocationResult
- Using server configuration for auto capture timeouts and upload retries
- Bug fixes