The Identity Verification SDK for iOS allows you to integrate document verification and selfie capture into your mobile application. It provides a streamlined verification experience that guides users through the process of capturing identity documents and performing liveness checks.
- Document capture and verification (ID cards, passports, driver's licenses)
- Selfie capture with liveness detection
- Configurable verification experience with Mosaic UI or custom UI
- Real-time feedback and recapture handling
- Delegate-based status callbacks for verification lifecycle events
- iOS 13+
- Xcode 11+
Add the SDK to your Podfile:
pod 'IdentityVerification', '~> 1.0'Then run pod install.
The SDK can be initialized using either a plist configuration file or SDK parameters.
Create a TransmitSecurity.plist file in your project:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>credentials</key>
<dict>
<key>baseUrl</key>
<string>https://api.transmitsecurity.io/</string>
<key>clientId</key>
<string>[CLIENT_ID]</string>
</dict>
</dict>
</plist>Initialize the SDK at app launch:
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
TSIdentityVerification.initializeSDK()
TSIdentityVerification.delegate = self
return true
}
}Configure the base server URL based on your region:
| Region | Base URL |
|---|---|
| US | https://api.transmitsecurity.io/ |
| EU | https://api.eu.transmitsecurity.io/ |
| Canada | https://api.ca.transmitsecurity.io/ |
| Australia | https://api.au.transmitsecurity.io/ |
| Japan | https://api.gasne1-ts01.transmitsecurity.io/ |
| Sandbox | https://api.sbx.transmitsecurity.io/ |
| Custom domain | https://<your-domain>.com/ (see Custom domains) |