Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/signing-sdk/face-auth-ios/llms.txt

Use this file to discover all available pages before exploring further.

Before integrating the TAD Signing SDK, confirm that your development environment and backend infrastructure meet the following requirements. Missing any of these will prevent the SDK from building or functioning correctly at runtime.
The minimum iOS deployment target is 16.0. Devices running iOS 15 or earlier are not supported because the SDK depends on passkey APIs introduced in iOS 16.

Development environment

RequirementMinimum version
iOS deployment target16.0
Xcode16.0
Swift5.9
PlatformiOS only (UIKit and SwiftUI compatible)

Bundle ID convention

The demo app uses the prefix uz.tad (e.g. uz.tad.TadSigningDemo). Your production app can use any valid bundle ID prefix, but the prefix you choose must be consistent with your Apple Developer team and the Associated Domains entitlement you configure for passkeys.

Backend requirements

The SDK delegates cryptographic verification and passkey management to a backend service. That service must provide:
  • ES512 public key — an ECDSA P-521 public key in PEM format used to verify signed tokens.
  • Signing API endpoint — a base URL the SDK calls to initiate and complete signing operations (e.g. https://signing.tadi.uz).
  • Relying party domain (rpId) — a registered domain that matches the webcredentials entry in your Associated Domains entitlement. The SDK’s TadSigningConfig.rpId must equal this value exactly.

Required entitlements and permissions

CapabilityKeyPurpose
Associated Domainscom.apple.developer.associated-domainsBinds WebAuthn passkeys to your domain via webcredentials:<domain>
CameraNSCameraUsageDescriptionRequired for face liveness detection during sign-in
Face IDNSFaceIDUsageDescriptionSecures passkey registration and sign-in with biometrics

App Store encryption

Set ITSAppUsesNonExemptEncryption to false in your Info.plist. The SDK uses only standard OS-level encryption (TLS and the Secure Enclave), which is exempt from US export compliance declarations.

Build docs developers (and LLMs) love