Fintech • 52 min • May 21, 2026
How Pan-African Payments built one platform for four countries — and the regulatory, engineering, and operating decisions that made it possible.
Forking-by-country fails by month three. You either commit to a single platform on day one, or you spend the next two years untangling four divergent codebases.
Country-specific code lives in three places — regulator policy, KYC, and settlement. Everything else stays in the shared core.
Regulator engagement is engineering, not paperwork. Your compliance team needs an engineer in the room, and your engineers need to read the directives.
Auto-generated and lightly edited. Let us know about errors.
Kwame Asante: Welcome everyone. Today we want to walk through what it actually took to scale a single mobile money platform across four African countries in nine months. Adwoa, you led product on the customer side — can you set the stage for us? Adwoa Mensah: Sure. We started in Ghana in 2023 with a single rail — MTN MoMo. By Q2 2024 the board had given us a mandate to be live in Kenya, Nigeria, and Côte d'Ivoire by the end of 2025. So nine months, four countries, three new regulatory regimes, and zero appetite for a separate platform per country. Kwame Asante: That last constraint is the interesting one. Most teams in this position fork. They take the Ghana codebase, copy it to a new repo, and call it the Kenya version. Six months later they have four codebases, four release pipelines, four sets of bugs, and one engineering team that's drowning. So the first decision was: one platform, country as a runtime configuration. Adwoa Mensah: And to be clear — that's not just an engineering decision. That's a product decision and a regulatory decision. You're committing to a domain model that has to express things like, this transaction is governed by the Central Bank of Kenya, with these KYC thresholds, these settlement windows, these dispute resolution rules. All as data, not as code. Kwame Asante: Right. We have what we call a regulator profile. It's a YAML file per country. It defines the KYC tiers, the per-tier transaction limits, the settlement windows, the supported PSPs, the local currency, the reporting cadence to the central bank. The platform reads that profile at request time. The same code path serves a Ghana transaction and a Kenya transaction — what's different is the profile. Adwoa Mensah: And the second piece is KYC. KYC is the place where country-specific code is unavoidable, because every country has different ID documents, different verification providers, and different acceptable evidence. So we have a KYC abstraction layer. The shared core says: get me a verified identity at tier two for this user. The country adapter knows how to talk to Smile Identity in Kenya, or NIBSS in Nigeria. Kwame Asante: And the third is settlement. Settlement is the slowest piece to move, because it depends on the central bank's clearing rails and your sponsor bank's operational hours. So country-specific settlement code is unavoidable. But again, we wrapped it. The shared core triggers settlement; the country adapter knows what settlement means in that jurisdiction. Adwoa Mensah: One thing I want to call out — engaging with regulators is engineering work. We made the mistake on the Ghana launch of treating the Bank of Ghana directives as a compliance team problem. By Kenya, we had two engineers reading the CBK directives line by line alongside compliance. That cut our integration time roughly in half. Kwame Asante: It's a really underrated point. Regulators write documents that look like policy, but they encode operational requirements — settlement windows, dispute SLAs, reporting formats. If your engineers haven't read those, they're going to build the wrong thing. The compliance team can summarize, but they can't tell you that the settlement window is fifteen seconds shorter on Wednesdays because the central bank does end-of-day reporting at 17:00 local time, not 17:15. That's the kind of detail you only catch if you read the source. Adwoa Mensah: And the result was — we hit our nine month timeline. Three of the four launches were on time. The fourth — Nigeria — slipped by six weeks because of a regulatory change mid-flight, which is just life in Nigerian fintech. Kwame Asante: One more thing on the engineering side. We made a very deliberate decision to keep the customer-facing API stable across all four countries. So if you're a partner integrating with us, you call the same endpoint whether you're sending money in Ghana or Côte d'Ivoire. The country routing happens inside our platform. That was a significant simplification for our enterprise customers, and it's something fork-by-country teams give up. Adwoa Mensah: And it's a competitive advantage. Our customers tell us repeatedly that the reason they pick us over a domestic-only PSP is exactly this — one integration, four markets. Kwame Asante: Thank you Adwoa. We're out of time but the full architecture diagrams and the regulator-profile YAML schema are linked in the resources section.
We run custom 60-minute briefings for enterprise customers. Topics tailored to your engagement.
Request a private briefing