Overview
Three tiers of passport validation are available, from document-only OCR/MRZ validation through to full liveness detection.
Document Only Validate passport via MRZ/OCR and authenticity checks
Document + Photo Validate passport and match against a selfie
Document + Photo + Liveness Full validation with liveness detection
Validate Passport
POST /Citizen/PassportValidation
curl -X POST "https://citizen.uat.securecitizen.cloud/Citizen/PassportValidation" \
-H "Authorization: Bearer <access_token>" \
-H "Content-Type: application/json" \
-d '{
"ConsentReceived": true,
"DocumentImage": "<base64_passport_photo_page>",
"CRef": "REF00001"
}'
Validate Passport + Photo
POST /Citizen/ValidatePassportAndPhoto
curl -X POST "https://citizen.uat.securecitizen.cloud/Citizen/ValidatePassportAndPhoto" \
-H "Authorization: Bearer <access_token>" \
-H "Content-Type: application/json" \
-d '{
"ConsentReceived": true,
"DocumentImage": "<base64_passport_photo_page>",
"FaceString": "<base64_selfie>",
"CRef": "REF00001"
}'
Validate Passport + Photo + Liveness
POST /Citizen/ValidatePassportAndPhotoWithLiveness
curl -X POST "https://citizen.uat.securecitizen.cloud/Citizen/ValidatePassportAndPhotoWithLiveness" \
-H "Authorization: Bearer <access_token>" \
-H "Content-Type: application/json" \
-d '{
"ConsentReceived": true,
"DocumentImage": "<base64_passport_photo_page>",
"FaceString": "<base64_selfie>",
"CRef": "REF00001"
}'
Response
{
"response_object" : {
"ocr_result" : {
"document_number" : "A12345678" ,
"validation_passed" : "valid" ,
"comparison_field_list" : [
{
"field_name" : "DOCUMENT_NUMBER" ,
"mrz_value" : "A12345678" ,
"visual_zone_value" : "A12345678" ,
"mrz_visual_match_ind_tristate" : "true" ,
"valid_ind_tristate" : "true"
},
{
"field_name" : "ISSUING_STATE_CODE" ,
"mrz_value" : "ZAF" ,
"valid_ind_tristate" : "true"
},
{
"field_name" : "DATE_OF_BIRTH" ,
"mrz_value" : "1990-01-01" ,
"valid_ind_tristate" : "true"
},
{
"field_name" : "SURNAME" ,
"mrz_value" : "DOE" ,
"visual_zone_value" : "DOE" ,
"mrz_visual_match_ind_tristate" : "true" ,
"valid_ind_tristate" : "true"
}
],
"image_list" : [
{
"image_name" : "Portrait 1" ,
"base64_image" : "<base64_portrait>"
}
]
}
},
"result" : true ,
"result_code" : {
"name" : "Success" ,
"id" : 0
},
"Status" : "Success"
}
Passport responses use MRZ (Machine Readable Zone) fields in addition to visual zone and barcode fields. The mrz_value field contains the value extracted from the passport’s MRZ strip.