Skip to main content
POST
/
accounts
/
corporate-virtual-accounts
Create Corporate Virtual Account
curl --request POST \
  --url https://api.usepooler.com/accounts/corporate-virtual-accounts \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "account_type": "business",
  "business_name": "<string>",
  "rc_number": "<string>",
  "corporate_account_type": "company",
  "email": "[email protected]",
  "bvn": "<string>",
  "mobile_number": "<string>",
  "display_name": "<string>",
  "metadata": {}
}
'
{
  "success": true,
  "message": "<string>",
  "stan": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "data": {
    "message": "<string>",
    "reference": "<string>",
    "status": "<string>",
    "account_type": "<string>"
  }
}
Create a new virtual account for receiving payments. Virtual accounts can be used to collect payments from customers and are automatically generated with unique account numbers.

Overview

Virtual accounts are bank accounts that are created on-demand for receiving payments. Each virtual account has a unique account number that customers can send payments to. Funds received in virtual accounts are automatically credited to your main Pooler account.

Request Body

account_type
string
required
Type of account holder: “business”
business_name
string
required
Business name (required for corporate accounts)
display_name
string
Display name for the account
rc_number
string
required
Business RC Number
corporate_account_type
string
required
Type of Business: “company”, “business”, “incorporated_trustees”, “limited_partnersip”, or “limited_liability_partnership”
email
string
required
Email address of the account holder
bvn
string
required
Bank Verification Number (required for Nigerian accounts)
mobile_number
string
required
Mobile phone number
metadata
object
Additional metadata object that can include:
  • business_reg_number: Business registration number
  • country: Country code
  • use_case: Use case description
  • reference: Custom reference

Response

data
object
Virtual account details including:
  • message: Virtual account creation message
  • reference: Reference tied to the virtual account
  • status: The status of the virtual account. The status will always be pending. Webhook event will be sent to you with the final status of the virtual account
  • account_type: The type of account you are trying to create. Business
The account number is unique and can be shared with customers for receiving payments. All payments to this account will be automatically credited to your Pooler account.

Authorizations

Authorization
string
header
required

Bearer token authentication. Include your API key in the Authorization header as: Bearer {your_api_key}

Body

application/json
account_type
enum<string>
required

Type of account holder

Available options:
business
business_name
string
required

Business name (for corporate accounts)

rc_number
string
required

RC Number of the business

corporate_account_type
enum<string>
required
Available options:
company,
business,
incorporated_trustees,
limited_partnersip,
limited_liability_partnership
email
string<email>
required

Email address

bvn
string
required

Bank Verification Number (for Nigerian accounts)

mobile_number
string
required

Mobile phone number

display_name
string

Display name for the account

metadata
object

Additional metadata

Response

202 - application/json

Virtual account created successfully

success
boolean
message
string
stan
string<uuid>
data
object