Create Fixed Account
Learn how to create an account
What this means
When you create an account for a customer, it means that your customer now owns a bank account with Banc Corp Microfinance Bank and this account is subject to any and all CBN rules and regulations that apply to financial institutions with banking licences.
However, it also means that you as an organization are the custodian and admin/manager of these accounts. Instead of interacting directly with the customer, we interact with you. Read our Terms of Service to learn more.
Getting started
Creating a Fixed Account is very easy. It can be done in just one step by calling the "Create Fixed Account" endpoint.
curl --request POST \
--url https://api.blochq.io/v1/accounts \
--header 'accept: application/json' \
--header 'authorization: Bearer sk_live_64520e0201478f5cd412865f64520e0201478f5cd4128660' \
--header 'content-type: application/json' \
--data '
{
"customer_id": "64105f5d7f1b4b36103f870e",
"preferred_bank": "Wema",
"alias": "car"
}
'
Name | Required? | Description |
---|---|---|
customer_id | Yes | This is the unique id of the customer you want to create an account for. {{CustomerID}} should be replaced with the actual id. |
preferred_bank | Yes | This is the preferred bank account you want to create and issue to your customer. The available values are "Banc Corp" or "Wema". |
alias | No | This is for adding extra customization to the Account Holder's name. This is optional. |
Important to Note:
To create and issue Wema Bank account number, you must pass
"preferred_bank": "Wema"
alongside the rest of your parameters.
About "alias"
Alias is a feature that allows you to add custom suffixes to the account holder's name. By default, the account holder's name is the customer's name, as registered in your Bloc workspace.
Since you can create multiple accounts for the same customer, Alias allows customers to add more information to identify the created accounts separately.
For example, if Tunde Oluwayomi is a customer and you want to create an account for his car expenses, you could pass the request below and his account name will be Tunde Oluwayomi - Car.
{
"customer_id": "hf19020138sh1219s9h911201",
"alias": "Car";
}
Helpful Tip:
The value of the alias attribute is case-sensitive. This means that "car" will be "Tunde Oluwayomi - car" instead.
What next?
If the "customer_id" exists, here is what a successful response looks like:
{
"success": true,
"data": {
"id": "64105fdd7f1b4b36103f870f",
"name": "mas erati - car",
"bvn": "22303240817",
"kyc_tier": "0",
"created_at": "2023-03-14T11:51:57.019276697Z",
"updated_at": "2023-03-14T11:51:57.019276779Z",
"deleted_at": "0001-01-01T00:00:00Z",
"status": "Open",
"environment": "test",
"organization_id": "640b045929eb9cf45bc720c9",
"balance": 0,
"currency": "NGN",
"frequency": 0,
"frequency_count": 0,
"meta_data": {},
"customer_id": "64105f5d7f1b4b36103f870e",
"customer": {
"id": "64105f5d7f1b4b36103f870e",
"full_name": "erati mas",
"phone_number": "08044226688",
"organization_id": "640b045929eb9cf45bc720c9",
"environment": "test",
"email": "[email protected]",
"country": "",
"group": "main",
"status": "active",
"created_at": "2023-03-14T11:49:49.839Z",
"updated_at": "0001-01-01T00:00:00Z",
"SyncData": {
"ID": null,
"Provider": ""
},
"first_name": "mas",
"last_name": "erati",
"kyc_tier": "0",
"bvn": "22303240817",
"date_of_birth": "0001-01-01T00:00:00Z",
"customer_type": "Personal",
"source": "Banking",
"address": {}
},
"account_number": "2011713547",
"bank_name": "Banc Corp",
"type": "Virtual",
"collection_account": false,
"hide_account": false,
"SkipNumber": false,
"external_account": {},
"alias": "car"
},
"message": "account created"
}
Attribute | Type | Description |
---|---|---|
success | boolean | Lets you know that the API request was successful |
data | object | Contains all of the attributes owned by the virtual account you've just created. |
id | string | The unique id of the account created |
name | string | The full name of the account holder |
bvn | string | The BVN of the account holder |
kyc_tier | string | The KYC tier of the account holder. This is inherited from the KYC tier of the customer it was issued to. KYC is done on a customer, not the account. To increase the KYC tier of an account, you'll need to increase the KYC tier of the customer it is assigned to. |
created_at | string | When the account was created |
updated_at | string | The last time any information in the account was updated |
status | string | The status of the account. It could be frozen, active or closed. |
environment | string | The environment the account was created in. |
organization_id | string | The unique id of the organization that created the account |
balance | integer | The total amount being held by the account. Please note that all amounts are shown in kobo. |
currency | string | The currency of the account |
meta_data | object | You can include extra information from your application here. |
customer_id | string | This is the unique id of the customer the account was issued to |
customer | object | Contains all of the attributes owned by the account holder of the account |
id | string | Unique id of the customer |
full_name | string | Full name of the customer |
environment | string | The environment the customer was created in |
string | The email address of the customer | |
country | string | The country of the customer |
status | string | The status of the customer. It could be active, archived, inactive. |
first_name | string | First name of the customer |
last_name | string | Last name of the customer |
kyc_tier | string | The KYC tier of the customer |
bvn | string | The BVN of the customer |
date_of_birth | string | Date of birth of the customer |
customer_type | string | Type of the customer. We only support "individuals" at the moment. |
source | string | How the customer was added. Learn more |
address | object | Contains the address details of the customer/account holder |
state | string | State of residence of the customer |
city | string | City of residence of the customer |
street | string | Residential street address of the customer |
account_number | string | The unique NUBAN (account number) of the customer/account |
bank_name | string | The bank name of the account being issued. |
type | string | The type of account. Our individual virtual accounts are mostly "savings" accounts. |
collection_account | boolean | Whether it is a collection account or not. |
alias | string | The suffix of the account |
message | string | Summarizes the API response for your application. |
Things to Note
- Depending on the KYC tier of the account holder, the virtual account created will be subjected to limits. To learn more, read: Introduction to KYC.
- If a virtual account goes beyond its limits, it'll be automatically frozen. You'll be contacted for more investigation and to help resolve the issue with your customer.
- All amounts (in requests and responses) are passed in kobo. When reading a response, always divide the amount by 100 to change it into Naira. For example, NGN 100 is passed as
{"amount": 10000}
.
Updated over 1 year ago