One Currency, Eight Tax Authorities: Operations Across the XOF Zone
Eight countries, one currency, eight tax authorities and eight sets of paperwork at eight borders. The CFA franc solves exactly one of the problems a regional group has, and the danger is assuming it solved the others.
A group operating in Dakar, Abidjan and Bamako has something no other regional group in Africa has: it can move goods and money between three countries without a single exchange-rate calculation. The West African CFA franc is legal tender in all eight members of the monetary union, at par, permanently. For anyone who has run operations across Kenya, Uganda and Tanzania, this feels like cheating.
It also produces a specific and expensive error. Because the currency is shared, groups assume the rest is shared too, and they build one set of records as though the zone were one country. It is not one country. It is eight tax authorities, eight registration regimes, eight sets of customs paperwork and — this is the part that surprises people — not even a single VAT rate.
This guide is about that gap: what the currency genuinely removes, what it does not touch, and how to shape your records so the difference is visible before an auditor points it out. Nothing here is tax or legal advice. Confirm every obligation with the relevant authority or your own adviser.
What the shared currency actually buys you
Start with the good news, because it is real and it is worth more than most groups realise. Inside the monetary union there is no exchange rate between member states. A transfer from your Abidjan entity to your Bamako entity moves the same currency at the same value.
That removes an entire class of work that consumes weeks elsewhere on the continent. There is no revaluation of intercompany balances between member states. No translation adjustment when you consolidate them. No argument about which rate applied on the day of an internal transfer. No unrealised gain that appears and disappears with the reporting date. If you have ever reconciled a Nairobi–Kampala intercompany account, you know precisely how much of your finance team's month that gives back.
It also means one base currency genuinely works across your regional operation. Our system locks each organization to a single base currency in which everything is stored, invoiced and printed — a constraint that causes real friction in multi-currency regions. In the franc zone it costs you nothing at all, because there is nothing to convert.
The franc zone removes the exchange rate. It removes nothing else. Every group that has struggled here confused the first sentence with the second.
What it does not touch
Here is the list a regional group needs on the wall. None of these are affected in any way by the shared currency.
Shared currency, separate everything else
The tax authority
Senegal files with the DGID. Côte d'Ivoire files with its own DGI. Mali, Burkina Faso, Niger, Togo, Benin and Guinea-Bissau each have their own. Eight authorities, eight registrations, eight sets of deadlines. The currency on the return is the only thing they share.
The VAT rate itself
Most of the union sits at the same headline rate — but not all of it. Niger is not identical to its neighbours. A group that hardcodes one rate across the zone because "it is all CFA" will be wrong in at least one country, and wrong quietly.
Customs and the border
A shared currency is not a customs union in practice. Goods moving Dakar to Bamako still clear, still wait, and still generate documents. The truck does not care that the invoice is denominated the same on both sides.
Statutory accounts
OHADA harmonises the accounting law across member states, which helps enormously — but the statutory books are still filed per entity, per country, by someone locally accountable for them. We do not produce them anywhere. See the OHADA guide below.
Payroll and social contributions
IPRES and CSS in Senegal. CNPS in Côte d'Ivoire. Different institutions, different bases, different returns, and sector collective agreements layered on top. Nothing about a shared currency makes these converge.
The working currency of your customers
Export customers pay in euros or dollars, and that exposure is real even though the intra-zone exposure is zero. Transactions can be held in their original currency with the rate actually applied recorded on the record.
Read that list again and notice the pattern: the currency removed the financial friction between member states and left every administrative boundary exactly where it was. Groups budget for the first and are ambushed by the second.
The dimension that makes this tractable
There is one structural decision that determines whether a franc-zone group's records are useful or merely voluminous, and it has to be made before go-live because retrofitting it is painful.
Every transaction needs to carry the country it belongs to as a first-class attribute — not inferred from the warehouse, not inferred from the user who captured it, not derivable by someone who knows the business. Explicit, on the record, filterable.
This sounds obvious and is routinely skipped, precisely because the currency is shared. When every amount is in francs, a combined figure looks correct. It adds up. Nothing about it signals that it has silently merged three tax jurisdictions. In a multi-currency region the mistake announces itself — you cannot add Kenyan shillings to Ugandan ones without noticing. In the franc zone the arithmetic works perfectly and the answer is still wrong.
The franc-zone trap, stated plainly
A consolidated CFA total that spans more than one member state is arithmetically correct and administratively meaningless. If your monthly pack contains such a number without a per-country breakdown behind it, that is not a reporting preference — it is an audit exposure waiting for someone to ask a specific question.
How to structure a multi-country franc-zone group
-
Decide the entity boundary before the software boundary
Are Dakar and Abidjan separate legal entities with separate registrations, or one entity with a branch? The answer determines whether you need separate organizations in the system or one organization with a country dimension. Get this from your adviser first; it is not a software question and software cannot rescue a wrong answer.
-
Put the country on every transaction
Whichever structure you chose, make country an attribute you can filter and report on, applied at capture rather than assigned later. Later never comes, and the person who could have assigned it from memory has left.
-
Configure each country's tax lines separately
One maintained VAT preset ships per country. Where a country needs additional lines, configure them with their own rates and effective dates — and accept that configured means yours to keep current. Do not copy Senegal's configuration into Niger because the currency matches.
-
Treat every border crossing as a custody event
Stock leaving Abidjan for Bamako is neither in Abidjan nor in Bamako for several days. Give it a location it genuinely occupies during that window, so the in-transit quantity is a number rather than a discrepancy.
-
Name the statutory holder in each country, in writing
For each entity, write down who keeps the OHADA books, what they receive from the operations system, in what form, and by when. One page. This is the single highest-return hour of the whole implementation.
-
Reconcile per country before you consolidate
A group total that has never been reconciled at country level is a group total nobody can defend. Consolidation is the last step, not a substitute for the ones before it.
Where we sit, honestly
What AWRA OpsHub does today
- The CFA franc as a built-in base currency, resolved automatically from the organization's country — for all eight union members and the central African franc zone as well.
- One maintained VAT preset per country, with net, tax and gross separated line by line on purchases as well as sales at the point of capture.
- Governed operational records across entities — stock, transfers, procurement with approvals and three-way matching, sales, assets, project costs — with documents attached to the transaction rather than to somebody's inbox.
- Multi-location stock including in-transit positions, so a truck between two countries is a place rather than a gap.
- Transactions recorded in a foreign currency with the rate actually applied stored on the record, which matters for euro and dollar trade even though intra-zone trade has no rate at all.
- An audit trail on the operational record: who captured, who approved, who changed, when.
What it does not do
- Statutory OHADA financial statements. Our ledger has no account numbers at all — not a limitation we are hedging, a design decision explained in full in the OHADA guide below.
- Any filing with any tax authority in the zone. We submit nothing, anywhere, in any of the eight countries.
- Fiscal electronic invoicing. Our only such integration is Kenya's eTIMS and it is Kenya-only. Where a franc-zone country has or introduces an e-invoicing obligation, you will need a compliant solution from someone else.
- Turnkey statutory payroll. IPRES, CSS, CNPS and sector collective agreements are not built as maintained calculations. Kenya is our only turnkey statutory payroll market.
- Customs, transit documentation, rules of origin or clearing. We record that a crossing happened and hold the documents. We do not produce them.
- A French-language interface. The system is in English, with no translation files and no setting to enable. For many franc-zone buyers this is decisive, and it should be raised on the first call rather than the third month.
The last two lines of that right-hand column disqualify us for a meaningful share of franc-zone businesses, and we would rather say so here than discover it together in month three.
Everything in that right-hand column can be built for you
That list describes what ships in the standard product today. It is not a statement about what is possible in the franc zone, and it is not a set of permanent refusals — with one deliberate exception noted below. Kenya's eTIMS integration exists because Kenyan clients needed it and paid for it to exist. It did not arrive on a roadmap. The same door is open here: if a fiscal pipeline, a French interface, a maintained payroll engine or a bank feed is what stands between you and a decision, tell us and we will scope it as a build — written spec, timeline and price, before you commit to anything.
A French interface and French documents
Interface text in French plus document templates — facture, bon de commande, bon de livraison — so what a customer receives and what a storekeeper works in are not forced into the same language. The single most requested item in this market, and entirely buildable.
Fiscal pipelines, per authority
Where a franc-zone authority operates or introduces an electronic invoicing obligation: document structuring to the prescribed format, submission against the published interface, and the part vendors skip — rejection handling, resubmission and a daily unmatched report.
A maintained payroll engine, per country
IPRES and CSS, or CNPS, with the current tax scale and your sector's collective agreement, producing declarations in the layout each institution expects. Built and then maintained — which is the commitment that matters, not the initial build.
Banks, mobile money and your accounting package
Statement feeds, Wave or Orange Money reconciliation, and a defined pipe to whatever keeps your OHADA books, so the monthly extract to your expert-comptable stops being a manual export.
One honest exception. The statutory ledger itself is not on this list and will not be. We are not going to ship a numbered SYSCOHADA plan or produce statutory accounts, in any member state, at any price — that is a permanent professional commitment across seventeen jurisdictions and it belongs with people accountable for it. The pipe to your statutory ledger we will happily build. The ledger, no. How the rest works: you describe the requirement, we return a written scope, timeline and cost, and it is built into your environment and maintained with the product.
Tell us what would need to existQuestions worth asking any vendor selling into this zone
"Does your system treat the eight union countries as one market or eight?"
What you will hear
A vendor who has actually sold here will immediately distinguish the currency from the jurisdiction, unprompted.
How to read it
If they answer by talking about the shared currency and stop, they have never had a client audited in two of these countries.
"Show me a report for one country only, filtered live."
What you will hear
Three clicks, on their demo data, while you watch.
How to read it
If it needs an export to a spreadsheet, then country is not really a dimension in their system and you will be doing that export monthly forever.
"What happens to stock in transit between two of these countries?"
What you will hear
A named location, a movement out and a movement in, and a report that shows the quantity currently on the road.
How to read it
A vendor who says the stock "stays at origin until received" is telling you their system cannot see three days of your inventory.
"Who keeps the statutory books, in your typical franc-zone client?"
What you will hear
An immediate, specific answer naming an expert-comptable and describing the handoff.
How to read it
A vendor who claims to cover statutory accounting across OHADA states should be asked to show a filed set of accounts their system produced. The question usually ends the topic.
Where to go next
The accounting boundary is the most consequential thing in this guide and it has a post of its own: OHADA, SYSCOHADA and your operations system. The currency question in detail — including why the euro peg inverts most multi-currency instincts — is in XOF, the euro peg and the dollar. For corridor logistics between these countries see distribution from Dakar and Abidjan. Country-level buying advice is in the Senegal buyer's guide and the Côte d'Ivoire buyer's guide.
Our take
Use the shared currency for what it genuinely gives you — no intra-zone exchange rates, no revaluation, one base currency that actually works regionally — and then treat every other boundary as though the currency did not exist. Country as a first-class dimension on every transaction, tax configured per country rather than copied, statutory accounts held locally by someone named in writing, and no consolidated figure that has not been reconciled underneath. Groups that do this find the franc zone unusually easy to operate across. Groups that read the currency as a general-purpose simplification find out otherwise, usually during an audit.
Operating in more than one franc-zone country?
Tell us the countries, the entity structure and who keeps your statutory books. We will tell you plainly whether the split works and where we stop.
Explore AWRA for the franc zoneFrequently asked questions
Can one system run our operations across several CFA franc countries?
For the operational layer, yes, and the shared currency makes it genuinely easier than the equivalent in East or Southern Africa — no exchange rates between member states, no revaluation of intercompany balances, one base currency across the group. What one system cannot do is collapse eight tax jurisdictions into one. Country has to be a real dimension on every transaction, tax has to be configured per country, and statutory accounts remain a per-entity obligation held locally. Confirm your structure with your adviser before configuring anything.
Is the VAT rate the same across the whole XOF zone?
No, and this is a common and costly assumption. Most union members share a headline rate but at least one does not, and the treatment of specific supplies varies by country regardless. We ship one maintained VAT preset per country rather than one preset for the zone. Additional lines are configurable with their own rates and effective dates, but configured means you own the upkeep. Confirm current rates and treatments with each country's tax authority or your adviser — nothing here is tax advice.
Does AWRA produce OHADA statutory accounts?
No, in any OHADA country. Our chart of accounts has no account numbers at all — it is a short operational ledger, not a SYSCOHADA plan, and it cannot produce a statutory presentation. That is a deliberate design decision rather than a gap we intend to close, and the reasoning is set out in full in our OHADA guide. Your expert-comptable or a local accounting package keeps the statutory books; we hold the governed operational records they work from.
How should we handle stock moving between franc-zone countries?
Treat the crossing as a custody event with its own location. Stock dispatched from Abidjan to Bamako should leave the origin warehouse when it is loaded, occupy an in-transit location for the days it is genuinely on the road, and arrive when it is received and counted. That way the quantity on the corridor is a visible number rather than a discrepancy someone explains at month end. We support in-transit locations; we do not produce customs or transit documentation.
Do you support payroll in these countries?
Not as turnkey statutory payroll. IPRES and CSS in Senegal, CNPS in Côte d'Ivoire and their equivalents elsewhere are not built as maintained calculations that we update when a rule changes — Kenya is our only market where that is true. Employee records, contracts, leave, attendance and the posting of payroll cost into your operational records all work; the statutory computation and returns belong with a local payroll provider or your expert-comptable. Our payroll post is deliberately blunt about this.
Is the interface available in French?
No. The interface is English only. There are no translation files in the product and no setting waiting to be switched on, so this is not a roadmap answer dressed up as a limitation. Documents the system prints — invoices, purchase orders, delivery notes — are produced in English. For a business whose staff, suppliers and customers work in French this is frequently a decisive objection, and we address it directly rather than hopefully in our post on running English-language software in a French-language business.
Is the peg to the euro something we should plan around?
The fixed parity has been stable for a long time and removes euro exposure for franc-zone businesses in a way no other African currency enjoys. That said, monetary arrangements are policy rather than physics, and reform of the zone has been discussed publicly for years. The practical implication for your records is simple and worth doing regardless: record foreign-currency transactions in their original currency with the rate actually applied, so that if anything ever changes you have real history rather than an assumption baked into converted numbers.