Skip to main content
POST
/
v1
/
accounts
/
virtual
Create virtual account
curl --request POST \
  --url https://api.nomba.com/v1/accounts/virtual \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'accountId: <accountid>' \
  --data '
{
  "accountRef": "1oWbJQQHLyQqqf1SwxjSpudeA21",
  "accountName": "Daniel Scorsese",
  "bvn": "12345678",
  "expiryDate": "2026-01-30 12:15:00",
  "expectedAmount": "200.00"
}
'
{
  "code": "00",
  "description": "Success",
  "data": {
    "createdAt": "2023-09-04T07:09:06.900Z",
    "accountHolderId": "01a10aeb-d989-460a-bbde-9842f2b4320f",
    "accountRef": "1oWbJQQHLyQqqf1SwxjSpudeA21",
    "bvn": "12234412345",
    "accountName": "Daniel Scorsese",
    "currency": "NGN",
    "bankName": "Nombank MFB",
    "bankAccountNumber": "9391076543",
    "bankAccountName": "Nomba/Ifeoluwa Adeboye",
    "callbackUrl": "https://webhook.site/98ef100f-5adc-4434-800a-0808h60bd8d7",
    "expired": true
  }
}

Documentation Index

Fetch the complete documentation index at: https://developer.nomba.com/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Nomba authenticates API calls with OAuth2 HTTP bearer tokens. There are two methods of authentication; Client-Credentials method and PKCE (Proof Key for Code Exchange) method. In each of the methods, You will get an ACCESS_TOKEN. You need to use an "Authorization" HTTP header to provide your ACCESS_TOKEN. For example: Authorization: {ACCESS_TOKEN}.

Headers

accountId
string<uuid>
required

The parent accountId of the business.

Example:

"890022ce-bae0-45c1-9b9d-ee7872e6ca27"

Body

application/json

The request payload required to create an account

accountRef
string
required

Account reference

Required string length: 16 - 64
Example:

"1oWbJQQHLyQqqf1SwxjSpudeA21"

accountName
string
required

Account holder's name

Required string length: 8 - 64
Example:

"Daniel Scorsese"

bvn
string

Account holder's BVN. Optional.

Example:

"12345678"

expiryDate
string

Account expiry date. Optional. ⚠️Be careful with this.

Example:

"2026-01-30 12:15:00"

expectedAmount
number<double>

Amount the account can receive. Optional.

Example:

"200.00"

Response

Virtual account creation successful.

code
string
required

Response Code

Example:

"00"

description
string
required

Response description

Example:

"Success"

data
object
required