> For the complete documentation index, see [llms.txt](https://docs.facephi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.facephi.com/docs.facephi-en/sdks/sdk-mobile/ios-sdk/changelog.md).

# Changelog

Here you will find the version history and updates of the Facephi SDK for iOS. It is recommended that you always keep your integration updated to the latest stable version.

**Note:** The library **Licensing** is obsolete; its functionality has been included within **SDK Main** since version v2.4.X.

***

### Latest version

**Version:** 2.11.0\
**September 2026**

#### General

* Updated the minor version of the **Core to 2.11.0** and aligned release of native components in **2.11.0**.

#### Selphi - Face Capture

* Updated the dependency of the widget **Selphi**; new widget version: **6.4.0**.
* Minimum platform of the SPM package: **iOS 13**.

#### SelphID - Document Capture

* New input parameter *encodedDataFocusEnabled* which enables barcode reading mode when reading is difficult (only active in the MBSDR flavor and with a resource zip from version > 1.41.4).
* New output parameters *encodedDataImages* and *tokenEncodedDataImages* with the results of a barcode read (only active in the MBSDR flavor and with a resource zip from version > 1.41.4).

#### VideoID - Video Identification

* Updated **FPHISelphidDocumentReaderBundle** to **3.3.8**.

#### Capture - File upload / capture

* **Breaking change:** FileUploader, QR Reader and QR Generator become **FPHICaptureWidget** (KMP). The native UI is removed (Invoice, gallery, and proprietary QR). Widget **1.4.3**.

#### Phingers - Fingerprint Capture

* Updated the dependency of the widget **Phingers**; new widget version: **1.5.5**.

#### Tracking - Platform connection

* Updated the dependency of the widget **Tracking** to **1.4.9**.

#### NFC 2.19.0 - NFC document reading

* Updated the dependency of **Core** to **2.11.0**.
* **Fix:** the NFC session progress indicator shows **6 dots** on a separate line under the description.

***

### Previous versions

#### Version: 2.10.0

**July 2026**

#### General

* New colors for customization.

#### Terms and conditions of use

* Creation of the new component.
* **Breaking change / migration:** the component **Disclaimer** is renamed to **TermsConditions**. Update integration references for `FPHISDKDisclaimerComponent`, `DisclaimerController`, `DisclaimerConfigurationData`, `DisclaimerResult` and themes `ThemeDisclaimer*` to their equivalents `FPHISDKTermsConditionsComponent`, `TermsConditionsController`, `TermsConditionsConfigurationData`, `TermsConditionsResult` and `ThemeTermsConditions*`.

#### Tracking - Platform connection

* Events for the terms and conditions of use.

#### Phingers - Fingerprint Capture

* Improvements in the interface and user experience.
* Improvements in the capture process.
* Improvements in the capture process under low light.
* Improvements in image focusing with different devices.
* **Breaking change / migration (literals):** the text customization keys stop using the prefix `phingers_tf_component_*` and become `phingers_widget_*`. If the application overrides literals in **Localizable.strings**, the keys need to be updated. See the [full list](/docs.facephi-en/sdks/sdk-mobile/ios-sdk/modulos/captura-de-huellas.md#id-81-textos).

#### File upload and QR management - Capture

* **Breaking change / migration (literals):** text customization keys are aligned with Android. iOS-specific keys such as `capture_component_invoice_*` and `capture_component_qr_tutorial_title` / `*_desc` / `*_button_message`, and are used `capture_component_*` and `capture_widget_*` according to the [full list](/docs.facephi-en/sdks/sdk-mobile/ios-sdk/modulos/subida-de-ficheros-y-gestion-de-qr.md#id-81-textos). If the application overrides literals in **Localizable.strings**, the keys need to be updated.

#### Document Capture - SelphID

* **Fix:** fix for the layout issue in the state **CaptureBackError**.
* **Fix:** fix for cropped images in **RGL**. Now the red and blue components are correct.
* **Fix:** the orientation of the `DocumentDetector` recognizer has been corrected **ML** and **MBSDR**.

#### Face Capture with IAD - Selphi

* **Fix:** the unwanted camera zoom has been removed in the **IAD**.
* **Fix:** stabilization fixed with `LivenessMode = NONE`. Stabilization is no longer mandatory in this mode.

***

### Previous versions

#### Version: 2.8.1

**June 2026**

#### General

* Partial release of components with required updates.

#### Phingers - Fingerprint Capture

* **Breaking change:** the parameter **`threshold`** is replaced by **`livenessThreshold`** and **`detectorThreshold`** in **`PhingersConfigurationData`**. The default value changes from **0.7** to **0.9** in both parameters.
* **Breaking change (behavior):** **`enableFlash`** can be enabled even if it is `false` if the process detects low light in the image to improve the capture process.

#### SelphID - Document Capture

* New parameter **`animateDismiss`** in **`SelphIDConfigurationData`**: indicates whether the SDK closure is animated when the process ends.

#### Selphi - Face Capture

* New parameter **`animateDismiss`** in **`SelphiConfigurationData`**: indicates whether the SDK closure is animated when the process ends.

#### Video Call

* **Breaking change / migration:** the **screen sharing extension** (Broadcast Upload Extension) is now configured in the component **Video Call**. The integrating app must create the extension and pass its **`extensionIdentifier`** when launching **`VideoCallController`**. See the [module documentation](/docs.facephi-en/sdks/sdk-mobile/ios-sdk/modulos/videollamada.md#extension-de-compartir-pantalla).

***

### Previous versions

#### Version: 2.8.0

**May 2026**

#### General

* Updated the minor version of the **Core to 2.8.0** and aligned release of components in **2.8.0** where applicable.
* **Breaking change (resource customization):** the SDK background color key changes from `sdkBackgroundColor` to **`sdkBackgroundPrimaryColor`**; it must be updated or the theme will not apply the expected background. Also added **`sdkBackgroundSecondaryColor`** (among other uses, in the document selector view of SelphID).
* **Breaking change (resource customization):** the resource `ic_sdk_logo` is renamed to `sdk_logo` in all components. Affects integrators who customize resources.

#### Selphi - Face Capture

* Updated the dependency of the widget **Selphi**; new widget version: **6.2.0**.
* **Fix:** the customization cache of the **Flow** is cleared when initializing the controller (prevents residual styles between instances).

#### SelphID - Document Capture

* Updated the dependency of the widget **SelphID**; new widget version in this release: **1.39.1**.
* **Fix:** the customization cache of the **Flow** is cleared when initializing the controller (prevents residual styles between instances).

#### Capture - File upload / capture

* **Breaking change:** in **`FileUploaderConfigurationData`** are added **`onlyGalleryMode`** (default **`true`**) and **`maxGalleryImageSizeKb`** (default **2048**).
* **Fix:** the sending of data to **Tracking** uses the **MIME type** resolved from the widget result (including selection from gallery), instead of always assuming PDF or generic image.

#### Phingers - Fingerprint Capture

* **Fix:** fix for the selection of tutorials according to the finger capture mode.

#### NFC 2.16.0 - NFC document reading

* **Feature:** support for images in **JPEG2000** in **DG2** and **DG7**.
* **Fix:** the UI of **tutorial** respects the flag **`showTutorial`** (stopped applying when forced to `true`).
* **Diagnosis:** increase of **logs** in **DG2** to facilitate support and debugging.

#### Video Call

* **Breaking change:** dependency of **video streaming** updated due to breaking changes in the native SDK (configuration of *frame rate* encoder and minimum SDK version).

#### VideoID - Video Identification

* **Breaking change:** dependency of **video streaming** updated due to breaking changes in the native SDK (configuration of *frame rate* encoder and minimum SDK version).
* **Fix:** explicit handling of **network errors** in the flow.
* **Fix:** the **face capture progress** is preserved when switching modes (e.g. face-only to mixed flows).
* Updated and adapted **FPHISelphidDocumentReaderBundle** to **2.1.0**.

#### Video Recording

* **Breaking change:** dependency of **video streaming** updated due to breaking changes in the native SDK (configuration of *frame rate* encoder and minimum SDK version).
* **Breaking change:** new configuration parameter **`enableAudio`**. Its default value is **`false`**.
* **Fix:** possible **memory leak** due to cyclical retention in **`VideoRecordingController`**.
* **Fix:** refactor related to **audio** and **upload** after updating the dependency of **video streaming**.

#### Tracking - Platform connection

* Component dependency update **Tracking** related to device identification (2.6.0 → 2.14.x).
* Credentials can be resolved from the license configuration in the components **Tracking** or **IDV**, depending on the deployment.
* New metadata in Tracking event sending: **SDK version** in *tags* and **`operationId`** in **LinkedId** where applicable.

#### Status

* **Fix:** background color of the "description" element in the diagnosis of **Permission's**..

***

#### Version: 2.7.X

**March 2026**

#### General

* Updated the minor version of Core to 2.7.0 (SDK Main)
* Distribution via SPM now exports binaries hosted in Artifactory. Integrators must include their credentials in the file `.netrc` to download them.
* Improved network error handling and feedback to the integrator app.

#### Selphi - Face Capture

* Sending the widget flavor identifier to the platform.
* Fix: the captured video is not automatically deleted after saving its data in the result.
* Added support for IAD in IDV.

#### SelphID - Document Capture

* Feature: added document and country selector. This selector is a customizable UI view that allows the user to choose the document type and issuing country.
* New parameters in **SelphIDConfigurationData**:

```
showDocumentSelector: Bool? -> default value false
enabledCountries: [String]? -> list of countries specified in ISO2
enabledDocumentTypes: [SelphIDDocumentType]? -> default value [.ID_CARD, .PASSPORT, .FOREIGN_CARD, .DRIVERS_LICENSE]
```

#### VoiceId - Voice Capture

* Sending the widget identifier and widget version to the platform.

***

#### Version: 2.6.X

**February 2026**

#### General

* Updated the minor version of Core to 2.6.0 (SDK Main)

#### Tracking - Platform connection

* Fixed the parsing of the map of **Steps**

#### Selphi - Face Capture

* Updated the Selphi dependency to resolve the white navigation issue in IAD
* New widget version: 6.0.2

#### SelphID - Document Capture

* Updated the Core dependency and refactored **SDK\_TIMEOUT**
* Added **DOC\_TYPE** to **FlowController extraData**
* New widget version: 1.37.0
* Fixed reference to non-existent file

#### Phingers - Fingerprint Capture

* Added support for multi-face detection
* Refactored **DetectFaceServiceProtocol** for native and helper-based solutions
* Moved the logic of **RecognitionHelper** to its own service; refactored initialization of **GlobalSettings** and **ReaderHelper**
* Fixed Portuguese literal for “Cancel”
* Reverted use of the Reader service and restored the legacy implementation with native capabilities

#### VoiceId - Voice Capture

* Accessibility literals (voice-over) on the recording screen were modified to improve UX

#### Video Call

* Fixed incorrect literal for the Cancel action in the modal “Are you sure you want to close?” for Portuguese localizations

#### VideoID - Video Identification

* Updated the version of **FPHISelphidDocumentReaderBundle** to fix a memory leak
* Added support for multi-face detection
* Refactored **DetectFaceServiceProtocol** for native and helper-based solutions
* Moved the logic of **RecognitionHelper** to its own service; refactored initialization of **GlobalSettings** and **ReaderHelper**
* Fixed Portuguese literal for “Cancel”
* Reverted use of the Reader service and restored the legacy implementation with native capabilities

#### Video Recording

* Refactored error handling in the method **start**
* Improved error handling and tracking reporting
* Added support for using **integrationId** from **TrackingConfigurationData sharedContainer** becomes an optional parameter instead of implicitly unwrapped
* Fixed that the feature **DEMOS** did not support injecting **integrationId** into VideoRecording
* Fixed issue where VideoRecording stopped after completing NFC when the iOS native modal was closed during the IDV flow

***

#### Version: 2.5.X

**December 2025**

#### General

* Breaking change: **ErrorType.TIMEOUT** has been renamed to **ErrorType.SDK\_TIMEOUT** (SDK Core)
* Updated the minor version of Core to 2.5.0 (SDK Main)
* IDV flows can be resumed using the new parameters **resumeOperationId** and **resumeSessionId** (SDK Main)

#### Tracking - Platform connection

* New widget version: 1.1.25
* Updated the minor version of Core to 2.5.0
* Added support for **IDV Proxy**
* Added support for the step of **NFC** in IDV
* Fixed the parameter **steps** in the function **newOperation**, which was not parsed correctly in some use cases
* Added **Privacy Manifest** to avoid ITMS errors when uploading the app to the App Store

#### Selphi - Face Capture

* Updated the minor Version of the Core to 2.5.0\
  Created new flavor **FPHISDKSelphiIADComponent** to prevent injection attacks

#### SelphID - Document Capture

* New Widget Version: 1.36.3
* Updated the minor version of Core to 2.5.0
* Added captured parameters to the Flow to use them as input for the document NFC reader

#### Tokenize

* Updated the minor version of Core to 2.5.0

#### Phingers - Fingerprint Capture

* Updated the minor version of Core to 2.5.0
* Updated the major Version of **SelphID Document’s Reader (SDR)** to 2.0.0
* Refactored **ErrorType.TIMEOUT** to **ErrorType.SDK\_TIMEOUT**
* New modes (**VideoIdMode.DOCUMENT\_FRONT** and **VideoIdMode.DOCUMENT\_FRONT\_BACK**) for document-only capture

#### VoiceId - Voice Capture

* Updated the minor version of Core to 2.5.0
* Refactored **ErrorType.TIMEOUT** to **ErrorType.SDK\_TIMEOUT**

#### Video Call

* Updated the minor version of Core to 2.5.0
* Refactored **ErrorType.TIMEOUT** to **ErrorType.SDK\_TIMEOUT**
* Fixed duplicate Tracking event when launching the diagnostic

#### VideoID - Video Identification

* Updated the minor version of Core to 2.5.0
* Updated the major Version of **SelphID Document’s Reader (SDR)** to 2.0.0
* Refactored **ErrorType.TIMEOUT** to **ErrorType.SDK\_TIMEOUT**
* New modes (**VideoIdMode.DOCUMENT\_FRONT** and **VideoIdMode.DOCUMENT\_FRONT\_BACK**) for document-only capture

#### Video Recording

* Updated the minor version of Core to 2.5.0
* Refactored **ErrorType.TIMEOUT** to **ErrorType.SDK\_TIMEOUT**
* Added timestamp at the bottom of video recordings
* Fixed recording stopping after finishing NFC reading in the IDV Flow
* Fixed crash when the component was used with empty License

***

#### Version: 2.4.X

**October 2025**

#### General

* Added **integrationId** as a required parameter (cannot be omitted); added to **TrackingConfigurationData** (SDK Core)
* Removed unnecessary unique event **sendAdvanceTracking** (SDK Core)
* Adapted functions from **ITrackingController** to work with IDV Flows (SDK Core)
* Created extensions **Data** and **FileManager**; refactored **ITrackingController** (SDK Core)
* Refactored **NO\_OPERATION\_CREATED\_ERROR → OPERATION\_NOT\_CREATED** (SDK Core)
* Returned **OcrDiagnostic** in **OCR\_ERROR** in VideoID (SDK Core)
* Updated **LicenseChecker** to v2.3.3 (SDK Core)
* Fixed **attributedText** and **setBold()** in **UITextView** (SDK Core)
* Returned **operationId** in each **SdkFlowResult** (SDK Main)
* Updated Core dependency to v2.3.3; removed **flowPreview** and **cache** in **GetFlowService** (SDK Main)
* Added **integrationId** for **VideoRecording**; event **finish flow change\_step** (SDK Main)
* Public method to retrieve Flow IDs and types; classes refactored to the directory **Data** (SDK Main)
* Removed **activateFlow** and **iaModels** of **initSdk()**; **FlowData IDs** and **operationType** public (SDK Main)
* Refactored **SDKController** and **Flow**; **IdvLicense**; **LicensingComponent** internal (SDK Main)
* New public Customization method; fixes for **operationId**, **customization.colors**, **licensing check**, **step reference** (SDK Main)

#### Tracking - Platform connection

* Cleanup and refactoring of the code and internal models
* Updated Tracking events from **TrackingController** and calls to assets; **trackingWidget v1.1.19 → v1.1.22**
* Added **authenticationId**; **Core v2.3.3**; **integrationId** in **configurationData**
* Removed unnecessary unique event **sendAdvanceTracking**
* Automatic country detection in **sendDocumentData**; full IDV Tracking
* Refactored **NO\_OPERATION\_CREATED\_ERROR → OPERATION\_NOT\_CREATED**; SDK v2.4.0
* Adapted to **Tracking v1.0.16** to improve stability

#### Selphi - Face Capture

* Widget with full Customization; **setParam** for **UseSdkCustomization**
* New Widget Version: **5.19.2**
* **AuthenticationId**; conditional inclusion of **includeClip**; **ACTIVE\_LIVENESS\_ERROR**; **livenessDiagnostic** in **SELPHI\_TIMEOUT**
* Release IDV v2.4.0; **SelfieData** for IDV Tracking; **LivenessDiagnostic** in Core
* Core v2.3.3; Widget and **SelphiKMP** updated; removed **cameraId**
* **sendSelfie** on success; unified errors in Tracking; Integration **SelphiKMP** and **KMP Widget**
* Refactors: logic, error handling, folder structure, **SelphiWidgetController.start()** for invalid License
* Fixes: **stepData**, **videoFilename**, **Liveness** in Tracking, mode **MOVE**, **bestImage**, conflicts with Core

#### SelphID - Document Capture

* New Widget Version: **1.35.2**; full Customization; **setParam** for **UseSdkCustomization**
* Adapted to **trackingWidget v1.1.23**; **generateRawImages** by default **true**
* Initialization flag always **true**; fixes in **stepData** and **generateRawImages null**

#### Tokenize

* First Release **v2.4.0**
* Source established **fpbtokenizer** from **clienters** for correct Initialization behavior

#### Phingers - Fingerprint Capture

* Updated and adapted to the latest **trackingWidget**; **SDR v1.8.0**; **trackAssets** for IDV
* **sendVideoIdData**; renamed **matchingSidesScore**; removed **OcrDiagnostic** duplicated; unified **Core OCR\_ERROR**
* Improved **ErrorParser**; first stable version **v2.4.0**; **Core v2.3.3**
* Adjusted minimum face size threshold for masked capture
* Fixes: **IdvResultData** only in terminal error; **stepData**; handling of **NETWORK ERROR**

#### VoiceId - Voice Capture

* SDK version **5.3.0**; **ErrorParser** with **toNameError**, **toCodeError**, **toReasonError**
* Core v2.3.3; Matching process **Matching** deprecated (local Matching no longer supported); first Version **v2.4.0**
* UX review of layout and accessibility; fix in **stepData**

#### Video Call

* Updated and adapted to the latest **trackingWidget**; **ErrorParser** (**toNameError**, **toCodeError**, **toReasonError**)
* Core v2.3.3; general UX review for animations, literals, and Flow
* Fixes in **stepData**; fixes in literal names and animations

#### VideoID - Video Identification

* Updated and adapted to the latest **trackingWidget**; **SDR v1.8.0**; **trackAssets** for IDV
* **sendVideoIdData**; renamed **matchingSidesScore**; removed **OcrDiagnostic** duplicated; unified **Core OCR\_ERROR**
* Improved **ErrorParser**; first stable version **v2.4.0**; **Core v2.3.3**
* Adjusted minimum face size threshold for masked capture
* Fixes: **IdvResultData** only in terminal error; **stepData**; handling of **NETWORK ERROR**

#### Video Recording

* Removed **presenter**; return code **VIDEO\_RECORDING\_ACTIVE**; output in **STOPVRController**
* **integrationId** in services; **StopVideoRecordingController** for IDV; **Core v2.3.3**
* Fixes in **stepData** and corner case with active instance

***

#### Version: 2.3.X

**June 2025 / July 2025**

#### General

* **License Manager 0.5.5**; **LicenseChecker** updated (SDK Core)
* **AnalyticsManager** refactored and optimized; **StepData** and **ITrackingController** refactored (SDK Core)
* Helper function **Locale.swift**; **AnalyticsManager** and analytics events (SDK Core)
* Analytics for **Status** and **CheckPermissions**; **Core 2.3.0**; analytics in **IStatusController** (SDK Core)
* Locale/language from **initSdk()**; **AnalyticsManager → IAnalyticsController** (SDK Core)
* Fix import **Foundation** (SDK Core)
* Renamed **AnalyticsManager**; **License Manager 0.5.5**; **Core v2.3.2** (SDK Main)
* IDV encryption (since 2.3.1); full analytics in SDK; language from **initSdk()** (SDK Main)
* **integrationId** optional in **initSdk()**; **FlowPreviewController**; **FlowOffline**; injectable operation (SDK Main)
* Refactor **AnalyticsManager → IAnalyticsController** (SDK Main)
* Fixes: injection **initSdk**, Flow Color Customization, **ColorFlowKeys**, **PR #90** (SDK Main)

#### Licensing

* Core updated to **v2.3.2**; protocol **HTTP → SSH**
* Fixed cached Core dependency during generation

#### Tracking - Platform connection

* **Core v2.3.2**; new **TrackingWidgetErrors**; **IDV** in **TrackingLicense**
* **tracking-widget-kmp v1.1.8**; interface **TrackingController**; **TrackingXWidgetController** for IDV
* **TrackingWidget 1.1.7 → 1.1.5**; improved device identification Integration; SPM for **FPHITrackingWidget-SPM**
* Refactor **sendAdvTracking()**; tests with IDV
* Fixes: **TrackingError public**, enum asset, background-thread, version mismatch between Core and Tracking, crash **initOperation v3**, adjustment of **constraints**

#### Selphi - Face Capture

* Reversible commit with comments/logs for auditing; accessible version (SDK Main 2.3)
* **License Manager 0.5.5**; complete accessibility review; **Core v2.3.1**
* Video asset Tracking with IDV; locale from **initSdk()**; Integration with analytics
* Core v2.3.0; Portuguese; language from **initSdk()**; event Tracking from Widget
* **hasOperationCreated** before **createStep()**; **AnalyticsManager → IAnalyticsController**

#### SelphID - Document Capture

* Widget **1.35.0, 1.34.7, 1.34.6**; **Core v2.3.3**; **MBSDR arm64**; **Widget 1.34.4 → 1.34.6**
* Widget **1.34.3**; scheme **MBSDR**; **SelphIDWidget 1.33.4**; naming **selphidComponent.xcframework**
* Refactor **AnalyticsManager** (reversible); **Core v2.3.2**; **Widget 1.33.1**
* Images as **JPEG 95%**; IDV tests and video asset Tracking; **SelphIDWidget 1.32.1 → 1.32.2**
* **Package-RGL-template**; SPM for **RGL**; **Core v2.3.0**; parsing **licenseManager**; device locale
* Fixes: literals/animations, **Podfile/MBSDR**, revert analytics, compression, **hasOperationCreated**, enums, **AnalyticsManager → IAnalyticsController**, configuration

#### Tokenize

* **Core v2.3.2, v2.3.1, v2.3.0**
* Added validation of empty data before sending it to **Core Tokenizer** to prevent crashes

#### Phingers - Fingerprint Capture

* Dependency **Reader** and models; **documentFaceImageMapTokenized**; keys **OcrMap FRONT/BACK**
* **isReadyToRecord**; mode **FACE + FRONT**; **documentFullImage**; constants **2.3.17**; reduced size
* **documentQualityThreshold**, **faceQualityThreshold**; **TrackAssetsService**, **GetReaderModelsService**
* **Core v2.3.2**, **Reader v1.5.0**; **DetectDocumentService** and OCR; animations and UX; **UIFontMetrics**
* Dependencies **SDR**; side-change logic; document capture overlay; voice capture; **Core Analytics v2.3.0**
* Catalan, Portuguese (PT/BR), Spanish; fixes FRONT/BACK, background thread, memory leaks, captures, literals, **AnalyticsManager → IAnalyticsController**

#### VoiceId - Voice Capture

* **Core v2.3.2**; **UIFontMetrics** for dynamic text scaling; analytics and Tracking events
* **Core v2.3.0**; fix Lottie; component logging; **Voices SDK**; unified with Android
* Pre-check of tips and haptic feedback; fix **hasOperationCreated** before **createStep**; **AnalyticsManager → IAnalyticsController**

#### Video Call

* **2.3.5**: reduced component size and binary size; improved screen sharing; fix mute during screen sharing
* **2.3.3**: **Core v2.3.2**
* **2.3.2**: **UIFontMetrics**; fix **hasOperationCreated** and **fromNib main thread**; **AnalyticsManager → IAnalyticsController**
* **2.3.0**: analytics in SDK; **Core v2.3.0**; unified with Android; Catalan and Portuguese; language from **initSdk()**; layout improvements

#### VideoID - Video Identification

* Dependency **Reader** and models; **documentFaceImageMapTokenized**; keys **OcrMap FRONT/BACK**
* **isReadyToRecord**; mode **FACE + FRONT**; **documentFullImage**; constants **2.3.17**; reduced size
* **documentQualityThreshold**, **faceQualityThreshold**; **TrackAssetsService**, **GetReaderModelsService**
* **Core v2.3.2**, **Reader v1.5.0**; **SDR**; side-switch logic; document capture overlay; voice capture; **Core Analytics v2.3.0**
* Catalan, Portuguese (PT/BR), Spanish; fixes FRONT/BACK, background thread, memory leaks, captures, literals, **AnalyticsManager → IAnalyticsController**

#### Video Recording

* Timestamp in recording metadata; **Core v2.3.2**; service **stopCapture**
* Reference removed **Resources** and screen recording extension; **Core v2.3.1**
* Events: **COMPONENT\_START**, **STOP**, screen sharing permission modal; **Core v2.3.0**
* Fix component name, permissions modal; **AnalyticsManager → IAnalyticsController**

***

#### Version: 2.2.X

**January 2025 / March 2025**

#### General

* Updates **ThemeManager** and **UIView**; **LicenseChecker v2.2.0**; **SdkColor** with **UIColor** (SDK Core)
* **StepData** and **stepData** in **ITrackingController**; **sendAdvanceTracking** (SDK Core)
* Fix **Test.podspec 2.2.1**, **UIColor(hex:)**; interface cleanup **Status** (SDK Core)
* Flow interface customization (SDK Core 2.1); fix **IDiagnosticView Main Thread** (SDK Core 2.1)
* Updated **Core v2.2.2**; licensing; **PR #89**; **Tracking StepData screensharing** (SDK Main)
* Removed **flow preview**; **json → jsonX**; fix flow configuration persistence; manifest **Package-template** (SDK Main)
* **fix\_customization\_flow**; revert incorrect changes; logic removed **flow preview**

#### Licensing

* Core stability and **v2.2.0**; success/failure validation logic removed
* Fix **Tracking StepData screensharing**

#### Tracking - Platform connection

* **XCFrameworks v1.1.0 → v1.1.2**; constants **2.2.1**; **sendAdvanceTrackingEvent()**
* New debug parameter; two new widget errors; **Core v2.2.0**
* **TrackingControllerKMP**; KMP widget; **trackingWidget v1.0.1**; **LocationManager**
* Refactor **TrackingError**; workaround for older Core
* Fixes: crash **advanceTracking()**, **setTrackingError before start()**, compilation, race condition, **tenantId private**

#### Selphi - Face Capture

* Default language = device; back camera flash; **Core (SM-4399)**; **Widget v5.16.3**
* **Back Camera MOVE mode**; **cameraPreferred**; **SelphiWidget v5.16.0**
* Accessible Lotties; navigation and feedback; **PR #74 UX**; error wrapping
* **RawTemplateWidgetController**; **FPBLivenessDiagnostic**; Advance Tracking; **Core v2.2.0**
* Animation customization; **PR #69 literal/UI**; **TutorialTipsConfigurationData** and constants
* Fixes: launch background thread, navigation, widget capture crashes

#### SelphID - Document Capture

* **Core v2.2.2**; **SelphIDWidget v1.31.0 → v1.31.2**; accessible Lotties
* **dismissViewController**; product/workspace **MLRGL**; **Core v2.2.1**; VISA parameters
* **Widget v1.27.2 → v1.28.1**; **SDR v0.32.2**; **Widget v1.27.0**; **TVeryLong → VERY\_LONG**
* **selphIDResult.statistics** for Advance Tracking demo; tutorial info button; full customization
* **Core v2.2.0**; tutorial-only flow
* Fixes: pointer **MLRGL**, **StepData screensharing**, **Widget v1.28.2**

#### Tokenize

* Latest version **FPBTokenizer**; Core compatibility; Tokenizer dependency and breaking changes; **Core v2.2.0**
* Fix error **Tracking StepData** during screensharing

#### Phingers - Fingerprint Capture

* **autoFaceDetection** and camera button; camera selection and custom sources; progress bar and UX
* Dark Mode; diagnostics navigation; refactor **VideoIdSteps**
* Timeout and custom color image; 3-second timeout fallback; image rotation and **StepData**
* **Core v2.2.0**; facial detection and tutorial-less mode; literals
* Fixes: **cameraPreferred**, UI steps, Core conflicts, **successResponse**, facial detection and signature literals

#### VoiceId - Voice Capture

* Updated Core; Dark Mode color support; parameter **minSpeechLength**
* Logs and microphone checks; warning **MultipleSpeakers** yes **enableQualityCheck = false**
* **Voice SDK v4.1.0**; custom animations; tutorial refactor (state-based flow)
* Timeouts and dismiss only in **retryAction**
* Fixes: navigation **TIMEOUT**, cancel/restart recording, **StepData screensharing**, **VoiceEnvironment**, **PrivacyInfo.xcprivacy**

#### Video Call

* **2.2.5**: latest Core; custom sources and camera toggle; **VideoCallController**; mode colors and icons; **timeoutDispatcher**
* **2.2.3**: retry screen and connection recovery; end call when the agent leaves; custom image color; timeout values
* Fixes: **StepData screensharing**, dismiss, false success tracking
* **2.2.0**: **Core v2.2.0**; **extensionName → extensionIdentifier** (breaking); hangout events
* Fixes switch, diagnostics crash, timeout timer, **disableAudio()**

#### Version: 2.1.X

**August 2024 / September 2024 / October 2024**

#### General

* Interface customization **Flow** (SDK Core)
* Added **Selphix Step** (SDK Main)

#### Licensing

* Adapted to **Core v2.1.X**

#### Tracking - Platform connection

* **sdkVersion** in **initOperation**; constants **2.1.1**; **Core v2.1.X**
* Retry in **sendEvents()**; timestamp **AssetResponse Int/String**; **apiKey** in **TrackingLicense** and **Api.shared**
* HTTP headers; removed **token** (**Api.shared**; details **PayloadModel**
* Fixes: parsing, recursion **ITrackingController**, race condition, **libraryPackageVersion**, merge conflicts

#### Selphi - Face Capture

* **CommonCustomization**; **SelphiTheme**; tutorial and tips; **LivenessDiagnostic** in **SelphiResult**
* **Core v2.1.X**; i18n to Core; **RawTemplate tokenizeController**
* Fixes: diagnostic hierarchy, race **SignatureProof**, compilation, Lotties, accessibility, **MOVE (PR #54)**

#### SelphID - Document Capture

* **SelphID 1.26.X**; **SelphIDRGLComponent** via Pods; **CommonCustomization**
* Health animation and accessibility; **Widget v1.25.1**, constants **v2.0.10**
* **Core v2.1.X**; **SignatureProof**; **Main Thread** for widget; previous tutorial tip
* Fixes: **diagnosticViewController**, capture, compilation, Lottie names, **Liveness MOVE**

#### Tokenize

* Adapted to **Core v2.1.X**; implementations moved to extension **Interface** for modularity

#### Phingers - Fingerprint Capture

* **Core v2.1.X**; custom colors, animations, accessibility labels; expanded video area; neutral palette
* Fixes: localization casing, chained tracking race, animation name, and permissions management

#### VoiceId - Voice Capture

* **Core v2.1.X**; chained tracking; **showTutorial = true** by default; neutral palette and constants
* New Lotties, accessibility labels, tags; minimum iOS **11 → 13**; color and icon tint
* **enableCheckQuality**; phrases in environment; duplicate code removed; Core methods; accessibility
* Fixes: permissions and audio playback; **UIView\.fromNib** on the main thread

#### Video Call

* **CommonCustomization** and **themeFlow**; screen sharing and control **shareScreen**
* Custom Lotties, color customization, icon tint; long-call timeout; **Core v2.1.X**
* Fixes: permissions screen, landscape prevention, switch cases, view unwrap, **Package.swift** and template

#### VideoID - Video Identification

* **Core v2.1.X**; custom colors, animations, accessibility labels; expanded video area; neutral palette
* Fixes: localization casing, chained tracking race, animation name, and permissions management

#### Video Recording

* **Core v2.1.X**; **CommonCustomization**; **SdkResult** in success; extensions removed **String**
* Fix broadcast did not start; stop recording outside the app lifecycle

***

#### Version: 2.0.X

**April 2025 / May 2024 / June 2024**

#### General

* **FPHISDKLicenseCheckerComponent 2.0.0**; diagnostics **IStatusController** and tutorial (SDK Core)
* Refactor **launchDiagnostic(...)**; **launchTutorial()** (SDK Core)
* Updates **ErrorType**; **NO\_DATA\_ERROR**; **LICENSE\_CHECKER\_ERROR(String)**; **MISSING\_COMPONENT\_LICENSE\_DATA** (SDK Core)
* Adapted to **Core v2.0.0** (SDK Main)

#### Licensing

* Dependencies and constants aligned with **Core v2.0.0**

#### Tracking - Platform connection

* **Privacy Manifest** and privacy fields; localization **privacyInfo**; **Core v2.0.0**; bundle **.xcprivacy**
* Conditional SIM check — **nil** in iOS **16+**

#### Selphi - Face Capture

* **bestImageTokenized**; retry on timeout; **logImages**; **Core v2.0.0**; **Privacy Manifest**
* License validation and error propagation
* Fix step name **SIGNATURE\_SELPHI\_CONTROLLER → SIGNATURE\_SELPHI\_COMPONENT**
* License callbacks; **TrackAssetType.SELPHI\_SIGNATURE**

#### SelphID - Document Capture

* **SelphIDWidget v1.24.3 – v1.25.0**; retry on timeout; front/back accessibility after timeout
* Constants **v2.0.6**; **DocumentReader v7.1.X**; **Privacy Manifest**; **FPhiSelphIDWidgetiOSSim v1.23.3**
* Fixes: permissions, **selphidwidgetiosSim → selphidwidgetios**, **defaultLocalization**, tutorial frequency, instructional message

#### Tokenize

* **FPBTokenizer v2.0.8**; **bestImageTokenized**; dependencies and **Core v2.0.0**

#### Phingers - Fingerprint Capture

* Widget and constants **v2.0.0**; **Privacy Manifest** and **.xcprivacy**; **Core v2.0.0**, **Video Streaming v4.3.0**, **Lottie v4.4.0**
* Error handling (video and document in logs); retry on timeout
* Fixes: race in library of **video streaming**, blank video and step flow sequence, init background thread, UX (signature, dark mode, permissions)

#### VoiceId - Voice Capture

* **Privacy Manifest**; **Core v2.0.0**; constants; **video streaming to version 4.3.0** and **Lottie 4.4.0**
* **VoiceEnrollmentResult**
* Fixes: phrase display timing, retry timeout, callback and stop recording, localization **privacy info**

#### Video Call

* **Privacy Manifest** and localization; **Core v2.0.0**; constants **v2.0.0**
* Bundle **.xcprivacy**; **video streaming to v4.3.0**, **Lottie v4.4.0**
* Fixes: **appId** from socket response; outdated close arrow icon

#### VideoID - Video Identification

* Widget and constants **v2.0.0**; **Privacy Manifest** and **.xcprivacy**
* **Core v2.0.0**, **video streaming to v4.3.0**, **Lottie v4.4.0**
* Error handling (video and document in logs); timeout retry
* Fixes: race in library of **video streaming**, blank video and step flow sequence, init background thread, UX (signature, dark mode, permissions)

#### Video Recording

* **video streaming** and constants; **Privacy Manifest** and **.xcprivacy**
* **Core v2.0.0** and **video streaming in v4.3.0**
* **UserDefaults reason** in **PrivacyInfo**
* Minor dependencies
* Fix recording session errors; upgrade of **video streaming** temporarily **v4.3.0** until **v4.3.1**

***

#### Version: 1.5.X

**March 2024 / April 2024**

#### General

* Tutorial **Status**; error handling (SDK Core)
* New events and **getExtraParams()**; **signatureProofEvent**; **checkPermissionStatus**; haptics (SDK Core)
* **IStatusableController**, **IFlowController**, **IFlowableController**; **SdkColor**; **ICustomizableController** (SDK Core)
* **retryAction → secondaryAction**; removed **PersonalData**
* **IMethodableController** extends **ITokenizableController**
* **startNextController SdkResult**; **dataString** in **IConfigurableController**
* **Core 1.5.8**; **Flow v2**; **FlowController**; error handling (SDK Main)
* **FlowConfigurationData**; **SdkFlowResult**; **cancelFlow()**; **IStatusController**
* **GetModels IA\_OCR**, **iaModels**; **GetFlowConfiguration**, **GetFlowPreviewConfiguration**
* **ExternalStepController**
* **onlineFlow**; **FlowController.controllers**; **flowOutput unified**
* Removed **newOperation** of **FlowConfigurationData**
* **activateFlow**; **launchNextStep public**
* **cancelFlow automatic**
* **enableTracking**
* IDs and targets
* Customization
* Fixes: **LICENSE\_CHECKER\_ERROR initSdk**, **flowOutput n+1**, step order

#### Licensing

* **Core v1.5.6**
* References **Core v1.5.0**
* Error handling

#### Tracking - Platform connection

* **Core v1.5.8**
* Tracking and flow events architecture
* **Core v1.5.0**
* New platform events
* **osName "iOS"**
* Parameters **Payload**
* **signatureProofEvent**
* Removed **PersonalData**
* Fix signature event, **OCR\_DATA**, **newOperation setupToken**

#### Selphi - Face Capture

* **SignatureSelphi** extends main controller
* **Core v1.5.8**
* Flow and events
* **SignatureSelphiController**
* Platform events
* **vibrationEnabled**
* Haptics
* **SelphiConfigurationData** from JSON
* Initializer **RawTemplateController Data**
* **SelphiFaceLivenessMode.MOVE**
* **extractionTimeout min/max**
* Defaults: **showTutorial**, **showDiagnostic**, **showResultAfterCapture**, **debug**
* No default ZIP fallback
* Fix initialization **RawTemplateController**

#### SelphID - Document Capture

* **Core v1.5.8**
* **FPhiSelphIDWidgetiOSSim**
* **arm64** and **arm64-simulator**
* New platform events
* **extractionTimeout min/max**
* No default ZIP
* **Widget 1.23.2**
* Fix **CANCEL\_BY\_USER** with **showDiagnostic == true**

#### Tokenize

* **Core v1.5.8**
* Compatibility **Core v1.5.6**
* References **Core v1.5.0**
* Error handling

#### Phingers - Fingerprint Capture

* **SignatureVideoId** and network error handling
* **HapticNotification** and vibration
* **Starscream** and constants
* **Core v1.5.6** and settings
* Core and constants
* Diagnostic and flow configuration screens
* Progress bar per step
* Initialization of JSON-based configuration
* Fixes: step tracking naming, URL/API/Tenant null or empty, timeout and signature restart, literals and payload

#### VoiceId - Voice Capture

* Major functional and UI changes
* **Core v1.5.8**
* User interaction and feedback
* Controller extends **IFlowableController**
* **IStatusController**
* **showDiagnostic**
* **vibrationEnabled**
* **FPHIVoiceSDK v3.13.0**
* Platform events
* Timeout **60000 → 30000 ms**
* Haptics
* **RecorderView**
* **startRecording viewDidLoad**
* **extractionTimeout min/max**
* Error handling system

#### Video Call

* **1.5.9**: **Core v1.5.8**; camera and diagnostics permissions; stability and flow control; platform events; **IStatusController**; haptics and **vibrationEnabled**; diagnostics and permissions via **StatusController**; network validation; **extractionTimeout**; fixes URL/apiKey/tenantId null
* **1.5.0**: controller extends **IFlowableController**; error handling system

#### VideoID - Video Identification

* **SignatureVideoId** and network error handling
* **HapticNotification** and vibration
* **Starscream** and constants
* **Core v1.5.6** and settings
* Core and constants
* Diagnostic and flow configuration screens
* Progress bar per step
* Initialization of JSON-based configuration
* Fixes: step tracking naming, URL/API/Tenant null or empty, timeout and signature restart, literals and payload

#### Video Recording

* **Starscream 4.0.8**
* **Core v1.5.4**, **v1.5.6**, **v1.5.8**
* Stability and flow
* New platform events: **VideoRecordingComponent**
