Directory / plugin

Fosia Pay Lite – PawaPay Mobile Money for WooCommerce

v1.2.0 · by FOSIA Ltd

Free Mobile Money gateway for WooCommerce with PawaPay: MTN MoMo, Airtel Money, Orange Money, M-Pesa and more. No commission, unlimited payments.

About this plugin

Fosia Pay Lite is a free WooCommerce payment gateway for Mobile Money in Africa, powered by the PawaPay API. You need your own PawaPay merchant account: a Sandbox account to test is free and opens in minutes; PawaPay opens the Live account after checking your business (see the FAQ). Accept MTN MoMo (MTN Mobile Money), Airtel Money, Orange Money, M-Pesa, Moov Money, Wave and the other Mobile Money networks served by PawaPay: 43 networks in 21 African countries, from Rwanda, Uganda, Kenya and Ghana to Cameroon, Côte d’Ivoire, Senegal and DR Congo.

The customer sees the amount in their own Mobile Money currency before paying, is sent to PawaPay’s secure payment page, picks their operator, approves the payment on their phone with their Mobile Money PIN, and comes back to your store. The order is marked paid only once PawaPay confirms the payment, and a customer who comes back without paying sees “Payment not received yet” with a “Pay now” button, never “Thank you”.

No commission on your sales, ever. The only fees are PawaPay’s own processing fees, agreed directly between you and PawaPay. No limit on the number of payments, no licence key, no time limit.

En français : Fosia Pay : le Mobile Money sur WooCommerce

Features

  • WooCommerce payment gateway for the classic checkout and the block-based Cart & Checkout
  • Works in the countries and with the operators enabled on your PawaPay account (MTN MoMo, Airtel Money, Orange Money, M-Pesa, Moov, Vodacom and more)
  • PawaPay hosted payment page: the plugin never sees or stores Mobile Money PINs
  • Automatic conversion from your store currency to the customer’s Mobile Money currency, shown at checkout before the customer pays
  • Clear return page: paid, “Payment not received yet” (with “Pay now” and “Check again”), failed (with the reason in plain words and “Try again”), or “Confirming your payment”
  • Mobile Money is only offered when it can work: hidden without a PawaPay token, with a token PawaPay refused, or for a billing country your PawaPay account does not cover
  • Payments re-checked with PawaPay in the background, so a customer who paid and closed the page is confirmed even without a callback
  • Amounts follow the decimals and limits set on your PawaPay account
  • Payment confirmation you can trust: every PawaPay callback, signed or not, is confirmed by reading the payment from PawaPay with your own token (status, amount and currency) before an order is marked paid
  • Guided setup in about 3 minutes once you have your PawaPay API token: the token is tested with PawaPay before it is saved
  • Dashboard: setup checklist with a “Test now” button, whether customers see Mobile Money at checkout, volume per currency, success rate and recent payments (with the operator and why an order is unpaid)
  • Insights, computed on your site from your own orders: unfinished checkouts at the PawaPay page, failed payments by reason, refunds done by hand
  • Sandbox mode for testing before going live
  • Compatible with WooCommerce High-Performance Order Storage (HPOS)
  • In English and French (more languages through translate.wordpress.org)

Supported countries and Mobile Money operators

Fosia Pay Lite works with the countries and operators enabled on your PawaPay account:

  • Benin: MTN MoMo, Moov Money
  • Burkina Faso: Orange Money, Moov Money
  • Cameroon: MTN Mobile Money, Orange Money
  • Congo (Brazzaville): MTN MoMo, Airtel Money
  • DR Congo: Vodacom M-Pesa, Airtel Money, Orange Money
  • Côte d’Ivoire: MTN MoMo, Orange Money, Wave
  • Ethiopia: Safaricom M-Pesa
  • Gabon: Airtel Money
  • Ghana: MTN MoMo, Telecel Cash, AT Money
  • Kenya: M-Pesa
  • Lesotho: M-Pesa
  • Malawi: Airtel Money, TNM Mpamba
  • Mozambique: Vodacom M-Pesa, Movitel e-Mola
  • Nigeria: MTN MoMo, Airtel
  • Rwanda: MTN MoMo, Airtel Money
  • Senegal: Orange Money, Wave, Free Money
  • Sierra Leone: Orange Money
  • Tanzania: Vodacom M-Pesa, Airtel Money, Mixx by Yas, Halopesa
  • Uganda: MTN MoMo, Airtel Money
  • Zambia: MTN MoMo, Airtel Money, Zamtel Kwacha
  • Zimbabwe: EcoCash

