Skip to content

iOS SDK overview

The Prove ID iOS SDK is a toolkit for running ID document capture, NFC chip reading, hologram checks and liveness verification in your iOS app. You design the screens and the order of the flow; the SDK gives you ready-made camera views, an NFC reader and a Swift client for the Prove ID services.

The camera and NFC components come in a single CocoaPods package, techsigncloudlibs. You use these modules from it:

Module Contents
RKYC_iOS Session and server settings (Authentication, EndpointManager), liveness (LivenessController) and hologram (HologramController) views
id_card_detection_ios_wrapper Camera view that detects and captures the ID document on the device (IDCardDetectionWrapper)
id_card_detection_ios_cnn Detection models and settings used by the camera views (CNNUtil)
passport_reader Reads the chip of ID cards and passports over NFC (PassportReader)
LivenessWithCard Optional; liveness with the ID card held next to the face (LWICController)

The Prove ID service calls are made with ProveIDApiClient, a Swift client generated from the Prove ID OpenAPI definition (see Installation).

A typical verification consists of the steps below. You choose which steps run when you start the transaction.

  1. Start the transaction — a transaction is opened on Prove ID and you get a transaction ID (transactionId).
  2. Document front — the document is detected in the camera, captured and verified.
  3. Document back — for documents with a back side, such as the Turkish ID card.
  4. Hologram — optional; the hologram is checked with a short video.
  5. NFC — optional; the chip on the document is read and verified.
  6. Liveness — the user is asked for a short gesture and their face is compared with the document photo.
  7. Result — the outcome of every check is fetched with the transaction ID.
Document idType WrapperCardType
Turkish ID card IDCARD .NEW_ID, .NEW_ID_BACK
Old Turkish ID card OLDIDCARD .OLD_ID
Driving licence DRIVERCARD .NEW_DRIVER, .DRIVER_BACK
Passport PASSPORT .PASSPORT
Blue card BLUECARD .BLUE_CARD, .NEW_BLUE_CARD
Foreign ID card FOREIGNID .FOREIGN_ID_TYPE_A … .FOREIGN_ID_TYPE_D, .WORK_PERMIT
Other card-sized documents — .CUSTOM(width:height:) (iOS 13+)
  • iOS 13.0 or later
  • Xcode with CocoaPods 1.16 or later
  • A camera
  • An iPhone 7 or later for the NFC step
  • Internet access