Skip to main content
The Account Onboarding API lets you create and verify Rolla accounts for your customers through the API — the same flow the Rolla dashboard uses when you onboard a new business or personal account.
White-label partners only. The entire Account Onboarding API (every endpoint under /accounts) is available only to businesses activated as white-label tenants. A non-tenant API key receives 403 Forbidden. Contact Rolla to enable white-label for your business.
Every account you create belongs to the same owner as the business your API key was issued for, and each one must have its own unique email (a duplicate is rejected with 409 ACCOUNT_EMAIL_EXISTS). Accounts created here also appear in the owner’s dashboard account switcher.
Tenant scoping: a single tenant API key can onboard and manage every account in your tenancy. Pass the X-Account-Id header to scope any request to a specific account you’ve onboarded.

Onboarding a business account

1

Create the account

POST /accounts with type: "business" and the business name. You get back an accountId and a draft application.
2

Fill in business details

PUT /accounts/{accountId}/business with business_info, business_address, contact_info and optionally banking_info. Sections merge, so you can save progress across multiple calls.
3

Upload documents

POST /accounts/{accountId}/documents for each required document: certificate of incorporation, articles of association, proof of address, director register, shareholder register and a bank statement.
4

Register related persons

POST /accounts/{accountId}/related-persons for each beneficial owner and director, then generate a hosted KYC link for each with POST .../related-persons/{personId}/kyc-link and share it with them. Each person must complete ID verification and a liveness check.If you already verify these people yourself, Submit Representative KYC Reliance lets you send the passport and liveness capture you collected instead, one call per person.
5

Submit

Check GET /accounts/{accountId}/requirements until readyToSubmit is true — it covers the required fields, the documents, and every related person’s KYC — then call POST /accounts/{accountId}/submit.

Onboarding an individual account

1

Create the account

POST /accounts with type: "individual".
2

Fill in personal details

PUT /accounts/{accountId}/individual with personal information, residential address and employment details.
3

Upload proof of address

POST /accounts/{accountId}/documents with documentType: proof_of_address (bank statement, utility bill or lease agreement issued in the last 3 months).
4

Complete identity verification

POST /accounts/{accountId}/verification returns a verification SDK token for ID upload and liveness checks. Poll GET /accounts/{accountId}/verification for the result.If you already verify identity yourself, Submit KYC Reliance lets you send the passport and liveness capture you collected instead, so your customers are not asked to verify twice.
5

Submit

Once GET /accounts/{accountId}/requirements reports readyToSubmit: true, call POST /accounts/{accountId}/submit.

After submission

Submitted applications are reviewed by the Rolla compliance team. Track progress with GET /accounts/{accountId} — the application status moves from submitted to approved, changes_requested or rejected. Once approved, the account is fully active.

Issuing bank accounts

Approved accounts can be given NGN and USD deposit accounts via Issue Bank Account. The banking provider is selected automatically by currency and account type, and the details it needs are prefilled from the application — check Get Issuance Requirements for anything missing. NGN accounts are issued instantly; USD accounts go through a provider review before the deposit details become available.
API access is scoped per account. To call the API as a newly approved account, create an API key for it from the dashboard after switching to that account.