Results
When the steps are done, fetch the transaction’s result with its ID:
import ProveIDApiClient
IDServiceAPI.getIdInformationWithTidAndLayer(tid: transactionId) { result in switch result { case .success(let info): // SaveIDModel let controls = info.controlResults let name = info.name let surname = info.surname let photoBase64 = info.picture showSummary(name, surname, photoBase64, controls) case .failure(let error): showError(error) }}Control results
Section titled “Control results”Every step returns one or more control results (ControlEntryModel):
| Field | Description |
|---|---|
entryType |
Name of the control (e.g. HOLOGRAM, FACE, FACELIVENESSAI) |
entryScore |
Score between 0 and 1 |
entryInterpretation |
Whether the control passed |
entryDesc |
Description |
entryDate |
Date |
To read a single control:
let faceScore = response.controlResults.first { $0.entryType == "FACE" }?.entryScore ?? 0Common controls:
| Control | Meaning |
|---|---|
FACE |
Live face matches the document photo |
FACELIVENESSAI |
Liveness |
FACELIVENESSGESTURE |
The requested gesture was made |
HOLOGRAM |
Hologram detected |
SCREENATTACKFRONT, SCREENATTACKBACK |
Document shown from a screen |
PHOTOSHOPCONTROL |
Image tampering |
CLPHOTOCOPYDETECTION |
Photocopy check on the device |
MRZDOCNUMCHECKSUMVALID |
MRZ document number check |
MRZBIRTHDATECHECKSUMVALID, MRZEXPDATECHECKSUMVALID |
MRZ date checks |
CHIPDETECTION |
Chip present |
LWICONLYFRONTFACESIMILARITY |
Face matches the ID card held with it |