J2Commerce · Pan-Africa

Accept Flutterwave
payments on J2Commerce

Install the free PaymentHood plugin for J2Commerce, connect your Flutterwave account, and Flutterwave appears as a payment option at checkout. No custom gateway code, and no second integration when you add another provider later.

  • NGN
  • GHS
  • KES
  • ZAR
  • USD
Joomla 4.0+
6 payment methods
Free plugin
J2Commerce
Flutterwave
Platform
Joomla 4.0+
Provider
Flutterwave
Install via
Extensions → Manage → Install
Billing
One-time
PaymentHood fee
None
Compatibility

Flutterwave on J2Commerce at a glance

Joomla version
Joomla 4.0+
Where you install it
Joomla admin → Extensions → Manage → Install
Coverage
  • Nigeria
  • Ghana
  • Kenya
  • South Africa
Currencies
  • NGN
  • GHS
  • KES
  • ZAR
  • USD
Billing models
One-time checkout payments. Recurring billing is not supported by the J2Commerce plugin yet.
Cost
The plugin is free and open source. You pay Flutterwave's own fees, published on their pricing page (opens in new tab). PaymentHood adds nothing on top.

Coverage, currencies and payment methods as published by Flutterwave, who set and update them. For the current list see Flutterwave's own documentation (opens in new tab).

Payment methods

What J2Commerce customers can pay with

Each method Flutterwave supports appears in your J2Commerce checkout. Enabling one is a PaymentHood dashboard setting — nothing changes on the Joomla side.

Cards

Visa, Mastercard, Verve, Discover and American Express, local and international

Bank transfer

The customer transfers to account details generated for the payment

Mobile money

M-PESA for Kenyan shilling payments, and MTN and Airtel wallets where each operates

USSD

Bank shortcodes, available in Nigeria only

Apple Pay and Google Pay

Device wallets, on the checkouts where Flutterwave offers them

QR

Scan-to-pay, listed among Flutterwave's payment channels

Setup

Connect Flutterwave to J2Commerce

Four steps, no code. The full walkthrough with screenshots is in the J2Commerce installation guide.

1

Open a Flutterwave account

Register with Flutterwave and finish their onboarding. Funds settle from Flutterwave to your own bank account.

2

Add it in PaymentHood

Paste your Flutterwave credentials into the PaymentHood dashboard. They stay server-side and never reach your storefront.

3

Install the plugin

Download the J2Commerce plugin and install it from Extensions → Manage → Install in your Joomla admin.

4

Enable and test

Paste your PaymentHood API key into the plugin settings, run a sandbox order end to end, then switch to live.

Why PaymentHood

Rather than a direct Flutterwave plugin

A single-provider plugin works until you need a second provider. These are the parts you would otherwise build and maintain yourself.

Webhook security
Received on a PaymentHood URL that carries a secret key; the payload only identifies the payment and is never trusted for its status
Payment verification
Server-side charge lookup by transaction reference against the Flutterwave API before an order is marked paid
Credentials
Client ID and client secret exchanged for a short-lived bearer token on Flutterwave's v4 API, held server-side in PaymentHood
  • Add a second provider without touching your J2Commerce checkout
  • Automatic failover when Flutterwave is unreachable, instead of a failed order
  • Idempotent charge creation, so a double-submitted order is not a double charge
  • One reconciliation view across every provider you run
  • Free and open source — read the plugin on GitHub (opens in new tab)
FAQ

Frequently Asked Questions

Flutterwave supports merchants in Nigeria, Ghana, Kenya and South Africa, whose local currencies PaymentHood's Flutterwave connection handles, and names further markets on its own requirements page. You open and verify the Flutterwave account yourself, then connect it to PaymentHood. PaymentHood does not resell Flutterwave or sit in the flow of funds.

Nigerian Naira (NGN), Ghanaian Cedi (GHS), Kenyan Shilling (KES), South African Rand (ZAR) and US Dollar (USD). Which of these you can actually charge depends on the country your Flutterwave account is registered in and what Flutterwave has enabled on it.

No. PaymentHood sends the customer to Flutterwave's hosted checkout page, and the card is entered there. Neither your store nor PaymentHood receives the card number; PaymentHood only learns the outcome, plus the masked card digits Flutterwave reports back.

It never marks an order paid on the strength of a webhook alone. The webhook arrives on a PaymentHood URL carrying a secret key, and its content is used only to find the payment. PaymentHood then looks the charge up on Flutterwave's API by its transaction reference and releases the order only if Flutterwave reports it succeeded.

Yes. A refund started in PaymentHood is sent to Flutterwave for the full captured amount of the charge, and PaymentHood tracks it until Flutterwave reports the refund completed.

No. PaymentHood adds nothing to what Flutterwave charges: no percentage, no per-transaction cut, and no volume threshold where that changes. Flutterwave bills you directly for its own processing fees, and you keep that relationship. PaymentHood's only paid plan is Premium at $29 a month, which adds white-label checkout branding and nothing to your transaction cost. See PaymentHood pricing and Flutterwave's pricing page (opens in new tab).

Accept Flutterwave on J2Commerce today

Free plugin, no PaymentHood transaction fee, and room to add another provider whenever you need one.