Create Customer - (Full KYC)
This endpoint is used to create an account for a customer issuing a card. A customer tracking ID is returned which can be used access other resource such as virtual card, USD, GBP, EUR accounts etc.
POST {{base_url}}/business/fullkyc-customer
Headers
Authorization*
String
SECRET_KEY
Request Body
first_name*
Sting
Customer first name e.g John
last_name*
String
Customer lastname e.g Doe
phone_number*
String
Customer mobile number e.g +2347012345689
address*
Object
Check sample request below
bvnno*
String
21345678900
identity*
Object
Check sample request below
birth_date*
String
Date of birth in format yyyy-mm-dd. Must be at least 18 years old. e.g 2000-03-23
nationality*
String
The ISO 3166-1 (three-character) country code representing the nationality of the customer. e.g NGR
middle_name
Stringg
e.g Faith
employement_status*
String
Customer current employment status e.g employed, homemaker, retired, self_employed, student, unemployed
taxno
String
29323239D2
gender*
String
Customer gender i.e male or female
Your secret keys are to be kept secret and only stored on your servers. Do not pass your secret key to the front-end language where it can be exploited.
Sample Identity type - PASSPORT, NIN, DRIVER_LICENSE, VOTER_CARD, NATIONAL_IDENTITY
Take a look at how you might do this:
curl --location '{{base_url}}/business/fullkyc-customer' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer SECRET_KEY' \
--data-raw '{
"first_name": "John",
"last_name": "Doe",
"phone_number": "07012345678",
"bvnno": "20123456780",
"birth_date": "2000-03-23",
"nationality": "NGR",
"middle_name": "Faith",
"gender": "male",
"employment_status": "EMPLOYED",
"email_address": "[email protected]",
"taxno": "29323239D2",
"address": {
"house_no": "5",
"street": "queen Estate, Alen road",
"city": "Ikeja",
"state": "Lagos State",
"country": "Nigeria",
"postal_code": "110320"
},
"identity": {
"idtype": "National identity",
"idno": "24H675B9084",
"expiry_date": "24H675B9084",
"idfront_url": "https://res.cloudinary.com/site/image/upload/v1714257348/idcard2.png",
"idback_url": "https://res.cloudinary.com/site/image/upload/v1714257348/idcard2.png",
"issuance_country": "Nigeria"
}
}'const axios = require('axios');
let data = JSON.stringify({
"first_name": "John",
"last_name": "Doe",
"phone_number": "07012345678",
"bvnno": "20123456780",
"birth_date": "2000-03-23",
"nationality": "NGR",
"middle_name": "Faith",
"gender": "male",
"employment_status": "EMPLOYED",
"email_address": "[email protected]",
"taxno": "29323239D2",
"address": {
"house_no": "5",
"street": "queen Estate, Alen road",
"city": "Ikeja",
"state": "Lagos State",
"country": "Nigeria",
"postal_code": "2323"
},
"identity": {
"idtype": "National identity",
"idno": "24H675B9084",
"expiry_date": "24H675B9084",
"idfront_url": "https://res.cloudinary.com/site/image/upload/v1714257348/idcard2.png",
"idback_url": "https://res.cloudinary.com/site/image/upload/v1714257348/idcard2.png",
"issuance_country": "Nigeria"
}
});
let config = {
method: 'post',
maxBodyLength: Infinity,
url: '{{base_url}}/business/fullkyc-customer',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer SECRET_KEY'
},
data : data
};
axios.request(config)
.then((response) => {
console.log(JSON.stringify(response.data));
})
.catch((error) => {
console.log(error);
});
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '{{base_url}}/business/fullkyc-customer',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"first_name": "John",
"last_name": "Doe",
"phone_number": "07012345678",
"bvnno": "20123456780",
"birth_date": "2000-03-23",
"nationality": "MGR",
"middle_name": "Faith",
"gender": "male",
"employment_status": "EMPLOYED",
"email_address": "[email protected]",
"taxno": "29323239D2",
"address": {
"house_no": "5",
"street": "queen Estate, Alen road",
"city": "Ikeja",
"state": "Lagos State",
"country": "Nigeria",
"postal_code": "2323"
},
"identity": {
"idtype": "National identity",
"idno": "24H675B9084",
"expiry_date": "24H675B9084",
"idfront_url": "https://res.cloudinary.com/site/image/upload/v1714257348/idcard2.png",
"idback_url": "https://res.cloudinary.com/site/image/upload/v1714257348/idcard2.png",
"issuance_country": "Nigeria"
}
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'Authorization: Bearer SECRET_KEY',
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer SECRET_KEY'
};
var request = http.Request('POST', Uri.parse('{{base_url}}/business/fullkyc-customer'));
request.body = json.encode({
"first_name": "John",
"last_name": "Doe",
"phone_number": "07012345678",
"bvnno": "20123456780",
"birth_date": "2000-03-23",
"nationality": "NGR",
"middle_name": "Faith",
"gender": "male",
"employment_status": "EMPLOYED",
"email_address": "[email protected]",
"taxno": "29323239D2",
"address": {
"house_no": "5",
"street": "queen Estate, Alen road",
"city": "Ikeja",
"state": "Lagos State",
"country": "Nigeria",
"postal_code": "2323"
},
"identity": {
"idtype": "National identity",
"idno": "24H675B9084",
"expiry_date": "24H675B9084",
"idfront_url": "https://res.cloudinary.com/site/image/upload/v1714257348/idcard2.png",
"idback_url": "https://res.cloudinary.com/site/image/upload/v1714257348/idcard2.png",
"issuance_country": "Nigeria"
}
});
request.headers.addAll(headers);
http.StreamedResponse response = await request.send();
if (response.statusCode == 200) {
print(await response.stream.bytesToString());
}
else {
print(response.reasonPhrase);
}
Sample response
{
"status": true,
"responsecode": "01",
"message": "Customer account fully created for John Doe",
"trackid": "06211211"
}{
"status": false,
"responsecode": "00",
"message": "Unable to process request. Invalid authorization key",
"trackid": ""
}Last updated
Was this helpful?