autentikar
iOS

Quick Start

Integrate and start Autentikar SDK in a native iOS application.

Requirements

  • iOS 15.0 or later
  • An existing Xcode project
  • Swift Package Manager
  • Autentikar API credentials
  • Your application's BundleID registered with Autentikar
  • A code obtained from the Autentikar start endpoint

If your BundleID is not registered, contact [email protected].

Permission

Add a camera usage message to the application Info.plist:

<key>NSCameraUsageDescription</key>
<string>We use the camera to verify your identity.</string>

Add the packages

Add the public Swift packages required by your flow. Core is mandatory; the capture packages are optional.

Core

Required orchestration and server communication.

UnifiedID

Optional FaceTec liveness and ID capture.

PhotoIDScan

Optional native ID-card capture.

Register the flow steps

Import and register only the modules required by the flow. This is normally done in AppDelegate so Core can resolve each step when the app starts.

MainActivity.swift
import AutentikarPhotoIDScan
import AutentikarCore
import AutentikarUnifiedID

class AppDelegate: NSObject, UIApplicationDelegate {
    func application(
        _ application: UIApplication,
        didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? = nil
    ) -> Bool {
        let customization = AutentikarCoreCustomization()
        customization.showLogo = true

        AutentikarManager.shared.setCustomization(customization)
        AutentikarManager.shared.register(
            for: AutentikarPhotoIDScanManager.shared.setProtocol(.cardCapture)
        )
        AutentikarManager.shared.register(
            for: AutentikarUnifiedIDManager.shared.setProtocol(.faceTecLiveness)
        )

        return true
    }
}

Configure the SDK

Set the alias assigned by Autentikar. Production is the default stage; set it explicitly when you want the configuration to be sandbox.

AutentikarConfiguration.shared.info = true
AutentikarConfiguration.shared.alias = "test"
AutentikarConfiguration.shared.stage = .production

The stage selects the service URL used by the SDK.

Start the flow

Import Core and start the SDK from the parent view controller. The with value is the link returned when the flow was created.

MainActivity.swift
import AutentikarCore

AutentikarManager.shared.start(self, with: "DCubR2_504g") { error in
    // The SDK could not start. Present or log the error.
}

The arguments are:

  • viewController: the parent view controller that presents the verification flow.
  • with: the flow link generated by the start endpoint.
  • onError: called when the SDK cannot begin the authentication process.

Receive the final state

Conform the presenting view controller to AutentikarCoreDelegate to receive the SDK result:

AutentikarCoreDelegate only indicates that the instance has finished its lifecycle; to obtain the result of the instance, use the status endpoint.
MainActivity.swift
extension AutentikarViewController: AutentikarCoreDelegate {
    func failed() {
        dismiss(animated: true)
    }

    func success() {
        dismiss(animated: true)
    }
}

Customize the experience

The Core, UnifiedID, and PhotoIDScan interfaces can be adapted to your application's branding. Continue with UI customization.

Copyright © 2026