Test Data

Real ID numbers can only be used in the production environment. To gain access to the production environment please complete the steps outlined in the section Submit Your Company KYC. Then follow the simple steps outlined in the section Go Live.

Below we also provide ID test data that allows you to run an unlimited number of tests in the sandbox environment. The test data will have the same JSON structure as the production environment. To test error conditions you can modify the final digit in the id number. All the id types follow the format in the table below, but the final digit determines what response is received.

Test data is only available for use in the Sandbox. If test data is used in Production an error will be returned with ResultCode 1014 and the ResultText as "Unsupported ID number format".

Country

Country Code

id_type

Format

🇬🇭

Ghana

GH

DRIVERS_LICENSE

B0000000

Ghana

GH

PASSPORT

G0000000

Ghana

GH

SSNIT

C000000000000

Ghana

GH

VOTER_ID

0000000000

Ghana

GH

NEW_VOTER_ID

0000000000

🇰🇪

Kenya

KE

ALIEN_CARD

000000

Kenya

KE

NATIONAL_ID

00000000

Kenya

KE

PASSPORT

A00000000

🇳🇬

Nigeria

NG

BVN

00000000000

Nigeria

NG

NIN

00000000000

Nigeria

NG

NIN_SLIP

00000000000

Nigeria

NG

DRIVERS_LICENSE

ABC000000000

Nigeria

NG

VOTER_ID

0000000000000000000

Nigeria

NG

NATIONAL_ID

0000000000

Nigeria

NG

TIN

00000000-0000

Nigeria

NG

CAC

0000000

🇿🇦

South Africa

ZA

NATIONAL_ID

0000000000000

South Africa

ZA

NATIONAL_ID_NO_PHOTO

0000000000000

How to use the test data

To test various outcomes, change the final digit of the id_number to attain the desired outcome.

There are four Simulated Results to test your integration:

Final Digit

Simulated Result

Result Code

0

Success w/ meta-data return

1012

1

Failure, no record found

1013

2

Invalid ID number format

1014

3

Database unavailable/unknown network issue

1015

4

Success w/ custom meta-data return

1012

How to use the custom meta data return feature

Most of the options using test data will return the same meta data and image every time you access them. In order to test your business logic built around the evaluation of the data we return, or testing our facial verification outcomes, you will need to specify what is being returned by the api call. To use this feature, first run a test where the final digit of the test id number is 0 in order to learn which values you would like to replace. Check the FullData section of the response to see which keys correspond to the values you would like to replace. Then send another request where the final digit of the ID number is 4, and in the partner_params section of the request, add those keys with the values you would like to be returned.

Step 1

Example request:

{
"sec_key": "dv1hmt2IpnhFn5jy|zgkod8hk+lZh",
"partner_params": {
"user_id": "1",
"job_id": "1",
"job_type": 5
},
"id_number": "00000000000",
"country": "NG",
"id_type": "BVN",
"timestamp": 1579641236,
"partner_id": "002"
}

Example response:

{
"JSONVersion": "1.0.0",
"SmileJobID": "0000000001",
"PartnerParams": {
"user_id": "887ceeea-e9fd-4f96-aa58-d4b12d0b5f98",
"job_id": "985c594e-7e67-4f2e-a6e0-3be127dbb6a0",
"job_type": 5
},
"ResultType": "ID Verification",
"ResultText": "ID Number Validated",
"ResultCode": "1012",
"IsFinalResult": "true",
"Actions": {
"Verify_ID_Number": "Verified",
"Return_Personal_Info": "Returned"
},
"Country": "NG",
"IDType": "BVN",
"IDNumber": "00000000000",
"ExpirationDate": "Not Available",
"FullName": "Doe Joe Leo",
"DOB": "2000-01-20",
"Photo": <base 64 string>,
"PhoneNumber": "12345678900",
"Gender": "Male",
"Address": "10, Workbox, Ojora Close, Victoria Island, Lagos, Victoria Island, Lagos State",
"FullData": {
"watchListed": "No",
"enrollmentBranch": "...",
"stateOfOrigin": "Lagos State",
"stateOfResidence": "Lagos State",
"Gender": "Male",
"title": " ",
"nin": "00000000000",
"nameOnCard": "Doe Joe Leo",
"LevelOfAccount": "Level 2 - Medium Level Accounts",
"registrationDate": "",
"email": "...",
"DateOfBirth": "20-January-2000",
"FirstName": "Doe",
"PhoneNumber2": "",
"PhoneNumber1": "12345678900",
"MiddleName": "Joe",
"ImageBase64": <base 64 string>,
"lgaOfResidence": "Victoria Island",
"nationality": "Nigeria",
"lgaOfOrigin": "...",
"residentialAddress": "10, Workbox, Ojora Close, Victoria Island, Lagos",
"enrollmentBank": "000",
"BVN": "00000000000",
"LastName": "Leo",
"maritalStatus": "Single",
"success": true
},
"Source": "ID API",
"sec_key": "pgVQGn0bs9lcZXK|bO+1x4gG8XKLy",
"timestamp": 1593727494844
}

