Funding Methods

Options that are available for funding a virtual account

Your VPay virtual accounts may be funded via Bank Transfer, USSD or Bank/Debit Card. Once successful, each option will notify your web hook endpoint with the previously specified success payload format.

However, card and USSD notification payloads will not include the property and may exclude other properties as well.

It is advised that you carefully study the payloads sent for each option and adjust your business logic accordingly.

Option
Integration/Usage Steps
ETA For Webhook

Bank Transfer

1) Provide or display VPay virtual account number (NUBAN) to paying customer. 2) To pay, a user is expected to visit her mobile or web banking app, input the NUBAN as beneficiary, then send desired amount to beneficiary.

10 to 120 seconds

USSD Short Code

1) Provide or display the USSD code format in #2 below to the paying user. 2) To pay, user is expected to dial *User'sBankCode*000*5037+VPayNUBAN+Amount# For instance, a user wishing to fund virtual account with 200 Naira from GTBank would dial *737*000*5037+VPayNUBAN+200# Take note of all symbols (* and + and #)

5 to 10 seconds

Bank/Debit Card

1) Display a button or link or QR code to the following URL: https://topup.vpay.africa/VPayNUBAN Ensure to replace VPayNUBAN with the actual virtual account NUBAN 2) A payment form will be presented to the user to enter card details and authorise payment with OTP or PIN. Mastercard, VIsa and Verve cards are supported.

< 5 seconds

Web hook notifications will be sent repeatedly (up to 10 times) at regular intervals until a successful response is received from your pre-registered web hook endpoint.

In the event of multiple notifications, to prevent duplicate updates to your ledger, ALWAYs store and enforce a check on session_id for new bank transfer notifications. session_id is unique per transfer transaction and so a notification payload with an existing session_id should be disregarded.

Last updated