An accounting SaaS built for accountancy firms across the OHADA region, with automatic invoice reading and financial statement production.

The context

Accountancy firms across the OHADA region work to the SYSCOHADA framework, which general-purpose software does not cover. Every entry has to balance, stay traceable and map to the right OHADA account, across dozens of client files in parallel. On top of that came a heavy volume of invoices to capture, arriving on paper as well as digitally.

What we delivered

  • Separated architecture: a Rails API following JSON:API, consumed by a Next.js and React front-end in TypeScript that acts as the application gateway
  • Built-in OHADA chart of accounts, journals, fiscal years and closing, with balance checks enforced at input
  • Per-client file management: purchase and sales invoices, counterparties, cash position, fixed assets, bank reconciliation and CSV, OFX and QIF imports
  • A dedicated Python microservice for automatic invoice reading, combining optical character recognition with language models for field extraction
  • Long-running work isolated into background jobs, so batches of documents never block the application
  • Financial statements and tax filing produced from the ledger and exportable to PDF and Excel
  • Containerised deployment on Google Cloud Run, supporting documents stored on Google Cloud Storage, continuous delivery through GitLab CI

Outcomes

  • The OHADA chart of accounts is covered in full: close to 900 accounts loaded and available to post against
  • Unbalanced entries are rejected at input rather than discovered at closing
  • Interface available in French and English, on a foundation ready for three West African languages: Wolof, Dyula and Fon
  • Invoice reading failures surface within minutes, without waiting for a user to report them

Tech stack

Ruby on Rails · Next.js · React · TypeScript · PostgreSQL · Python · FastAPI · OCR · Google Cloud Run · Cloud Storage · GitLab CI