Flutterwave: balances, prefunding and reporting
Flutterwave is a payments platform that lets businesses send transfers (payouts) from their Flutterwave balance to bank accounts, mobile money wallets, cash pickup and stablecoin wallets in Nigeria, Ghana, Kenya, the US, UK, SEPA and over 30 other countries. Senders hold balances per currency that each transfer debits, and track them with GET /v3/balances, GET /v3/balances/{currency}, the /v3/wallet/statement endpoint and transfer webhooks.
What Flutterwave does
- Transfers (payouts) are made individually or in bulk from the Flutterwave available balance to a bank account, a mobile money account or another Flutterwave account. source
- Transfers can be made from the Flutterwave dashboard or through the transfer APIs (POST to the create transfer endpoint). source
- Before using transfers by API, merchants enable Transfer via API in dashboard settings and whitelist their server IP addresses. source
- Transfer types documented include bank accounts, mobile money, wallet-to-wallet, bulk transfers and cash pickup. source
- Stablecoin transfers support fiat-to-stablecoin and stablecoin-to-fiat conversion and stablecoin-to-stablecoin transfers. source
- Payout subaccounts create NGN wallets linked to the merchant account to hold balances for end users, each with a dedicated virtual account for funding. source
Coverage
- Flutterwave's transfer docs list Nigeria, the United States, the United Kingdom, SEPA, Ghana, Kenya, Uganda, Tanzania, South Africa, Cameroon, Ivory Coast, Sierra Leone, Senegal, Rwanda and over 30 other countries as transfer destinations. source
- Mobile money transfers are documented for Côte d'Ivoire (XOF), Ghana (GHS), Kenya (KES), Rwanda (RWF), Senegal (XOF) and Uganda (UGX), with named operators such as MTN, M-Pesa, Airtel, Orange Money and Wave. source
- Stablecoin transfers support USDT and USDC on Solana and Polygon, USDT, USDC and RLUSD on Ethereum, and USDC on Base. source
- Flutterwave states it accepts payments in more than 30 currencies. source
How funds are held and prefunded
- By default a transfer debits the balance in the transfer currency (for example a GHS transfer debits the GHS balance); the debit_currency field overrides this. source
- A transfer can return HTTP 200 and still fail for processing reasons such as insufficient funds, so the final status must be checked. source
- Payout subaccount wallets are funded by bank transfer to their NGN virtual account or by wallet-to-wallet transfer. source
- Flutterwave's guide to funding a balance uses the dashboard Balance section's top-up option; in test mode, Pay with Bank works for NGN wallets. source
How to see your Flutterwave balance
| Channel | What it gives you | Source |
|---|---|---|
| API | GET /v3/balances (Retrieve Wallet balances) returns available_balance and ledger_balance for each currency wallet. | source |
| API | GET /v3/balances/{currency} returns the wallet balance for one ISO 4217 currency. | source |
| statement file | GET /v3/wallet/statement (Query Wallet balance history) returns the wallet's transaction history for a date range and currency, filterable by credit or debit, with optional transaction_type and payout_id per entry and lookup by payout reference or ID. | source |
| webhook | Flutterwave sends a transfer.completed event for successful and failed transfers, with amount, fee, currency, debit_currency, status and complete_message; wallet funding also arrives as a transfer.completed event with narration WALLET FUNDING. | source |
| webhook | Payout subaccounts can send a wallet funding webhook after every successful funding, enabled under Webhook preferences in the dashboard. | source |
| API | Payout subaccounts have their own Fetch Available Balance and Fetch Transactions endpoints. | source |
| portal | Balances are shown in the Balance section of the Flutterwave dashboard. | source |
Regulation
- United States: Flutterwave Payments, LLC is registered with FinCEN as a Money Services Business (NMLS ID 2391594) and lists state money transmitter licences, for example Alabama, Alaska, Arizona and Arkansas. source
- Nigeria: Flutterwave Technology Solutions Ltd holds an International Money Transfer Operator licence for inbound remittances issued by the Central Bank of Nigeria. source
- Nigeria: Flutterwave also lists a PSSP Commercial licence, Correspondent Banking Relationship licence, Switching and Processing licence, Settlement Bank licence and Microfinance Bank licence. source
Connecting Flutterwave to Polynopsis
Forward Flutterwave balance reports and statements to your Polynopsis statement inbox. A direct Flutterwave API connector is on the roadmap. Polynopsis shows it next to every bank, payout partner, exchange and wallet in one live position.
Frequently asked questions
How do I check my Flutterwave balance by API?
Call GET /v3/balances for all currency wallets, or GET /v3/balances/{currency} for one. Each wallet returns available_balance and ledger_balance.
Which Flutterwave balance does a transfer debit?
By default, the balance in the transfer currency. Set debit_currency on the transfer request to debit a different currency balance.
How do I reconcile Flutterwave payouts against my balance?
Use GET /v3/wallet/statement for a date range and currency, with include_payout_id and include_transaction_type to tie each entry to a payout. transfer.completed webhooks give the final status, fee and debit currency of each transfer.
Other payout partners and providers
Sources
- Retrieve Wallet balances · Flutterwave
- Retrieve Wallet balance by currency · Flutterwave
- Query Wallet balance history · Flutterwave
- Transfers introduction · Flutterwave
- Webhooks · Flutterwave
- Mobile Money Transfer · Flutterwave
- Stablecoins · Flutterwave
- Payout Subaccount · Flutterwave
- How to fund your Flutterwave balance · Flutterwave
- Flutterwave homepage (US) · Flutterwave
- Send App licence disclosure · Flutterwave
Know where all your money is.
Polynopsis gives cross-border payment teams one live position across every bank, payout partner, exchange and wallet, including money in flight, and warns before a corridor runs dry.