Skip to main content
Accept bank transfer payments from customers in Nigeria and South Africa with Flutterwave as the payment service provider (PSP). The customer selects bank transfer, completes the transfer on the Flutterwave payment page and returns to your site.

Supported workflows

Before you begin

Complete these steps before you send your first bank transfer payment through Flutterwave:
  1. Set up a Flutterwave integration in your workspace. Contact your Payrails account team if Flutterwave isn’t listed in your Payrails Portal yet.
  2. In the Flutterwave dashboard, go to Settings → Business Preferences → Payment Methods and enable bank transfer.
  3. In the Payrails Portal, go to Settings → Integrations, open your Flutterwave integration, select Bank Transfer under Payment methods, and save.
  4. Add bank transfer as a payment option in your workflow.

Request fields for Flutterwave

Send these fields in the authorize request, in addition to the standard authorize fields. Payrails checks Required fields and returns an error when one is missing. Fields required by the PSP pass the Payrails checks but the PSP can decline the payment without them.

Authorize a bank transfer payment

Call authorize a payment with bankTransfer as the paymentMethodCode. The response includes the redirect to the Flutterwave payment page.
Authorize request
After the customer completes the transfer, Flutterwave returns them to your success or error URL. Confirm the result through webhook notifications or the execution status before you fulfill the order.

How Flutterwave handles bank transfers

  • The payment currency selects the market. With NGN, Flutterwave offers its Nigerian bank transfer. With ZAR, it offers its South African bank payment.
  • When the customer returns, Payrails fetches the transaction from Flutterwave to confirm the result.
  • Cancel isn’t available for bank transfer payments through Flutterwave. To return funds after a successful payment, refund it.
Last modified on October 2, 2026