Transfers may return a
pending status if the payment network does not respond within the timeout window. The transaction is retried automatically and a webhook is dispatched when the final status is known.List supported banks
GET /transfer/banks
Returns all banks currently supported for outward transfers, sorted alphabetically by name.
Request
string
required
Bearer token.
Response
boolean
true on success.array
Array of bank objects.
Examples
Response
Resolve account details
GET /transfer/account/details
Performs a name enquiry (account lookup) to verify a beneficiary account before sending a transfer. You must call this endpoint and confirm the returned accountName before initiating a bank transfer via NIP — the NIP route requires the session ID from this lookup.
Request
string
required
Bearer token.
string
required
The beneficiary’s bank account number.
string
required
The beneficiary’s bank sort code. Obtain valid sort codes from
GET /transfer/banks.Response
boolean
true on success.object
Examples
Response
Send a bank transfer
POST /transfer/bank
Sends funds from your merchant settlement wallet to any Nigerian bank account. Charges, VAT, and optional stamp duty are deducted from your wallet on top of the transfer amount.
The transfer goes through immediately when called via API key. Requests made through the web dashboard enter a maker-checker approval queue and do not transfer funds until approved.
Request
string
required
Bearer token. Requires
MANAGE_TRANSFER permission.number
required
Transfer amount in kobo. Must be greater than 0.
string
required
Destination bank sort code. Obtain valid codes from
GET /transfer/banks.string
required
Destination account number.
string
required
Beneficiary name as resolved by
GET /transfer/account/details. Required for NIP transfers.string
Transfer narration/description visible to the beneficiary.
object
Arbitrary key-value data attached to the transaction. Returned in webhook payloads.
Response
boolean
true when the request was accepted. Note: status: true with transfer.status: "pending" means the transfer is being retried in the background.string
Status message.
object
Transfer result object.
Examples
Response (success)
Response (pending)
Customer-initiated bank transfer
POST /transfer/bank/customer
Sends a bank transfer where the funds are debited from a specific customer’s wallet rather than from your merchant settlement wallet. The customer’s tier limits, daily limits, and minimum balance rules apply.
Request
string
required
Bearer token. Requires
MANAGE_TRANSFER permission.string
required
UUID of the customer whose wallet will be debited.
number
required
Transfer amount in kobo. Must be greater than 0.
string
required
Destination bank sort code.
string
required
Destination account number.
string
required
Beneficiary name as returned by account lookup.
string
Transfer narration.
string
Your unique reference for this transaction. If omitted, one is auto-generated.
object
Arbitrary metadata attached to the transaction.
Response
Same structure asPOST /transfer/bank. The transfer object is returned with the same fields.
Examples
Response
Error responses
400 Failed (funds reversed)
400 Account Lookup Required
