Skip to content
Sample app demonstrating the use of Ver-ID Credentials SDK for iOS
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
Ver-ID Credentials Sample.xcodeproj
VerIDModels @ dbe7061


Ver-ID Credentials SDK


Ver-ID gives your application the ability to capture and parse government-issued ID cards.

Adding Ver-ID Credentials to Your iOS Project

Using CocoaPods

  1. Add Ver-ID-Credentials in your Podfile:

    pod 'Ver-ID-Credentials', '~> 2.1'
  2. Install the dependencies using pod install.*

  3. Open the generated xcworkspace in Xcode.

*If you receive an error [!] Unable to find a specification for Ver-ID-Credentials (~> 2.1) try running pod repo update before trying pod install again.

Manual Installation

  1. Download zip file containing the Ver- ID Credentials framework.
  2. Unzip the downloaded archive and place VerIDCredentials.framework in your Xcode project's directory.
  3. Download zip file containing the Ver-ID framework.
  4. Unzip the downloaded archive and place VerID.framework in your Xcode project's directory.
  5. Open your project in Xcode.
  6. Select File/Add Files to "your project name"... and add the downloaded VerIDCredentials.framework and VerID.framework.
  7. Select your app target, click on the General tab and scroll down to Embedded binaries.
  8. Click the + button on the bottom of the pane and add VerIDCredentials.framework and VerID.framework.

Project Setup

  1. In Xcode open your project's Info.plist file and add the following entry, substituting [your API secret] for the API secret received in step 1.

    <string>[your API secret]</string>
  2. Download Ver-ID resources and add them to your app:

    1. In your project's folder create a folder called VerIDModels.
    2. Download ... and unzip it in to the VerIDModels folder created in the previous step.
    3. In Xcode select File/Add Files to "your project name"...
    4. Select the downloaded VerIDModels folder and under Options select Create folder references.
  3. As an alternative to the previous step you can place the downloaded zip archive on a remote server. Ver-ID will download its resources on first run of your app making the app download smaller but the first run of the app slower. Add the following entry into your app's Info.plist replacing the URL with the zip file address on your server:

  4. Select your app target and click on the Build Settings tab. Under Build Options set Enable Bitcode to No.

  5. Open your Xcode project and select the *.xcodeproj file in the Project navigator.

  6. Select your target and click on the General tab.

  7. Under Deployment Info check that Deployment Target is set to 11.0 or higher. If you need to target older iOS versions please contact us.

  8. Ver-ID Credentials currently does not support bitcode. Switch to the Build Settings tab, scroll down to Build Options and set Enable Bitcode to No.

  9. Ensure your app sets the NSCameraUsageDescription key in its Info.plist file.

  10. You can now import the Ver-ID Credentials and Ver-ID frameworks in your Swift files using import VerIDCredentials and import VerID.

Using Ver-ID Credentials SDK

  1. Create an instance of IDCaptureSession in your application.
  2. Implement the IDCaptureSessionDelegate protocol in your class.
  3. Assign your class as delegate of the IDCaptureSession instance.
  4. Start the capture session.
  5. Receive the result of the session in your delegate class.



import UIKit
import VerIDCredentials
class MyViewController: UIViewController, IDCaptureSessionDelegate {
	func startCapture() {
        // Settings with a blank ISO ID-1 card. The app will ask the user to select a region.
        let settings = IDCaptureSessionSettings(document: IDDocument(pages: [Page(format: .id1)]))
        let session = IDCaptureSession(settings: settings)
        session.delegate = self
	// MARK: - Ver-ID Credentials Session Delegate
	func idCaptureSession(_ session: IDCaptureSession, didFinishWithResult result: IDCaptureSessionResult) {
		if result.status == .finished, let detectedIdDocument = result.document {
			// The session finished with a captured ID card
			if let face = detectedIdDocument.faces.first?.value {
				// Detected a face on the card
You can’t perform that action at this time.