Liveness & Biometrics

Face Match

To perform a National Identification Number (NIN) lookup, use the API below for sandbox testing purposes. Below is a sample curl request using test params with appropriate responses.

API Endpoints

BASE_API: https://api.truztcube.com

Access Level & Data Minimization

According to NIMC compliance requirements, verification APIs are designed with tiered access levels. Each access level determines the type and amount of information returned per verification request.

This structure enforces the Data Minimization principle of the data protection policy. It ensures that:

  • Only relevant data is shared with the relying party.

  • Sensitive or unnecessary information is never exposed beyond the authorized scope.

  • Compliance with data privacy regulations is maintained at all times.

Access Level
Data
Credit Unit for Verification

Level 1

Photograph, Names (First, Middle, Last Names), D.O.B., Gender

5

Level 2

Level 1 + Address, Signature, Phone Number

8

Level 3

Level 2 + Maiden Name, Birth Country, Birth State, Birth LGA

12

Level 4

Level 3 + Origin State, Origin LGA, Next Of Kin Data, And All Modifications Carried Out As At The Date Of Verification

15

Level 5

Level 4 + Local Government and biometrics Security information inquiries

20

Sample CURL Request

curl --location -g '{{Base_url}}/v1/nin/face-match/lookup' \
--header 'x-api-key: TEST_aeXdR8Inarssmzm6M8CokJbTh6nAemES'\
--data '{
    "nin": "11111111111",
     "enterprise_id" :"ENT4SANDBOX",
    "request_reason": "creditBackgroundCheck",
    "liveliness_images": [
        {
            "image": "--imagebase64--"
        },
        {
            "image": "--imagebase64--"
        },
        {
            "image": "--imagebase64--"
        },
        {
            "image": "--imagebase64--"
        }
    ],
    "selfie_image": {
        "image": "--imagebase64--"
    },
  "provisionalId": "LOAN12345678",
  "provisionalIdName": "Loan Facility"
}'

Request Headers

Name
Type
Description

api-key*

string

Your organization's secret API key for authentication is available on your Truztcube dashboard.

method*

string

post

Request Body (Array images taken from the user's device for comparison

Name
Type
Description

liveliness_image*

array. of base64 strings, please supply all 4 images

Original image to compare in base64 format

enterprise_id*

String

Unique code provided to an authorized enterprise, which can be found on the NINAuth dashboard

request_reason*

enum

Reason for the verification check: Please review the linked document for the list of reasons and select the one that applies to your use case. see the link below for approved reasons.

selfie_image*

string

base64 image string taken with the device camera

nin*

string

unique 11 digits issued by the NIMC to the ID holder

Expected Response

{
  "status": 200,
  "success": true,
  "message": "Success",
  "data": {
    "biographicData": {
      "birthCountry": "Nigeria",
      "birthLga": "Surulere",
      "birthState": "Lagos",
      "dateOfBirth": "01-01-1900",
      "firstName": "John",
      "gender": "m",
      "lastName": "Doe"
    },
    "biometricData": [
      {
        "biometricSubType": "face",
        "biometricType": "photo",
        "image": "--imagebase64--"
      }
    ],
    "contactData": {
      "phone1": "08100000000"
    },
    "requestId": "AAR1111111AA"
  }
}

Last updated