Skip to main content
Send money from your Glyde wallet to bank accounts in Nigeria and South Africa. Transfers are supported in two currencies: Set currency on the request to choose which wallet to pay out from. If you leave it out, Glyde uses your business’ home currency. See Supported Currencies for details.

How Transfers Work

1

Verify the Recipient

Always verify the bank account before sending to confirm the account name matches your recipient.
2

Initiate the Transfer

Call the transfer API with the amount, bank details, and your unique reference.
3

Receive Confirmation

Glyde sends a transfer.success or transfer.failed webhook when the transfer completes.

Prerequisites

Before making transfers:
  • Fund your wallet — The wallet for the payout currency must have enough balance to cover the amount and the fee
  • Configure webhooks — Transfers require a webhook URL to be set in your dashboard
  • Get bank codes — Use the /v1/banks endpoint to get valid bank codes. The bank must be in the payout currency’s country

Step 1: Verify the Account

For NGN transfers, always verify the bank account before sending. This confirms the account exists and shows you the account holder’s name:
Display the account_name to your user for confirmation before proceeding. This prevents sending money to the wrong person.
Account enquiry is not available for ZAR accounts. For rand transfers, collect the recipient’s account name yourself and send it as account_name (see Sending ZAR).

Step 2: Initiate the Transfer

Once verified, send the transfer:
Key fields:
  • amount — Amount in major units of the payout currency (5000 = ₦5,000)
  • currency — NGN or ZAR. Optional; defaults to your home currency
  • bank_code — The recipient’s bank code (from /v1/banks)
  • account_number — 10-digit account number for NGN
  • reference — Your unique identifier for this transfer
The response confirms the transfer was initiated:

Sending ZAR

Rand transfers use the same endpoint with three differences:
  • No account enquiry — Send the recipient’s account_name on the request. It is required for ZAR.
  • South African bank codes — Use the 6-digit universal branch code from /v1/banks (e.g. 250655).
  • Account numbers — Must be 7–11 digits. You can also send an account_type of savings, current or cheque.
This sends R750 from your ZAR wallet. The fee is charged in rand and taken from the same wallet.

Transfer Lifecycle

Most transfers complete within seconds, but some may take longer during bank maintenance windows or high-traffic periods.

Webhook Notification

When the transfer completes, you’ll receive a webhook:
For failed transfers:

Common Errors

Fees

Each transfer incurs a small fee, charged in the payout currency and deducted from the same wallet. The fee is shown in the initiate response and webhook. Ensure the wallet’s balance covers both the transfer amount and the fee.

Best Practices

  1. Always verify first — For NGN, never skip account verification; it prevents costly mistakes. For ZAR, confirm the account name with your recipient
  2. Show confirmation UI — Display the verified account name and ask users to confirm before sending
  3. Use unique references — Generate references that help you trace transactions (e.g., payout_{user_id}_{timestamp})
  4. Handle failures gracefully — Not all transfers succeed; have a process for retrying or notifying affected users
  5. Monitor your balances — Check each currency’s wallet with /v1/check-balance?currency=NGN or ?currency=ZAR