Skip to main content

Retrieve BVN with Biometric API

Objective

The Retrieve BVN with Biometric API retrieves all the necessary details about a user's Bank Verification Number (BVN).

info

The BVN provides each customer of Nigerian banks with a unique identity across the banking industry.

InputOutput
Nigeria BVNThe following user data will be retrieved:
  • Bank Verification Number
  • First name
  • Middle name
  • Last name
  • Date of birth
  • Registration date
  • Enrollment bank code
  • Enrollment branch
  • Gender
  • Local Government Area (LGA) of origin
  • Local Government Area (LGA) of residence
  • Marital status
  • Name on bank card
  • Nationality
  • Primary phone number
  • Residential address
  • State of origin
  • State of residence
  • Photo
  • Email address
  • Account level
  • National Identification Number (NIN)
  • Secondary phone number
  • Title
  • Watchlist status

API Endpoint

retrieveBVNwithBiometric

Overview

The API is RESTful and uses standard HTTP verbs and status codes. The responses are in JSON format and you should upload all images and files as form-data through a POST request.

Authentication

You need a unique pair of application ID (appId) and application key (appKey) from HyperVerge to verify your identity for accessing the API.

API Request Details

Method - POST

Headers

ParameterMandatory or OptionalDescriptionAllowed Values
content-type MandatoryThis parameter defines the media type for the request payloadapplication/json
appId MandatoryThe application identifier shared by HyperVerge. You can find the details in the dashboard's credentials tab.This should be a unique value
appKey MandatoryThe application key shared by HyperVerge. You can find the details in the dashboard's credentials tab.This should be a unique value
transactionIdMandatoryA unique identifier for tracking a user journeyThis should be both unique and easily associated with the user's journey in your application(s)

Inputs

The following table provides the details of the fields required for the API's request body.

ParameterDescriptionMandatory or OptionalAllowed ValuesDefault Value
bvnNigeria Bank Verification Number of the userMandatoryThe value must start with a zeroNot Applicable

Sample Request

The following code shows a standard curl request for the API.

curl --location --request POST 'https://zaf.thomas.hyperverge.co/v1/retrieveBVNwithBiometric' \
--header 'Content-Type: application/json' \
--header 'appId: <Enter_the_HyperVerge_appId>' \
--header 'appKey: <Enter_the_HyperVerge_appKey>' \
--header 'transactionId: <Enter_the_HyperVerge_transactionID>' \
--data '{
"bvn": "<Enter_the_BVN_Number>"
}'

Success Response Sample

The following is a sample of a success response from the API.

{
"status": "success",
"statusCode": "200",
"result": {
"detail": "<Returns_the_verification_detail>",
"response_code": "<Returns_the_response_code>",
"bvn_data": {
"bvn": "<Returns_the_bvn>",
"firstName": "<Returns_the_first_name>",
"middleName": "<Returns_the_middle_name>",
"lastName": "<Returns_the_last_name>",
"dateOfBirth": "<Returns_the_date_of_birth>",
"registrationDate": "<Returns_the_registration_date>",
"enrollmentBank": "<Returns_the_enrollment_bank_code>",
"enrollmentBranch": "<Returns_the_enrollment_branch>",
"gender": "<Returns_the_gender>",
"lgaOfOrigin": "<Returns_the_lga_of_origin>",
"lgaOfResidence": "<Returns_the_lga_of_residence>",
"maritalStatus": "<Returns_the_marital_status>",
"nameOnCard": "<Returns_the_name_on_card>",
"nationality": "<Returns_the_nationality>",
"phoneNumber1": "<Returns_the_phone_number1>",
"residentialAddress": "<Returns_the_residential_address>",
"stateOfOrigin": "<Returns_the_state_of_origin>",
"stateOfResidence": "<Returns_the_state_of_residence>",
"photo": "<Returns_the_photo>",
"email": "<Returns_the_email>",
"levelOfAccount": "<Returns_the_level_of_account>",
"nin": "<Returns_the_nin>",
"phoneNumber2": "<Returns_the_phone_number2>",
"title": "<Returns_the_title>",
"watchListed": "<Returns_the_watchlisted_status>"
}
}
}

Success Response Details

Here's the converted table with descriptions for each field in the JSON response:

ParameterTypeDescription
statusstringThe status of the request, indicating success or failure.
statusCodestringThe HTTP status code of the request.
resultobjectThe result object containing detailed information about the verification.
result.detailstringA message providing more details about the verification result.
result.response_codestringThe response code indicating the specific outcome of the verification process.
result.bvn_dataobjectThe BVN (Bank Verification Number) data object containing detailed information about the user.
result.bvn_data.bvnstringThe Bank Verification Number of the user.
result.bvn_data.firstNamestringThe first name of the user.
result.bvn_data.middleNamestringThe middle name of the user.
result.bvn_data.lastNamestringThe last name of the user.
result.bvn_data.dateOfBirthstringThe date of birth of the user.
result.bvn_data.registrationDatestringThe date when the user registered their BVN.
result.bvn_data.enrollmentBankstringThe code of the bank where the user enrolled for their BVN.
result.bvn_data.enrollmentBranchstringThe branch of the bank where the user enrolled for their BVN.
result.bvn_data.genderstringThe gender of the user.
result.bvn_data.lgaOfOriginstringThe Local Government Area (LGA) of origin of the user.
result.bvn_data.lgaOfResidencestringThe Local Government Area (LGA) of residence of the user.
result.bvn_data.maritalStatusstringThe marital status of the user.
result.bvn_data.nameOnCardstringThe name of the user as it appears on their bank card.
result.bvn_data.nationalitystringThe nationality of the user.
result.bvn_data.phoneNumber1stringThe primary phone number of the user.
result.bvn_data.residentialAddressstringThe residential address of the user.
result.bvn_data.stateOfOriginstringThe state of origin of the user.
result.bvn_data.stateOfResidencestringThe state of residence of the user.
result.bvn_data.photostringThe photo of the user.
result.bvn_data.emailstringThe email address of the user.
result.bvn_data.levelOfAccountstringThe level of the user's bank account.
result.bvn_data.ninstringThe National Identification Number (NIN) of the user.
result.bvn_data.phoneNumber2stringThe secondary phone number of the user.
result.bvn_data.titlestringThe title of the user (e.g., Mr., Mrs., Miss).
result.bvn_data.watchListedstringIndicates whether the user is on a watchlist.

Error Response Samples

The following are some sample error responses from the API.

The following is a sample response for missing BVN.

{
"status": "failure",
"statusCode": "400",
"error": "bvn is required"
}

Failure and Error Response Details

A failure or error response from the module contains a failure status, with a relavant status code and error message. The following table lists all error responses.

Status CodeError MessageError Description
400This value does not match the required patternThe provided BV does not match the required pattern
400Input Validation Error: does not meet minimum length of 11The provided BVN number does not meet the minimum length of 11
401Missing/Invalid credentialsThe appId / appKey is missing or incorrect in the request headers.
403Access DeniedPlease contact Hyperverge
500Internal Server ErrorPlease check the request headers or contact the HyperVerge team for resolution
503Server BusyPlease contact the HyperVerge team for resolution
Was this helpful?
Ask AIBeta
Hi! How can I help?
Ask me anything about HyperVerge products, APIs, and SDKs.
Try asking: