National Identification Number Verification

Kenyan National ID Number Lookup API

To perform verification on a Kenyan National ID Number, make a POST request to the following endpoint;

https://api.korapay.com/merchant/api/v1/identities/ke/national-id

Data Validation for Kenyan National ID Number

Data validation for Kenyan National ID Number enables you to verify the national ID number and validate the information in the government database against the data parameters you provided when the verification request was made. You can validate the first_name, last_name, and date_of_birth by passing this information in the request body to get a true or false response on whether they match the information in the database. Use the same endpoint above to make this request.

Facial Matching for Kenyan National ID Number

Facial matching for Kenyan National ID Number enables you to compare the ID holder’s image in the government database against the image provided when the verification request was made. A confidence score of how well the images match will be returned. Use the same endpoint above to make this request.


The request body should have the following parameters:

{
   "id": "25219766",
   "verification_consent": true
}
{
   "id": "25219766",
   "verification_consent": true,
   "validation": {
       "first_name": "John",
       "last_name": "Doe",
       "date_of_birth": "1988-04-04"
   }
}
{
   "id": "25219766",
   "verification_consent": true,
   "validation": {
       "first_name": "John",
       "last_name": "Doe",
       "date_of_birth": "1988-04-04",
       "selfie": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQ"
   }
}

The fields in this request include:

FieldData TypeDescription
idStringRequired - the ID number
verification_consentBooleanRequired - this indicates that subject has given consent to perform this verification. This must be true for the check to be performed.
validation.first_nameStringOptional (required for data matching) - the first name of the ID holder to be compared with ID information in the government database.
validation.last_nameStringOptional (required for data matching) - the last name of the ID holder to be compared with ID information in the government database.
validation.date_of_birthStringOptional (required for data matching) - the date of birth of the ID holder to be compared with ID information in the government database.
validation.selfieStringOptional (required for facial matching) - the selfie/photo of the ID holder to be compared with ID information in the government database.

The response to this request would look like this:

{
   "status": true,
   "message": "National identity verified successfully",
   "data": {
       "reference": "VR-8YgAZW4R8WUZRJh2M",
       "id": "25219766",
       "id_type": "ke_national_id",
       "first_name": "Josephine",
       "last_name": "Okunmu",
       "middle_name": "Mary",
       "full_name": "Josephine Mary Okunmu",
       "date_of_birth": "2002-06-03",
       "nationality": "KENYAN",
       "gender": "female",
       "type": "id",
       "image": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQ",
       "validation": {
           "first_name": {
               "value": "Viola",
               "match": false
           },
           "last_name": {
               "value": "doe",
               "match": false
           },
           "date_of_birth": {
               "value": "1988-10-16",
               "match": false
           },
           "selfie": {
               "value": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQ",
               "match": true,
               "confidence_rating": 94
           }
       },
       "requested_by": "API User"
   }
}

A webhook notification will also be sent to your application immediately the national ID number verification is completed.