Online Stores in Ghana

How to add Mobile Money payments to your online store in Ghana

11 min read

A miniature glossy white shop front with an awning on a black surface, and a slim white smartphone in front of it, joined by a single thin red cable that plugs into a small socket on the side of the shop.

To add Mobile Money payments to your online store in Ghana, open a Paystack account, submit your ID, TIN and business papers, then connect it: the Paystack app on Shopify, the Paystack plugin on WooCommerce, or a Payment Page link if you have no store. Test in test mode, pay a real GHS 1 by MoMo, then check your Meta Pixel still records the sale.

What do you need to accept Mobile Money payments online in Ghana?

Start with the payment account, because approval is the slow part and a store cannot take money without it. A payment gateway collects MTN MoMo, Telecel Cash and AirtelTigo Money for you and pays you in cedis. This walkthrough uses Paystack, because it has an official Shopify app and WooCommerce plugin. Our guide "Paystack vs Hubtel vs expressPay" compares the fees and payout speeds of all three.

A new Paystack account opens in test mode. To go live, you fill in four sections on the Compliance page of your dashboard: Profile, Contact, Owner and Account. Account is the bank account or MoMo wallet your payouts go to. Paystack says a business goes live automatically once every field is complete and the documents are verified, and its review team emails you if anything needs fixing.

Two Ghana details save time. Since 1 April 2021 the Ghana Card PIN has replaced the GRA Tax Identification Number for individuals, so for a sole trader the Ghana Card number is the TIN. Business names and companies are registered with the Office of the Registrar of Companies, which Paystack's document list still calls the Registrar General's Department. At the time of writing (September 2026), Paystack asks Ghanaian businesses for:

  • Not registered yet (a Starter business): a Ghana Card, passport, driver's licence or voter's card, a TIN, and a personal bank account or MoMo number, all in the same name. Collections pause at GHS 30,000.
  • Sole proprietorship: your certificate of registration.
  • Company limited by shares: the certificate of incorporation, Form 3 and the company's TIN.
  • Company limited by guarantee: the certificate of incorporation, Form 3B and the TIN.

How do I add Paystack to my Shopify store in Ghana?

Check two things first. Shopify filters its list of payment providers by the store address in Settings, then General, so a store with an address outside Ghana may not see Paystack at all. And a store on a free trial starts in private mode or with checkout switched off; Shopify says you must choose a paid plan before customers can buy. Set the store currency to Ghana cedis, so the price a buyer sees is the price charged.

Then follow the steps in Paystack's help centre. The Paystack app only moves money: orders, delivery fees and stock stay in Shopify. Shopify also charges its own fee on every order paid through an outside gateway, because Shopify Payments is not offered in Ghana; our guide "Does Shopify work in Ghana?" sets out those rates by plan.

  • In your Shopify admin, open Settings, then Payments, then click Add payment methods.
  • Choose Search by provider, select Paystack, click Connect, then Install app.
  • Paste your API keys from the Paystack dashboard (Settings, then API Keys & Webhooks) and click Save.
  • Click Activate Paystack.
  • Choose which payment logos show at checkout, and keep Mobile Money on so buyers see MoMo before they tap.
  • Tick Enable Test Mode, with your test keys, for practice orders. No real money moves in test mode.

How do I add Mobile Money to a WooCommerce store?

Install Paystack's free plugin, Paystack WooCommerce Payment Gateway, from the Plugins page in WordPress. At the time of writing it has more than 30,000 active installs, lists Ghana and GHS, and takes cards, mobile money and bank transfer. Then go to WooCommerce, then Settings, then the Payments tab, tick Enable Paystack, choose Popup or Redirect checkout, and paste your test and live API keys.

Two settings matter more than the rest. The plugin's default title is "Debit/Credit Cards", which tells a MoMo buyer you do not take MoMo, so rename it "Mobile Money or card". And copy the webhook URL shown in red on the plugin's settings page into the API Keys & Webhooks section of your Paystack dashboard. The plugin's own page recommends the webhook for reliable order updates on poor networks.