Step 2

Find the relevant keys for the values you want to change. In this example I want to specify the name and photo to be returned.

Find the exact keys in the FullData section of the values you want to replace

Step 3

Example request:

{
"sec_key": "dv1hmt2IpnhFn5jyzg|kod8hk+lZhxe",
"partner_params": {
"user_id": "887ceeea-e9fd-4f96-aa58-d4b12d0b5f98",
"job_id": "985c594e-7e67-4f2e-a6e0-3be127dbb6a0",
"job_type": 5,
"FirstName": "SMILE",
"MiddleName": "IDENTITY",
"LastName": "EMPLOYEE",
"ImageBase64": <Your base64 image>
},
"id_number": "00000000004",
"country": "NG",
"id_type": "BVN",
"timestamp": 1579641236,
"partner_id": "002"
}

Example response:

{
"JSONVersion": "1.0.0",
"SmileJobID": "0000000001",
"PartnerParams": {
"user_id": "1",
"job_id": "1",
"job_type": 5,
"FirstName": "SMILE",
"MiddleName": "IDENTITY",
"LastName": "EMPLOYEE",
"ImageBase64": <Your base64 image>
},
"ResultType": "ID Verification",
"ResultText": "ID Number Validated",
"ResultCode": "1012",
"IsFinalResult": "true",
"Actions": {
"Verify_ID_Number": "Verified",
"Return_Personal_Info": "Returned"
},
"Country": "NG",
"IDType": "BVN",
"IDNumber": "00000000004",
"ExpirationDate": "Not Available",
"FullName": "SMILE IDENTITY EMPLOYEE",
"DOB": "2000-01-20",
"Photo": <Your base64 image>,
"PhoneNumber": "12345678900",
"Gender": "Male",
"Address": "10, Workbox, Ojora Close, Victoria Island, Lagos, Victoria Island, Lagos State",
"FullData": {
"watchListed": "No",
"enrollmentBranch": "...",
"stateOfOrigin": "Lagos State",
"stateOfResidence": "Lagos State",
"Gender": "Male",
"title": " ",
"nin": "00000000000",
"nameOnCard": "Doe Joe Leo",
"LevelOfAccount": "Level 2 - Medium Level Accounts",
"registrationDate": "",
"email": "...",
"DateOfBirth": "20-January-2000",
"FirstName": "SMILE",
"PhoneNumber2": "",
"PhoneNumber1": "12345678900",
"MiddleName": "IDENTITY",
"ImageBase64": <Your base64 image>,
"lgaOfResidence": "Victoria Island",
"nationality": "Nigeria",
"lgaOfOrigin": "...",
"residentialAddress": "10, Workbox, Ojora Close, Victoria Island, Lagos",
"enrollmentBank": "000",
"BVN": "00000000000",
"LastName": "EMPLOYEE",
"maritalStatus": "Single",
"success": true
},
"Source": "ID API",
"sec_key": "ubIDmC1SvfJ+Tlx1X|3FPYsqCOHh",
"timestamp": 1593729211112
}

Note: not all possible outcomes are included in these Simulated Results — For example, using an ID from a country we don’t support would result in an "Unsupported ID Type and/or Country” result. A full list of possible ID related result codes can be found in the Result Codes and Result Texts section under each Product that uses IDs.