Skip to main content

Account creation

Skip to the next section if you already have an account.
To create a new account, specify the type, currency and display_name of the account in your request. You can additionally pass custom data as meta when creating your account.
curl --location --globoff 'https://api.nuvion.dev/accounts' \
--header 'Authorization: Bearer {{$NUVION_API_KEY}}' \
--header 'Content-Type: application/json' \
--data '{
    "type": "debit",
    "currency": "USD",
    "display_name": "Ann Kunde",
    "config": {
        "is_overdraftable": false,
        "overdraft_limit": 0
    }
}'

Retrieving Account information

For existing accounts, use the list accounts endpoint to find the ID of the account you want to issue a virtual bank account number for.
curl --location 'https://api.nuvion.dev/accounts' \
--header 'Authorization: Bearer {{$NUVION_API_KEY}}' \

Generating Bank Account Numbers

Configure the details for the account number you are generating. You’ve got a few configuration options to pick from. Learn more about account configuration here.
ConsiderationConfiguration [param]ExampleRequired
The duration of the generated account details.terminate_after365No
The Bank or Provider to issue your account with.provider_idCHASENo
Whether outgoing transactions are enabled for this account.config.outflow_enabledtrueNo
Whether incoming transactions are enabled for this accountconfig.inflow_enabledtrueNo
Whether or not to restrict outgoing transactions to a list of recipients.config.outflow_allowed_counterparties[]No
Whether or not to allow incoming transactions from a list of customers.config.inflow_allowed_counterparties[]No
curl --location 'https://api.nuvion.dev/account-details' \
--header 'Authorization: Bearer {{$NUVION_API_KEY}}' \
--header 'Content-Type: application/json' \
--data '{
    "account_id": "01HJ5G6R7MXW5ZK2QD6YA8N9F5",
    "config": {
        "outflow_enabled": true,
        "inflow_enabled": true,
        "outflow_allowed_counterparties": [
            "01HJ5G6R7MXW5ZK2QD6YA8N9F6"
        ],
        "inflow_allowed_counterparties": [
            "01HJ5G6R7MXW5ZK2QD6YA8N9F7"
        ]
    },
    "terminate_after": 365,
    "provider_id": "primary_provider"
}'

Account events

When you create an account, Nuvion sends you the following events:
  1. An accounts.created event is sent to your webhook server to indicate that an account was created successfully.
For every account details generation cycle, you’ll also get:
  1. An account_details.created event to indicate that a Bank Account Number was generated and linked to your account.
  2. For changes made to your account details, We’ll also send you an account_details.updated event with details on the update.
{
   "event":"accounts.created",
   "data":{
      "account":{
         "id":"01K6ZX7360026KPNA2SQ6NPNZY",
         "entity_id":"01K3P1JTKG133K4SKFH36F3FN6",
         "type":"checking",
         "currency":"NGN",
         "display_name":"Wonderful Test NGN Account",
         "meta":{
            "external_ref":"ext_acc_12345",
            "purpose":"operational"
         },
         "config":{
            "is_overdraftable":true,
            "overdraft_limit":5000
         },
         "created":1759859936448,
         "updated":1759859936448,
         "deleted":0,
         "balance":{
            "available":0,
            "current":0,
            "overdraft_used":0
         }
      },
      "entity_impact":{
         "entity_id":"01K3P1JTKG133K4SKFH36F3FN6",
         "total_accounts":0,
         "account_type":[
            "checking"
         ],
         "default_account_set":true
      }
   }
}