Without it, a buyer who approves the MoMo prompt but never returns to your site leaves an order at Pending payment, which WooCommerce defines as an order with no payment made. For Hubtel and expressPay, check who built the plugin. expressPay links its own WooCommerce plugin from its developer docs; it lives on GitHub and was last updated in October 2025. An older expressPay listing on WordPress.org dates from January 2016 and has not been tested with recent WordPress versions.

Hubtel has no official plugin in the WordPress directory at the time of writing. The one listed, Payments for Hubtel, says an independent developer built it and it is not affiliated with Hubtel, so Hubtel usually means a developer and its API. To hand the setup over instead, Maxme's Store Launch builds the store with MoMo checkout, delivery zones and the Meta Pixel for GHS 5,000 (about US$430) on WooCommerce or GHS 6,000 (about US$517) on Shopify, one-off and excluding VAT; see our pricing page.

How can I accept MoMo payments online without a website?

Use a payment link. In your Paystack dashboard, open Payment Pages, click New Page, pick One-time Payment, Subscription or Product, fill in the details and click Create. You get a link such as paystack.com/pay/yourshop to paste into a WhatsApp chat, an Instagram DM or your bio. The buyer opens it, taps Mobile Money, enters their number, chooses the network and approves the prompt on their phone.

A Product page shows several items with prices, which suits a small catalogue sent to a chat. Make sure the page is published in Live mode before you share it, because a test-mode page takes no real money. Hubtel's route is invoicing: its merchant portal sends invoices as links, and Hubtel BackOffice invoices carry the amount, a payment link and a due date, with automatic reminders.

Either way you get a payment record in a dashboard instead of a screenshot, which settles any "I have sent it" argument. Our guide "How to sell on Instagram in Ghana" covers the chat side. Here is how the three routes compare, from Paystack's and the platforms' own help pages at the time of writing (September 2026):

Swipe the table sideways to see every column.

Three ways to take Mobile Money online with Paystack in Ghana, from Paystack, Shopify and WooCommerce documentation at the time of writing (September 2026).
Shopify storeWooCommerce storeNo website (payment link)
What you installPaystack app (free)Paystack WooCommerce Payment Gateway plugin (free)Nothing
Where you set it upSettings, Payments, Add payment methodsWooCommerce, Settings, PaymentsPaystack dashboard, Payment Pages, New Page
What you paste inPaystack API keysAPI keys, plus the webhook URL into PaystackNothing: you share the link
Paystack fee per payment1.95%1.95%1.95%
Extra platform feeShopify's third-party fee (2% on Basic)NoneNone
How Meta hears about the saleFacebook & Instagram app, Enhanced or Maximum data sharingMeta for WooCommerce pluginNot automatically; label paid chats in WhatsApp Business
Common trapStore address outside Ghana hides Paystack; test mode left on blocks ordersTitle left as Debit/Credit Cards; no webhookSharing a test-mode link

How do you test Mobile Money payments before going live?

Test twice: once with pretend money, once with real money. In test mode, Paystack's test Mobile Money number is 055 123 4987 on MTN, which completes without a PIN or OTP, and its test card 4084 0840 8408 4081 works with CVV 408 and any future expiry date. Place a full order and check it shows as paid in Shopify or WooCommerce, not stuck as pending.

Then go live and spend real money. Create a hidden GHS 1 product with no delivery charge (turn off the Physical product setting on Shopify, or tick Virtual on WooCommerce) and buy it from a phone on mobile data, once for each network your buyers use: MTN MoMo, Telecel Cash and AirtelTigo Money, now AT Money. Paystack's smallest GHS charge is GHS 0.10, so GHS 1 goes through, and 1.95% of it is about 2 pesewas.

For each payment, check three places: the order is marked paid in your store, the payment shows as successful in your Paystack dashboard, and the confirmation page loaded on the phone. A refund is optional at this amount; Paystack says refunds take 3 to 10 working days and it keeps its fee. On Shopify, untick test mode before launch, because Shopify says customers cannot place live orders while a provider is in test mode.

When does MoMo money from online sales reach your account?

