For the complete documentation index, see llms.txt. This page is also available as Markdown.

Start Liveness Verification

Calling startSDK

Use CafFaceLivenessLiteSDK.startSDK with the required parameters from your view controller.

Parameter
Required
Description

viewController: UIViewController

Yes

The presenting view controller

mobileToken: String

Yes

Usage token associated with your CAF account

personId: String

Yes

User identifier

customLocalization: String?

No

Strings table name for custom iProov localization (e.g., "stringsBundle")

customLocalizationBundle: Bundle?

No

Bundle containing the custom strings table (iProov options.stringsBundle)

uiCustomization: CerttaUiCustomization?

No

Visual branding for the liveness screen (default: nil, no customization)

environment: CafEnvironment

No

.dev, .beta, .prod (default: .prod)

loading: Bool

No

Show SDK loading screen (default: true)

Example

import CafFaceLivenessLite

class ViewController: UIViewController {
    private let sdk = CafFaceLivenessLiteSDK()

    override func viewDidLoad() {
        super.viewDidLoad()
        sdk.delegate = self
    }

    func startLiteLiveness() {
        sdk.startSDK(
            viewController: self,
            mobileToken: "your_mobile_token",
            personId: "your_person_id",
            customLocalization: nil,
            customLocalizationBundle: nil,
            environment: .prod,
            loading: true
        )
    }
}

Custom localization with a framework bundle

When custom Localizable.strings ship inside a framework (or another non-main bundle), pass both the table name and the bundle:

Localization reference: iProov Localization

UI customization

To brand the liveness screen — header bar, guidance prompt, area around the face oval and font — pass a CerttaUiCustomization through the uiCustomization parameter. Available from 2.1.0 and fully optional. See UI Customization.

Last updated