McTaba Labs logo
Software EngineeringThe WhiteboardProjectsEventsMasterclassesWebinarsLearn
Book Call

500+ developers already in the community

Get answers, find accountability partners, and stay ahead

Join Discord →
McTaba Labs logo

Educating 1 million students in tech by 2030.

Programs

  • HighSchool Graduates Launchpad
  • AI & Business Automation
  • Corporate Training
  • McTaba Story & Mission
  • Full-Stack Curriculum
  • Course Pricing & Plans
  • Frequently Asked Questions

Resources

  • Join Discord Community
  • Tech Events in Nairobi
  • Masterclasses
  • Free Resources
  • Learn
  • Campus
  • Africa Tech Talent Report
  • Partner With Us
  • Start a Project
  • Our Work

Contact Us

  • 124 Manyani East Road, Lavington, Nairobi
  • +254727795603
  • Book a Discovery Call

Office Hours:

Mon-Fri: 9am - 2pm EAT

Sat: 10am - 12pm EAT

© 2027 McTaba Labs - A product of Edtech Industries. All rights reserved.

Privacy PolicyTerms of ServiceRefund Policy
  1. Learn
  2. Paystack for African Developers
  3. Transfers to Ghanaian Mobile Money via Paystack
Bonaventure OgetoBy Bonaventure Ogeto|Updated July 20, 2026

Transfers to Ghanaian Mobile Money via Paystack

To send a Paystack transfer to Ghanaian mobile money, create a mobile_money type recipient with the phone number, provider code, and GHS currency. Paystack supports MTN MoMo, Vodafone Cash, and AirtelTigo Money. Transfers settle quickly, with the recipient receiving a notification from their provider. Amounts are in pesewas (1 GHS = 100 pesewas).

In this article

  1. 1. Ghanaian Mobile Money Landscape
  2. 2. Creating Mobile Money Recipients
  3. 3. Initiating Mobile Money Transfers
  4. 4. Provider-Specific Considerations
  5. 5. Ghanaian Mobile Money Failure Modes
  6. 6. Bank vs Mobile Money for Ghanaian Payouts
  7. 7. Build for the Ghanaian Market

Ghanaian Mobile Money Landscape

Mobile money in Ghana is how most people move money. The three major providers are MTN Mobile Money (the largest by market share), Vodafone Cash, and AirtelTigo Money. When you build a payout system for Ghana, mobile money support is essential because many recipients either prefer it over bank transfers or do not have bank accounts.

Paystack lets you send transfers to all three providers using the same API pattern. The only difference is the provider code you pass when creating the recipient.

Mobile money transfers in Ghana are generally faster than bank transfers. The recipient gets a notification from their provider when the funds land, and they can use or withdraw the money immediately. This makes mobile money the preferred payout method for gig workers, small vendors, and individual service providers in Ghana.

Creating Mobile Money Recipients

