Paystack in Ghana supports mobile money (MTN Mobile Money, Vodafone Cash, AirtelTigo Money), card payments (Visa, Mastercard), and bank transfers. MTN MoMo has the largest user base. Mobile money is the highest-converting channel for consumer products in Ghana.
Paystack in Ghana supports three channel categories that cover how the majority of Ghanaians pay online.
// Initialize with all channels for Ghana
var response = await fetch('https://api.paystack.co/transaction/initialize', {
method: 'POST',
headers: {
Authorization: 'Bearer ' + process.env.PAYSTACK_SECRET_KEY,
'Content-Type': 'application/json',
},
body: JSON.stringify({
email: 'customer@example.com.gh',
amount: 50000, // 500 GHS in pesewas
currency: 'GHS',
channels: ['mobile_money', 'card', 'bank_transfer'],
reference: 'gh_' + Date.now(),
}),
});
MTN MoMo is the largest mobile money provider in Ghana. It is the payment method most Ghanaians reach for first when paying online.
How it works:
MTN phone numbers in Ghana: MTN numbers typically start with 024, 054, 055, 059. Validate the prefix to give customers early feedback if they enter a non-MTN number while MTN is selected.
Common issues:
Get weekly developer tips
Join 25,000+ developers. Practical guides, job tips, and new content — straight to your inbox.
No spam. Unsubscribe anytime.
Vodafone Cash is the second largest mobile money provider in Ghana. The authorization flow is similar to MTN MoMo but uses Vodafone's USSD infrastructure.
Vodafone phone numbers: Vodafone numbers in Ghana typically start with 020, 050. Validate accordingly.
Vodafone Cash authorization: The customer may need to generate a voucher code through USSD or authorize directly via a prompt. The exact flow depends on the integration type and Vodafone's current authorization mechanism. Test this flow thoroughly.
Key differences from MTN MoMo:
AirtelTigo Money serves the third segment of Ghana's mobile money market. AirtelTigo was formed from the merger of Airtel Ghana and Tigo Ghana.
AirtelTigo phone numbers: Numbers typically start with 027, 057, 026, 056. Validate the prefix to match the provider.
Authorization flow: Similar USSD-based PIN authorization as the other providers. The customer receives a prompt on their phone and enters their mobile money PIN.
All three mobile money providers in Ghana go through the same Paystack API. You do not need separate API calls for each provider. The customer selects their provider at the Paystack checkout, and Paystack routes the payment to the correct network.
Card payments in Ghana work for Visa and Mastercard holders. Card penetration in Ghana is growing, driven by bank partnerships and the expansion of debit card issuance.
3D Secure authentication: Ghanaian card transactions go through 3D Secure verification. The customer enters their card details and then verifies with their bank via OTP or banking app approval.
When to prioritize cards in Ghana:
// Card-only checkout for a Ghanaian subscription product
var response = await fetch('https://api.paystack.co/transaction/initialize', {
method: 'POST',
headers: {
Authorization: 'Bearer ' + process.env.PAYSTACK_SECRET_KEY,
'Content-Type': 'application/json',
},
body: JSON.stringify({
email: customer.email,
amount: 10000, // 100 GHS in pesewas
currency: 'GHS',
channels: ['card'],
reference: 'sub_' + Date.now(),
metadata: {
custom_fields: [
{ display_name: 'Plan', variable_name: 'plan', value: 'monthly' }
]
},
}),
});
Your channel strategy depends on your product and audience:
Consumer e-commerce: Mobile money first (all three providers), cards second. Most of your sales will come through MoMo.
SaaS subscriptions: Cards first (for authorization reuse), mobile money second. This is the one scenario where cards should be the primary channel in Ghana.
Digital services (airtime, data, utilities): Mobile money only. These are the transactions where customers expect to pay from their mobile money wallet.
B2B invoicing: Bank transfer and cards. Business customers prefer bank transfers for reconciliation and audit trails.
Multi-country product (Nigeria + Ghana): Offer all channels in both markets but adjust the default order. In Nigeria, bank transfers may convert better than mobile money. In Ghana, mobile money comes first.
// Dynamic channel ordering by country
function getChannelOrder(country) {
var channelMap = {
'GH': ['mobile_money', 'card', 'bank_transfer'],
'NG': ['bank_transfer', 'card', 'ussd'],
'KE': ['mobile_money', 'card'],
'ZA': ['card', 'bank_transfer'],
};
return channelMap[country] || ['card', 'mobile_money'];
}
Test every channel you plan to offer before going live:
Mobile money testing:
Card testing:
Bank transfer testing:
Track channel-level conversion rates after launch. If one channel consistently underperforms, investigate whether it is a UX issue, a technical issue, or a market preference signal.
KES 2,999
The definitive guide to building payment systems with Paystack — from your first transaction to production-grade payment infrastructure across Africa. 9 modules, 47 lessons. Free preview available.
Start Paystack Course