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.
Frameworks
Section titled “Frameworks”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.
- Start the transaction — a transaction is opened on Prove ID and you get a transaction ID (
transactionId). - Document front — the document is detected in the camera, captured and verified.
- Document back — for documents with a back side, such as the Turkish ID card.
- Hologram — optional; the hologram is checked with a short video.
- NFC — optional; the chip on the document is read and verified.
- Liveness — the user is asked for a short gesture and their face is compared with the document photo.
- Result — the outcome of every check is fetched with the transaction ID.
Supported documents
Section titled “Supported documents”| 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+) |
Requirements
Section titled “Requirements”- 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