Description
Upgrade to Pro | View Live Demo
Finachub Mobile Money Checkout for WooCommerce lets you accept payments from three of Africa’s biggest mobile money networks directly in your WooCommerce store. Customers pay using what they already know and trust: Safaricom M-Pesa, Airtel Money, or MTN MoMo. They receive a payment prompt on their phone and authorize with their PIN. No redirects, no card details, no friction.
Supported Payment Networks
- Safaricom M-Pesa (Kenya): Supports both PayBill and Till Number (Buy Goods) transaction types via the Safaricom Daraja API with STK push.
- Airtel Money (13 countries): Kenya, Uganda, Tanzania, Rwanda, Zambia, Malawi, Madagascar, Niger, Chad, DR Congo, Republic of Congo, Gabon, and Seychelles.
- MTN MoMo (10 countries): Uganda, Ghana, Zambia, Cameroon, Benin, Republic of Congo, Eswatini, Guinea-Conakry, South Africa, and Liberia.
How the Checkout Works
- The customer selects their preferred mobile money provider at checkout.
- They enter their mobile number. The field validates and formats the number automatically for their provider and country.
- A payment prompt (STK push for M-Pesa, USSD push for Airtel and MTN) is sent to their phone.
- The customer authorizes the payment with their mobile money PIN.
- The order is placed on hold, pending payment confirmation.
In the Standard edition, you verify and update the order manually. The Pro version handles this automatically via payment callbacks.
Why Choose Finachub?
- Multi-Provider, One Plugin: Manage M-Pesa, Airtel Money, and MTN MoMo from a single WooCommerce payment gateway. Each provider has its own dedicated settings tab.
- Sandbox and Live Environments: Switch between sandbox and live API environments per provider independently, without touching any code.
- Built-in Connection Testing: Verify your API credentials directly from the admin dashboard with a single click before going live.
- Secure by Default: Includes OAuth 2.0 token management with automatic caching, Airtel RSA+AES-256 payload encryption, CSRF protection via WordPress nonces, and SSL warnings.
- Clean Checkout UI: A grid-based provider selector and smart phone number input with per-provider format validation make the checkout experience clear and intuitive.
- HPOS Compatible: Fully compatible with WooCommerce High-Performance Order Storage.
Standard vs. Pro
The Standard (free) edition covers payment initiation, manual order verification, sandbox testing, and admin setup guides. The Pro version adds:
- Automatic order status updates via payment callbacks
- Real-time transaction status polling
- Receipt number tracking
- Transaction analytics and reporting dashboard
- CSV export
Features
- Integrated Provider Selector: A branded checkout UI lets customers pick M-Pesa, Airtel, or MTN in one tap.
- STK and USSD Push: Payment prompts go directly to the customer’s phone. No redirects to external pages.
- PayBill and Till Number Support: M-Pesa supports both PayBill (with account reference) and Buy Goods (Till Number) transaction types.
- Per-Provider Phone Validation: Phone numbers are validated and normalized to the correct format for each network and country, client-side and server-side.
- Sandbox and Live Environments: Each provider has independent environment switching for safe testing without affecting live transactions.
- Admin Connection Tester: Confirm API credentials for any provider from the admin dashboard with one click.
- Automatic Token Management: OAuth access tokens are fetched, cached, and refreshed automatically. No manual token handling required.
- Secure Payload Handling: Airtel Money payloads use RSA-OAEP and AES-256-CBC encryption as required by the Airtel API. M-Pesa requests handle Safaricom’s known IPv6 routing issues automatically.
- Built-in Setup Guides: Step-by-step API configuration instructions for all three providers are included in the admin dashboard.
- WooCommerce HPOS Compatible: Declared compatible with WooCommerce High-Performance Order Storage (custom order tables).
- Modular Architecture: Each provider is a self-contained class implementing a shared interface, making the codebase easy to audit, extend, or adapt.
- Translation Ready: All strings are fully internationalized using the
finachub-checkout-for-m-pesatext domain.
Screenshots

Transaction Dashboard showing an overview of recent mobile money transactions. 
Detailed transaction view including order information and callback status. 
Built-in Setup Guides to easily configure API credentials. 
Clean, modular payment gateway settings within WooCommerce. 
Modern checkout experience allowing customers to choose their provider. 
Support for M-Pesa, Airtel Money, and MTN MoMo.
Installation
- Upload the plugin folder to your
/wp-content/plugins/directory, or install it directly from the WordPress plugin directory. - Activate the plugin through the Plugins menu in WordPress.
- Go to WooCommerce > Settings > Payments and enable Mobile Money.
- Open the Mobile Money > Setup Guide page in your admin menu and follow the step-by-step instructions for each provider you want to activate.
- Use the Test Connection button in the admin dashboard to confirm your credentials are working before going live.
FAQ
-
Does it support automatic order updates?
-
Automatic status updates via payment callbacks are a Pro feature. In the Standard edition, you verify payments manually and update order statuses yourself.
-
Which countries and currencies are supported?
-
M-Pesa: Kenya (KES).
Airtel Money: Kenya (KES), Uganda (UGX), Tanzania (TZS), Rwanda (RWF), Zambia (ZMW), Malawi (MWK), Madagascar (MGA), Niger (XOF), Chad (XAF), DR Congo (CDF), Republic of Congo (XAF), Gabon (XAF), Seychelles (SCR).
MTN MoMo: Uganda (UGX), Ghana (GHS), Zambia (ZMW), Cameroon (XAF), Benin (XOF), Republic of Congo (XAF), Eswatini (SZL), Guinea-Conakry (GNF), South Africa (ZAR), Liberia (LRD).
-
Does M-Pesa support both PayBill and Till Number?
-
Yes. You can configure M-Pesa to use either a PayBill Number (with an account reference prefix) or a Till Number (Buy Goods), depending on your Safaricom account type. Both are supported natively.
-
Can I test the integration before going live?
-
Yes. Each provider has an independent sandbox mode you can enable in the settings. The admin dashboard also includes a built-in connection tester so you can verify your credentials before switching to live.
-
Is the plugin compatible with WooCommerce HPOS?
-
Yes. The plugin is declared compatible with WooCommerce High-Performance Order Storage (HPOS / custom order tables).
-
Does it require special hosting?
-
No. The plugin runs on standard WordPress hosting. Your site must be served over HTTPS, as the payment APIs require secure connections. The plugin will show a warning if SSL is not active.
-
Where are API credentials stored?
-
Credentials are saved via the standard WooCommerce settings API (WordPress options table). Sensitive fields like keys and secrets are masked in the admin UI.
Reviews
Contributors & Developers
“Finachub Mobile Money Checkout for WooCommerce (M-Pesa, Airtel, MTN)” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Finachub Mobile Money Checkout for WooCommerce (M-Pesa, Airtel, MTN)” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
2.0.1
- FIX: Increased phone input padding to prevent “Pay from” prefix overlap on narrow themes.
2.0.0
- REFACTOR: Complete architectural overhaul for true multi-provider support.
- IMPROVEMENT: Modernized frontend design for the waiting page and checkout selector.
- IMPROVEMENT: Rebranded to “Mobile Money” for better inclusivity.
- UPSELL: Enhanced Pro feature integration and visibility.
- FIX: Cleaned up duplicate methods and optimized the autoloader.
1.3.2
- Initial naming and minor UI fixes.
