How Transfers Work
Verify the Recipient
Always verify the bank account before sending to confirm the account name matches your recipient.
Initiate the Transfer
Call the transfer API with the amount, bank details, and your unique reference.
Prerequisites
Before making transfers:- Fund your wallet — Your Glyde wallet must have sufficient balance (amount + fee)
- Configure webhooks — Transfers require a webhook URL to be set in your dashboard
- Get bank codes — Use the
/v1/banksendpoint to get valid bank codes
Step 1: Verify the Account
Always verify bank accounts before transferring. This confirms the account exists and shows you the account holder’s name:account_name to your user for confirmation before proceeding. This prevents sending money to the wrong person.
Step 2: Initiate the Transfer
Once verified, send the transfer:amount— Amount in kobo (5000 = ₦50)bank_code— The recipient’s bank code (from/v1/banks)account_number— 10-digit account numberreference— Your unique identifier for this transfer
Transfer Lifecycle
| Status | Meaning |
|---|---|
pending | Transfer is being processed |
successful | Funds delivered to recipient |
failed | Transfer could not be completed |
Webhook Notification
When the transfer completes, you’ll receive a webhook:Common Errors
| Error | Cause | Solution |
|---|---|---|
| Insufficient funds | Wallet balance too low | Fund your wallet before retrying |
| Duplicate reference | Reference already used | Generate a new unique reference |
| Invalid bank code | Bank code not recognized | Use codes from /v1/banks |
| Account not found | Account number invalid | Verify the account first |
| Webhook not configured | No webhook URL set | Configure webhooks in dashboard |
Fees
Each transfer incurs a small fee deducted from your wallet. The fee is shown in the initiate response and webhook. Ensure your wallet balance covers both the transfer amount and the fee.Best Practices
- Always verify first — Never skip account verification; it prevents costly mistakes
- Show confirmation UI — Display the verified account name and ask users to confirm before sending
- Use unique references — Generate references that help you trace transactions (e.g.,
payout_{user_id}_{timestamp}) - Handle failures gracefully — Not all transfers succeed; have a process for retrying or notifying affected users
- Monitor your balance — Set up alerts when your wallet balance gets low