Your store can keep its prices in US dollars, euros or any currency: the amount is converted to the customer’s Mobile Money currency (RWF, UGX, KES, TZS, GHS, XOF, XAF, CDF, ZMW, NGN and more) at checkout.

Fosia Pay Pro

Fosia Pay Pro is a separate, paid plugin by the same team. It adds on-site checkout without redirect, refunds from WooCommerce, payouts, payment links with QR codes, a REST API, and a callback router for several sites on one PawaPay account. Fosia Pay Lite works fully on its own. Learn more.

Requirements

  • WooCommerce
  • A PawaPay merchant account and API token

External services

PawaPay (payment processor)

The plugin cannot take payments without PawaPay. Requests go to api.pawapay.io (live) or api.sandbox.pawapay.io (sandbox mode), with your PawaPay API token.

  • At checkout, when a customer pays with Mobile Money: the plugin reads your account’s amount rules (decimals, minimum and maximum, cached for 1 hour) and creates a PawaPay payment page with the amount and currency, the customer’s country, a short text (“Order 123”), a payment id, your store’s return URL and the checkout language. The customer’s phone number is only sent if you turn on “Pre-fill and lock the Mobile Money number” in the settings (it is then checked with PawaPay’s phone number validation).
  • When PawaPay sends a payment result to your callback URL, or when the customer returns to your store: the plugin may ask PawaPay for the payment’s status, and downloads PawaPay’s public signing keys (cached for 12 hours) to verify signed callbacks.
  • When you click “Test Connection” in the settings: the plugin reads your PawaPay account configuration.

PawaPay Merchant Terms of Service and Privacy Policy.

ExchangeRate-API (open.er-api.com)

Used only when your store currency differs from the customer’s Mobile Money currency (for example, a EUR store and a customer in Rwanda paying in RWF). When no rates are cached, the plugin requests https://open.er-api.com/v6/latest/{store currency}: at checkout, or in the background (WP-Cron) after a successful connection test, when the Fosia Pay dashboard is opened or when the checkout needs the rate to show the amount in the customer’s currency. Only the currency code is sent: no personal, customer or order data. Rates are cached for 12 hours.

ExchangeRate-API Terms of Use and privacy.

Fosia (pay.fosiarw.com) — only if you opt in

Off by default: nothing is sent to Fosia unless an administrator ticks the consent box and clicks “Connect this site” in FosiaPay > Dashboard > “Connect this site to Fosia (optional)”.

  • When you connect, then at most once a day, the plugin sends https://pay.fosiarw.com/wp-json/fosia/v1/heartbeat: a random installation ID created on your site, the plugin name and version, your WordPress and PHP versions and your site language. Fosia uses it to count active installations and decide which WordPress and PHP versions to keep supporting.
  • When you click “Disconnect”, or delete the plugin while connected: the plugin sends the installation ID with a deletion request, Fosia’s server deletes the record, and the ID is removed from your site.
  • Your domain, e-mail address, customers, orders and PawaPay token are never sent (the request uses a neutral user agent, without your site address).

Fosia Terms of Service and Privacy Policy.

Fosia (pay.fosiarw.com) — “Quick feedback” when you deactivate, only if you submit it

When you click “Deactivate” on Fosia Pay Lite in Plugins, a “Quick feedback” window asks why. It is optional: nothing is sent if you click “Skip & Deactivate”, the × or Escape (closing it keeps the plugin active).

  • Only if you pick a reason and click “Submit & Deactivate”, your site (not your browser) sends once to https://pay.fosiarw.com/wp-json/fosia/v1/feedback: the reason, the text you typed (optional, 500 characters at most), the product and edition (Fosia Pay Lite), the plugin, WordPress and PHP versions and the site language.
  • Your site address and your e-mail address are sent only if you tick “You may email me about this” (unticked by default), so that Fosia can answer you. No customer, order or payment data and no PawaPay token are ever sent; the request uses a neutral user agent, without your site address.
  • Fosia keeps the answers 12 months, then deletes them. No IP address is stored.

Fosia Terms of Service and Privacy Policy.

YouTube (setup video), only when you press play

The Welcome step of the guided setup shows a picture of the Fosia Pay video, stored in the plugin. Nothing is requested from YouTube until you click it; the video then plays from https://www.youtube-nocookie.com (Google), which receives your IP address and browser details like any embedded video. Without JavaScript the link opens the video on youtube.com.

YouTube Terms of Service and Google Privacy Policy.

No other external request is made. The dashboard, its insights and the guided setup load nothing from outside your site (apart from the video above, on click); links to pay.fosiarw.com, PawaPay and WhatsApp only open when you click them.

Plugin tags