const createGhanaianMoMoRecipient = async (name, phoneNumber, providerCode) => {
  var normalized = normalizeGhanaianPhone(phoneNumber);

  var response = await fetch('https://api.paystack.co/transferrecipient', {
    method: 'POST',
    headers: {
      Authorization: 'Bearer ' + process.env.PAYSTACK_SECRET_KEY,
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({
      type: 'mobile_money',
      name: name,
      account_number: normalized,
      bank_code: providerCode,
      currency: 'GHS',
    }),
  });

  var data = await response.json();
  if (!data.status) {
    throw new Error('MoMo recipient creation failed: ' + data.message);
  }

  return data.data;
};

// Provider codes (check Paystack docs for current codes)
// Get these from GET /bank?country=ghana&type=mobile_money
var PROVIDERS = {
  MTN: 'MTN', // MTN Mobile Money
  VODAFONE: 'VOD', // Vodafone Cash
  AIRTELTIGO: 'ATL', // AirtelTigo Money
};

function normalizeGhanaianPhone(phone) {
  var cleaned = phone.replace(/[s-+]/g, '');

  // Convert 0xx to 233xx
  if (cleaned.indexOf('0') === 0 && cleaned.length === 10) {
    return '233' + cleaned.substring(1);
  }

  // Already in 233 format
  if (cleaned.indexOf('233') === 0 && cleaned.length === 12) {
    return cleaned;
  }

  // Just the 9-digit number
  if (cleaned.length === 9) {
    return '233' + cleaned;
  }

  throw new Error('Invalid Ghanaian phone number: ' + phone);
}

Note: Provider codes may vary. Fetch the current mobile money provider list from GET /bank?country=ghana&type=mobile_money to get the exact codes Paystack uses. Cache this list in your application.

Get weekly developer tips

Join 25,000+ developers. Practical guides, job tips, and new content — straight to your inbox.

No spam. Unsubscribe anytime.

Initiating Mobile Money Transfers

const sendToGhanaianMoMo = async (recipientCode, amountGHS, reason, reference) => {
  var amountPesewas = Math.round(amountGHS * 100);

  var response = await fetch('https://api.paystack.co/transfer', {
    method: 'POST',
    headers: {
      Authorization: 'Bearer ' + process.env.PAYSTACK_SECRET_KEY,
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({
      source: 'balance',
      amount: amountPesewas,
      recipient: recipientCode,
      reason: reason,
      reference: reference,
    }),
  });

  var data = await response.json();
  if (!data.status) {
    throw new Error('Transfer failed: ' + data.message);
  }

  return data.data;
};

// Example: Pay a vendor 500 GHS via MTN MoMo
var result = await sendToGhanaianMoMo(
  'RCP_ghana_vendor_01',
  500, // 500 GHS
  'Weekly payout - July W3',
  'payout_gh_v01_w29'
);

The amount is in pesewas. 500 GHS = 50,000 pesewas. Track the transfer through webhook events just like any other Paystack transfer. Mobile money transfers typically trigger the transfer.success webhook faster than bank transfers because mobile money settlement is quicker.

Provider-Specific Considerations

MTN Mobile Money

The largest mobile money provider in Ghana. Most of your Ghanaian recipients will likely use MTN MoMo. Transfers are generally reliable, but MTN occasionally has maintenance windows where transfers may be delayed. MTN MoMo has account tiers with different transaction and balance limits based on the user's registration level.

Vodafone Cash

Vodafone's mobile money service. Less market share than MTN but significant. The transfer process is the same. One thing to note: Vodafone Cash users must approve incoming transfers on some account types, which can add a brief delay between your transfer initiation and the funds appearing in the recipient's wallet.

AirtelTigo Money

Following the merger of Airtel Ghana and Tigo, the mobile money service operates under AirtelTigo Money. Coverage and agent network may be smaller than MTN in some areas, but the transfer mechanism through Paystack is the same.

Phone number portability

Ghana supports mobile number portability, meaning a user can move their phone number from one provider to another while keeping the same number. If a recipient ported their number from MTN to Vodafone but you created the recipient with the MTN provider code, the transfer may fail. Always confirm the current provider with the recipient during onboarding. If transfers start failing for a previously working recipient, number portability is a likely cause.

Ghanaian Mobile Money Failure Modes

Mobile money transfers in Ghana fail for specific reasons beyond standard transfer failures.

Wrong provider code. The phone number is registered with a different provider than the one you specified. This is the most common failure and often happens due to number portability. Ask the recipient to confirm their current provider.

Number not registered for mobile money. The phone number exists but is not activated for mobile money. The person has a SIM but has not completed mobile money registration. They need to visit an agent to register.

Wallet limit exceeded. Each provider has transaction and balance limits based on the account tier. If your transfer would exceed the recipient's limit, it fails. The recipient needs to upgrade their account tier by completing additional verification.

Provider system downtime. Mobile money providers occasionally have system issues. Transfers fail with timeout or unavailable errors. These are transient and resolve on retry. MTN MoMo, being the largest, handles the highest volume and is most susceptible to peak-hour congestion.

Inactive or suspended account. The mobile money account has been deactivated due to inactivity or suspended for compliance reasons. The recipient needs to contact their provider.

All failures trigger the standard transfer.failed webhook. Check the reason field to classify and respond appropriately. For the full failure handling framework, see managing transfer failures and reversals.

Bank vs Mobile Money for Ghanaian Payouts

In Ghana, you have two payout options through Paystack: bank transfers (via GhIPSS) and mobile money.

Mobile money is better for: Individual recipients, small to moderate amounts, recipients without bank accounts, speed-sensitive payouts, and rural areas where mobile money agents outnumber bank branches.

Bank transfers are better for: Corporate recipients, large amounts above mobile money limits, recipients who need bank statements for accounting, and formal business relationships where bank settlements are expected.

Most Ghanaian platforms default to mobile money for individual payouts and offer bank transfers as an alternative for corporate vendors. During recipient onboarding, ask which option the person prefers and create the appropriate recipient type.

Build for the Ghanaian Market

Ghanaian mobile money is a critical payout channel for any product serving the Ghanaian market. Understanding the providers, failure modes, and user experience makes your product work where it matters.

The McTaba bootcamp covers payment integration across African markets, including Ghana. You build real products for real users.

Create a free McTaba account

Key Takeaways

  • ✓Paystack supports transfers to three Ghanaian mobile money providers: MTN Mobile Money, Vodafone Cash, and AirtelTigo Money.
  • ✓Use the mobile_money recipient type with the provider code and phone number in Ghanaian format.
  • ✓Amounts are in pesewas (1 GHS = 100 pesewas). To send 500 GHS, pass 50000.
  • ✓Mobile money transfers settle faster than bank transfers. The recipient gets a notification from their provider when funds arrive.
  • ✓Phone number portability is a common issue. A user may have ported their number to a different provider than what you have on record.
  • ✓The transfer flow is identical to other Paystack transfers: create recipient, initiate, track via webhooks.

Frequently Asked Questions

Can I send transfers to Ghanaian mobile money from a Nigerian Paystack account?
No. Paystack transfers are generally limited to the country where your business is registered. To send GHS mobile money transfers, you need a Ghanaian Paystack business account with a GHS balance.
How fast do Ghanaian mobile money transfers settle?
Mobile money transfers in Ghana typically settle within minutes. The recipient gets a notification from their mobile money provider when the funds arrive. Settlement speed can vary during provider maintenance windows or peak periods.
Do I need to specify the mobile money provider when creating a recipient?
Yes. The bank_code field in the recipient creation request identifies the mobile money provider. Use the correct code for MTN, Vodafone, or AirtelTigo. Get the current codes from GET /bank?country=ghana&type=mobile_money.

Learn Paystack Integration

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

Not ready? Create Free Account

Keep reading

Paystack Transfers and Payouts: Complete Guide

Everything you need to send money out of your Paystack account: creating transfer recipients, initiating single and bulk transfers, handling OTP requirements, managing failures, and building automated payout systems for bank accounts, M-Pesa wallets, and mobile money across Africa.

Read more

Transfer OTP: Enabling, Disabling and Automating

Paystack requires OTP confirmation for transfers by default. This guide explains the OTP flow, how to disable it for automated payout systems, the security trade-offs of disabling OTP, and how to build your own application-level approval controls to replace OTP with something better suited to production automation.

Read more

Funding Your Paystack Balance Programmatically

Your Paystack balance needs funds before you can send transfers. This guide covers the different ways to fund your balance, setting up dedicated virtual accounts, monitoring balance levels, building automated funding alerts, and integrating balance management into your payout pipeline so you never run out mid-payout.

Read more

Building a Driver Payout System for a Ride Hailing App

Ride-hailing drivers need fast, reliable payouts. This guide covers building a driver payout system on Paystack: calculating trip-based earnings with commission deductions, daily settlement cycles, M-Pesa and bank payout options, handling cash-collected trips, real-time driver balance tracking, and instant withdrawal features.

Read more

The Double-Grant Bug: Webhook and Callback Both Firing

The double-grant bug is the most common payment bug in Paystack integrations. Both your webhook handler and your redirect callback verify the same transaction and both grant value. The customer gets double credits, two emails, or two shipments. Here is how to fix it with idempotent processing.

Read more

Explore related topics

M-Pesa & African Stack

M-Pesa Daraja API tutorials, USSD development, and WhatsApp Business API guides. The African Stack that global bootcamps do not teach.

Learn to Code in Kenya

Everything a Kenyan needs to know before writing their first line of code. Career paths, real costs, hardware requirements, and honest answers about what it takes.

Learning to Code

Roadmaps, language guides, and practical advice for learning to code and launching a programming career.

Breaking Into Tech

Practical, no-nonsense guides for anyone looking to start or change their career in tech. From choosing your first language to acing interviews.

The African Stack: Skills for This Market

The skills that make Kenyan developers hard to replace: M-Pesa, USSD, WhatsApp, fintech, and building for the African market.

Bonaventure Ogeto

Bonaventure Ogeto

Founder, McTaba Labs

Bonaventure is the founder of McTaba Labs, a coding bootcamp in Nairobi, Kenya. He has spent years building products for the African market and mentoring the next generation of developers across the continent.