On Paystack, the next working day. Payouts go automatically to the bank account or MoMo wallet on your Account settings, but only on working days, so sales from Friday to Sunday usually arrive on Monday, and a public holiday adds another day. At the time of writing (September 2026), bank payouts wait until GHS 50 has built up, MoMo payouts have no minimum, and requesting a payout below the minimum costs GHS 5.

Hubtel works differently. It credits your Hubtel account balance within the hour, every day including weekends and public holidays, and you move money to your own bank account or MoMo wallet when you choose. expressPay does not publish a settlement schedule, so ask its merchant team in writing. If you restock every Monday morning, that difference in timing can matter more than a fraction of a percent in fees.

Keep the names consistent. On a Paystack Starter account, the ID, the TIN and the payout account must all belong to the same person, so a relative's MoMo number will not do. Plan your cash around the calendar too: weekend ad spend leaves your card on the day, while the weekend's MoMo sales reach you on Monday.

Is your Meta Pixel still counting sales after a MoMo payment?

This is the step most setups miss. The browser Pixel records a purchase when your thank-you page loads, but a MoMo buyer leaves your checkout to approve a prompt on their phone. If they close the tab, lose signal or never come back, the page never loads. Shopify's developer documentation says that if the page where checkout_completed should fire fails to load, the event is not triggered at all.

So send purchases from your server as well. On Shopify, open Sales channels, then Facebook & Instagram, then Settings, then Data sharing settings, and choose Enhanced or Maximum; both add Meta's Conversions API, which sends purchase events server to server. On WooCommerce, Meta's own plugin, Meta for WooCommerce, also sends server events, but watch the opposite problem. In version 3.7.7, its code counts orders still at Pending payment as purchases and can report one the moment the order is created, before the MoMo prompt is approved.

Test both directions. In Events Manager, open Data sources, choose your dataset, click Test events, enter your store address and click Open website, then buy your GHS 1 product in that window and watch for the Purchase. Next, start an order and decline the MoMo prompt: no Purchase should reach Meta. Meta says new data can take 30 minutes or more to show in its reports, so check again later for the server event.

When we audit Ghanaian stores, this is where tracking most often breaks. In one fashion store we worked with, fixing a Paystack configuration error, putting MoMo first and repairing the Meta Pixel took checkout conversion from 5.88% to 20.35%, and completed checkouts from 4 to 23, across two 30-day windows. If you want someone to check yours, our free Ads & Store Audit sends a short video review on WhatsApp within 2 working days, with the three fixes that matter most.

Frequently asked questions

How long does Paystack take to pay out in Ghana?

Paystack pays Ghanaian businesses automatically on the next working day, to the bank account or MoMo wallet set on the account. Payouts do not run on weekends or public holidays, so sales from Friday to Sunday usually arrive on Monday. At the time of writing (September 2026), bank payouts wait until GHS 50 has built up, while MoMo payouts have no minimum.

How do I test Paystack Mobile Money payments?

Use test mode first. Paystack's test Mobile Money number is 055 123 4987 on MTN, which completes without a PIN or OTP, and no real money moves. Then go live and buy a hidden GHS 1 product from a phone on each network your buyers use. Check that the order is marked paid in your store and successful in your Paystack dashboard.

Why is Paystack not showing at my checkout?

On WooCommerce, check that Enable Paystack is ticked under WooCommerce, Settings, Payments, and that your API keys were pasted correctly. On Shopify, check that you clicked Activate Paystack after saving your keys, and that your store address is in Ghana, because Shopify filters its provider list by store address. Also confirm Mobile Money is switched on under Settings, Preferences in your Paystack dashboard.

Can customers pay with Telecel Cash and AT Money on Paystack?

Yes. Paystack's Mobile Money option in Ghana covers MTN MoMo, Telecel Cash and AirtelTigo Money, now AT Money. The customer taps Mobile Money, enters their number, chooses the network and approves a prompt on their phone with an OTP and their PIN. At the time of writing (September 2026), Paystack charges 1.95% per local transaction, the same for MoMo and cards.

Does Paystack refund its fee when I refund a customer?

