AI agents: this site is available as Markdown at /llms.txt. Each page has a Markdown version at its URL with a .md suffix, and the full API is described in /api/v3/openapi.json.

Create a transfer

This will show you how to initiate a transfer

Last updated 13 September 2026

post

https://api.flutterwave.com/v3/transfers

authorization string required

Pass your secret key as a bearer token in the request header to authorize this call

FILL IN ALL REQUIRED FIELDS

account_bank string required
The recipient's bank code. You can query all available banks and their corresponding codes from the get banks endpoint.

account_number string required
This is the recipient account number.

amount int 32 required
This is the amount to transfer to the recipient.

currency string required
The currency of the transfer. Learn more about supported currencies here.

debit_subaccount string
The id of a payout subaccount wallet. This is required if you choose to use the PSA as the source of funds for your transfer.

beneficiary int 32
The beneficiary's id. This allows you to make a transfer to an existing beneficiary.

beneficiary_name string
The full name of a transfer beneficiary.

reference string
This is a merchant's unique reference for the transfer, it can be used to query for the status of the transfer.

debit_currency string
Pass this to set a different currency balance as the source of transfer funds. if unspecified, your default balance is debited for the transfer.

destination_branch_code string
A code used to identify different bank branches. This is required for banks that have branches — varies by bank, not country. Check has_branches on the bank object from GET /v3/banks/{country}, or call GET /v3/banks/{id}/branches. Bank has branches -> required (omitting causes disbursement to fail after queueing). Bank has no branches -> omit. Requirements are provider-determined and can change; don't hardcode.

callback_url string
The URL for transfer response callbacks.

narration string
This is the narration for the transfer e.g. payments for x services provided.

meta array of objects
Add custom payment details to your transfer.

FILL IN ALL REQUIRED FIELDS

sender string required
The sender's full name. This is required for cash pickup, DOM bank account and M-Pesa transfers.

sender_address string
The sender's address. It is required for cash pick up and DOM bank account transfers.

sender_city string
The sender's city. It is required for cash pick up and DOM bank account transfers.

sender_country string required
The sender's resident country. This is required for cash pickup, DOM bank account and M-Pesa transfers.

sender_id_number string
This is the number found in the sender's identification document. It is required for cash pick up and DOM bank account transfers.

sender_id_type string
The sender's ID document type. It is required for cash pick up and DOM bank account transfers. Expected values include: PASSPORT, DRIVING LICENSE, ID CARD, VOTER CARD.

sender_id_expiry string
The expiry date of the sender's identification document. This is required for cash pick up and FCMB bank account transfers.

sender_mobile_number string
The sender's mobile number. This is required for cash pick up and FCMB bank account transfers.

sender_email_address string
The sender's email address. It is required for cash pick up and FCMB bank account transfers.

sender_occupation string
This is the occupation of the sender(transfer originator). It is required for cash pick up and FCMB bank account transfers.

sender_beneficiary_relationship string
This is the occupation of the sender(transfer originator). It is required for cash pick up and FCMB bank account transfers.

first_name string required
The beneficiary's first name. This is required for cash pickup, DOM bank account, ZAR and M-Pesa transfers.

last_name string required
The beneficiary's last name. This is required for cash pickup, DOM bank account, ZAR and M-Pesa transfers.

email string required
The beneficiary's email address. This is required for cash pick up, FCMB bank account and ZAR bank account transfers.

mobile_number string required
The beneficiary's mobile number. This is required for cash pickup, DOM bank account, ZAR and M-Pesa transfers.

beneficiary_mobile_number string required
The beneficiary's mobile number. This is required for cash pickup, DOM bank account, ZAR and M-Pesa transfers.

recipient_address string required
The address of the transfer recipient and it is required for cash pick up, FCMB bank account and ZAR bank account transfers.

beneficiary_state string required
The beneficiary's state. It is required for cash pick up and FCMB bank account transfers.

beneficiary_country string required
The beneficiary's resident country. It is required for cash pick up and FCMB bank account transfers.

beneficiary_occupation string required
The beneficiary's occupation. It is required for cash pick up and FCMB bank account transfers.

transfer_purpose string
This is the purpose of the transfer- it is used for audit and is not to be confused with the description field. This field is required for cash pick up and FCMB bank account transfers.

routing_number string
The routing code for the transfer. Pass the same value as account_bank.

merchant_name string
The name of the merchant.

account_number string
The recipient's account number.

skip_beneficiary_creation string
if you don't want the automatic beneficiary creation step you can skip that by setting this as 1

FILL IN ALL REQUIRED FIELDS

status string

message string

data object

FILL IN ALL REQUIRED FIELDS

id integer

account_number string

bank_code string

full_name string

created_at string

currency string

debit_currency string

amount integer

fee number

status string

reference string

meta string

narration string

approver string

complete_message string

requires_approval integer

is_approved integer

bank_name string

Shell

1
1


FL.AI

Answers from the Flutterwave docs

Hi, I’m FL.AI

Ask anything about Flutterwave’s APIs, guides and coverage.

FL.AI can make mistakes. Check important details in the docs.

Get API Keys