Local African Payment Methods
In African markets, credit card penetration is under 15%. The vast majority of digital commerce is powered by Mobile Money (MoMo), Direct Bank Transfers (Virtual Accounts), USSD codes, and domestic debit cards (Verve).
[1. Select Local Currency Package] β [2. Trigger Native Local Rail] β [3. User Authorizes on Phone / Bank] β [4. Instant Ledger Settlement]
Forcing African customers to enter 16-digit card numbers frequently leads to 50% to 70% cart abandonment. SolydFlow lets you accept preferred domestic payment methods natively while managing everything from a single dashboard.
Regional Payment Rails Matrixβ
SolydFlow automatically routes transactions to domestic payment methods based on your project's Smart Routing configuration:
| Country & Currency | Dominant Payment Method | Primary Gateway Rail | Why It Matters |
|---|---|---|---|
π°πͺ Kenya (KES) | M-Pesa STK Push | Safaricom (Daraja) / Paystack | Over 85% of Kenyan adults use M-Pesa. Native SIM prompt maximizes conversion. |
π³π¬ Nigeria (NGN) | Dynamic Virtual Accounts | Monnify / Paystack | Bank transfers achieve >96% success rates vs. cards which suffer from bank 3DS timeouts. |
π³π¬ Nigeria (NGN) | USSD & Verve Cards | Paystack | Enables checkout for users without internet banking or smartphones via *737#, etc. |
π¬π Ghana (GHS) | Mobile Money (MTN / Telecel) | Flutterwave | MTN MoMo dominates digital payments across Ghana. |
πΏπ¦ South Africa (ZAR) | Instant EFT & Capitec Pay | Paystack | Direct bank debit rails account for a major share of online checkouts in SA. |
How Local Payment Methods Work in SolydFlowβ
1. M-Pesa STK Push (Kenya)β
When a Kenyan user purchases a package:
- SolydFlow prompts Safaricom Daraja using the customer's phone number (
+254...). - The customer receives an instant pop-up menu on their handset: "Do you want to pay KSh 500 to [Your Business]?"
- The user enters their 4-digit PIN; funds settle, and SolydFlow verifies the callback.
2. Dynamic Virtual Accounts (Nigeria)β
When a Nigerian user selects Bank Transfer:
- SolydFlow generates a dedicated, temporary account number (e.g. Wema Bank: 9918237465) valid for 30 minutes.
- The customer opens their banking app (GTBank, Kuda, PalmPay) and transfers the exact amount.
- Interbank settlement is detected, consensus is verified, and features unlock automatically.
3. Pan-African Mobile Money (Ghana / Uganda / Rwanda)β
- SolydFlow prompts the user's telco wallet (MTN Mobile Money, Airtel Money).
- The user approves the prompt on their phone; access is unlocked across all their devices.
Developer Experience: Zero Rail-Specific Codeβ
You do not need to write separate UI widgets for USSD, M-Pesa, or bank transfers. The SDK handles the entire flow automatically:
- Flutter
- JavaScript / TypeScript (Web)
// Handles hosted checkouts, M-Pesa STK prompts, and virtual accounts automatically:
final CustomerInfo? info = await SolydFlow.purchasePackage(
context,
"pro_monthly_kes", // Automatically triggers M-Pesa STK push in Kenya
);
if (info?.activeEntitlements["pro_access"] == true) {
debugPrint("Pro unlocked via native local rail!");
}
import { SolydFlow } from "solydflow-js";
// Automatically redirects browser to the appropriate domestic payment rail:
await SolydFlow.purchasePackage(
"pro_monthly_ngn",
"+2348012345678" // Customer phone
);