No. Paystack says its transaction charges are non-refundable, because processing the payment is a service it has already provided. You start a refund from the Transactions page of your Paystack dashboard, and Paystack says customers can expect the money within 3 to 10 working days. Build that lost fee into your prices, especially for items that are often returned.

Do I need a developer to add Mobile Money to my website?

Not for Shopify or WooCommerce with Paystack. Shopify has an official Paystack app and WooCommerce has Paystack's free plugin, and both are set up by pasting API keys from your Paystack dashboard. You may need a developer to connect Hubtel or expressPay to WooCommerce, to add MoMo to a custom-built site, or to fix purchase tracking your plugins do not handle.

Sources

  1. Paystack Support: How to activate your business, accessed 2026-09-25
  2. Paystack Support: Compliance requirements for Ghana, accessed 2026-09-25
  3. Paystack Support: Paystack business types, accessed 2026-09-25
  4. Paystack Support: Test Mode and Live Mode, accessed 2026-09-25
  5. Paystack Support: How to set up Paystack on Shopify, accessed 2026-09-25
  6. Paystack Support: How to set up Paystack on WooCommerce, accessed 2026-09-25
  7. Paystack Support: Payment Pages, accessed 2026-09-25
  8. Paystack Support: Pay with Mobile Money, accessed 2026-09-25
  9. Paystack Support: Managing your preferences (payment channels), accessed 2026-09-25
  10. Paystack Support: Transactions pricing, accessed 2026-09-25
  11. Paystack Support: Automated payouts, accessed 2026-09-25
  12. Paystack Support: Initiating and completing a refund, accessed 2026-09-25
  13. Paystack Developer Documentation: Test payments, accessed 2026-09-25
  14. Paystack Developer Documentation: API reference (supported currencies and minimums), accessed 2026-09-25
  15. Shopify App Store: Paystack, accessed 2026-09-25
  16. Shopify Help Center: Configuring third-party payment providers, accessed 2026-09-25
  17. Shopify Help Center: Trying Shopify with a free trial, accessed 2026-09-25
  18. Shopify Help Center: Placing test orders, accessed 2026-09-25
  19. Shopify Help Center: Selling services or digital products, accessed 2026-09-25
  20. Shopify pricing (third-party transaction fees by plan), accessed 2026-09-25
  21. Shopify Help Center: Facebook data sharing, accessed 2026-09-25
  22. Shopify Dev Docs: checkout_completed standard event, accessed 2026-09-25
  23. WordPress.org: Paystack WooCommerce Payment Gateway, accessed 2026-09-25
  24. WooCommerce: Order statuses, accessed 2026-09-25
  25. WooCommerce: Managing products (virtual products), accessed 2026-09-25
  26. WordPress.org: Meta for WooCommerce, accessed 2026-09-25
  27. GitHub: Meta for WooCommerce v3.7.7, purchase event code, accessed 2026-09-25
  28. Meta Business Help Center: Test events tool for web browser events, accessed 2026-09-25
  29. expressPay Developers: Plugins, accessed 2026-09-25
  30. GitHub: expressPay WooCommerce plugin v2, accessed 2026-09-25
  31. WordPress.org: ExpressPay Woocommerce Payment Gateway (2016 listing), accessed 2026-09-25
  32. WordPress.org: Payments for Hubtel (independent plugin), accessed 2026-09-25
  33. Hubtel News: Merchant Portal invoicing links, accessed 2026-09-25
  34. Hubtel News: BackOffice invoicing with payment links and reminders, accessed 2026-09-25
  35. Hubtel News: Hubtel settlement times explained, accessed 2026-09-25
  36. Ghana Revenue Authority: Ghana Card PIN as Taxpayer Identification Number, accessed 2026-09-25
  37. Office of the Registrar of Companies, Ghana, accessed 2026-09-25

This is part of our online stores work in Ghana. Want it looked at for your business? The free ads and store audit takes two minutes to request.

Keep reading

See your real numbers first

The free audit shows you what your own advertising is doing, in plain language, within two business days. No obligation.