# Virtual Account


A Virtual Account is a dedicated, system-generated account assigned to a customer for receiving payments. Each virtual account is uniquely mapped to a customer using their personal details such as first name, surname, account name, and phone number.

Funds paid into a virtual account are automatically tracked and credited to the associated merchant or customer wallet, making reconciliation fast, accurate, and seamless.

Note: Always ensure customer details are accurate, as the virtual account is uniquely generated based on the supplied information. Authentication headers are required for all requests.


Create a Virtual Account

To generate a virtual account for a customer, send a request with the required customer details. The system will create and return a unique virtual account tied to the provided information.

curl -X POST \
  '{{base-url}}/virtual-account/create'

Request Body (JSON)
{
  "firstname": "Taofeek",
  "surname": "Iyanda",
  "account_name": "Taofeek Iyanda",
  "phone": "2349065241914"
}

Field Type Description
Firstname String Customer’s first name Required
Surname String Customer’s last name Required
Account Name String The display name for the virtual account Required
Phone String Customer’s phone number in international format Required

Example :

How Virtual Accounts Work

Once a virtual account is created, customers can make transfers to the account using bank transfer. All payments received are automatically logged and reflected in the merchant’s wallet balance.

Virtual accounts are ideal for:

  • Customer-specific payments
  • Automated transaction tracking
  • Eliminating manual payment confirmation

Tip: A single customer can have one or more virtual accounts depending on your business use case.