Building CreditVeto's financial infrastructure from the ground up, with three non-negotiables: AML screening and CBN-compliant KYC, an auditable ledger that could survive regulatory scrutiny, and core banking rails resilient enough for real transaction volume.

Each of those pulls the architecture in a different direction. Compliance logic changes whenever the regulator does. Ledger correctness can never change. And transaction throughput cares about neither — it just needs to stay fast while the other two evolve underneath it.

Three decisions did most of the work — each one trading a simpler implementation for a property the system couldn't afford to lose.

  • Microservices over monolith

    Isolated KYC/AML, ledger, and transaction services independently, so compliance logic could evolve without risking transaction-processing stability — and so each service could scale on its own.

  • Double-entry ledger over a single balance field

    Every transaction recorded as a debit/credit pair rather than a mutable balance. Harder to falsify, trivially auditable, and the industry-standard pattern for financial systems that need to survive an audit.

  • Optimistic response + async queuing

    User-facing requests return fast while heavier processing — compliance checks, downstream settlement — runs behind a queue, with dead-letter queues and backoff/retry logic so failed jobs don't silently disappear.

  • Onboarding significantly faster than the prior manual / semi-manual flows.
  • Recognized as a top-performing platform in the country, based on founder assessment and user feedback.
  • Transaction processing at seamless, production-grade speed.

Private production system — source and demo unavailable.

Building something that has to hold up under audit?

Get in touch