The verdict in three sentences
Showing the price in the visitor's local currency lifts conversion by 8 to 15 %, but each FX conversion takes a 2.5 to 4 % markup depending on the provider. XOF (BCEAO) and XAF (BEAC) share a fixed peg of 655.957/EUR, which simplifies the franc zone; GNF, NGN and KES float and expose your margin to FX risk. The rule: display local, settle in a stable currency, and price the markup in rather than absorbing it.
Franc-zone currencies and FX borders
Inside the franc zone, the fixed peg removes FX risk between XOF and XAF. GNF floats and must be treated as a volatile currency.
| Currency | Zone | 2026 rate (order of magnitude) | FX risk |
|---|---|---|---|
| XOF | UEMOA (SN, CI, ML...) | 655.957/EUR (fixed) | None intra-zone |
| XAF | CEMAC (CM, GA, TD...) | 655.957/EUR (fixed) | None vs XOF |
| GNF | Guinea | ~8,600/USD (floating) | High |
| NGN | Nigeria | ~1,550/USD (volatile) | Very high |
| GHS | Ghana | ~15/USD | High |
| KES | Kenya | ~129/USD | Medium |
Between XOF and XAF, a merchant can display and settle with no markup. As soon as a floating currency enters, every conversion costs.
FX markup by PSP and conversion impact
FX markup is the real hidden cost line. The values below are 2026 estimates to confirm against your contract.
| PSP | Display currencies | Settlement currency | FX markup | Conversion effect |
|---|---|---|---|---|
| XOF aggregator | XOF/XAF | XOF | 0 % intra-zone | +8-15 % if local |
| Paystack | NGN, GHS, KES, ZAR | Local | 2.5-3.5 % | +10-15 % |
| Flutterwave | 30+ currencies | Local/USD | 3-4 % | +8-12 % |
| Stripe | Multi (int'l) | USD/EUR | 2 % + spread | +5-10 % |
Displaying in local currency improves conversion, but if you settle in another currency the 2.5 to 4 % markup eats margin. Price it in, don't absorb it.
Need a professional website?
Kolonell builds websites that attract clients, optimized for the Sénégalese market. Free quote in 2 minutes.
Mini case study
Koffi sells accessories from Abidjan (XOF) and wants to open in Nigeria. He sells 10,000,000 FCFA/month in the franc zone with no markup. Adding Nigeria via Flutterwave, he projects 3,000,000 FCFA in NGN sales at a 3.5 % FX markup = 105,000 FCFA/month conversion cost. But displaying in NGN rather than XOF brings +12 % conversion, i.e. ~360,000 FCFA in extra sales. Net gain stays positive at ~255,000 FCFA/month: displaying local pays off despite the markup.
FAQ
Should I display everything in XOF to keep it simple? Not if you target several zones. Inside the franc zone, XOF/XAF is enough with no markup. Outside it, displaying local currency wins 8 to 15 % conversion, which almost always beats the 2.5-4 % FX markup.
Are XOF and XAF interchangeable? They share the same fixed peg (655.957/EUR) but remain two currencies issued by two central banks (BCEAO and BEAC). Banknotes are not accepted across zones, but for electronic payment the conversion is neutral.
How do I hedge against volatile GNF or NGN? Settle in USD or EUR and refresh your local prices weekly. A 3 to 5 % buffer margin absorbs the FX drift between two updates.
Who bears the FX markup? By default the merchant. Best practice is to build it into the local-currency display price to keep a stable net margin.
Is Stripe useful in West Africa? Mainly for international customers paying by USD/EUR card. For the local market, an XOF mobile money aggregator stays far cheaper than Stripe's 2 % + spread.
Let's talk about your project. We set up a multi-currency checkout that displays local and protects your margin. WhatsApp +221 77 596 93 33.
Mohamed Bah
Fondateur, Kolonell
Passionate about digital and entrepreneurship in Africa, Mohamed has been helping Sénégalese businesses with their digital transformation since 2020. Founder of Kolonell, he believes every SME deserves a professional and accessible online présence.

