Problems we've already solved
Thirteen case studies from two production Odoo platforms. Each one starts with the problem a client brought us, then shows what we found, what we built, and what changed afterward.
Start from the symptom
Filter by platform or area, then click through to the case study.
“Payroll is off by half a day for a few people, every single month, and nobody can figure out why.”
See how we solved this“Filing our VAT return is a multi-day spreadsheet exercise, and one missed row means it's wrong.”
See how we solved this“Finance has a depreciation schedule and operations has a spreadsheet of who's holding what — and they don't agree.”
See how we solved this“We're manually retyping customer forms into the ERP all day — PDFs, scans, the occasional phone photo.”
See how we solved this“Our biometric attendance data is technically 'real' but practically fiction — duplicate punches everywhere.”
See how we solved this“Changing a single letterhead logo on our invoices means opening a code editor and redeploying.”
See how we solved this“Our database backups exist, but nobody's confident they'd actually work in an emergency — or that the admin console is even locked down.”
See how we solved this“Someone with admin rights accidentally uninstalled a module we depend on — and another admin could do the same tomorrow.”
See how we solved this“We need dashboards our team can actually build themselves, without a developer for every new chart.”
See how we solved this“We bill flight/project hours by hand, and disputes over 'how many hours was that really' happen constantly.”
See how we solved this“We file VAT for three companies in three GCC jurisdictions, and a gap between filing periods could go unnoticed.”
See how we solved this“Sales reps burn hours on repetitive CRM admin — writing the same follow-up checklists over and over.”
See how we solved this“Some posted journal entries don't match what they should — broken payments, and exchange-rate lines that drifted after posting.”
See how we solved thisMAFA Group — Odoo 17
One Odoo 17 codebase, deployed as four separate company instances: MAFA (parent company, industrial engineering, Jeddah), TechTrade24 KSA and TechTrade24 Germany (B2B industrial trading), and Eesint (Pakistan). Maintained continuously since April 2025.
- Team-built modules
- 55
- Lines of team-written code
- ~130k
- Company instances
- 4
- Maintained since
- Apr 2025
- MAFA Parent company · industrial engineering, Jeddah
- TechTrade24 KSA B2B industrial trading
- TechTrade24 Germany B2B industrial trading
- Eesint Pakistan
Payroll that was off by half a day, every month
Four parts of the system each decided what counted as a working day. We replaced them with one classifier everything reads from.
Led by Umar · ~28,000 LOC Read the case studyA multi-day VAT exercise became a button
Every posted invoice, bill and reversal in the period, claimed automatically — and locked to that one batch.
Led by Umar · Excel layer by Yaseen Read the case studyFinance and operations finally agree on who holds what
An employee assignment became a stock move, so custody, location and book value resolve from one record.
Led by Umar · ~8,900 LOC Read the case studyCustomer forms that read themselves, with a person signing off
A vision model extracts registration forms straight from incoming mail. It never writes to the database — an admin approves.
Led by Umar · ~4,350 LOC Read the case studyBiometric attendance data the payroll engine can trust
Three punches from one person became one event — and HR notifications stopped firing for months-old data.
Led by Umar Read the case studyChanging a logo stopped needing a deployment
Every report in the system, configurable from one settings screen — per report, per page, or per company and language.
Built by Yaseen & Umar Read the case studyBackups that run, and an admin console that is no longer wide open
Scheduled backups that can't collide, and a guard on Odoo's database manager that a compromised admin account can't switch off.
Built by Yaseen · Initial work by Umar · ~7,400 LOC Read the case studyA second lock on the modules the business can't lose
Per-module PIN protection whose recovery secret lives outside the database.
Built by Yaseen Read the case studyPlus: a financial dashboard and budget-vs-actual reporting suite (built by Yaseen), Saudi ZATCA e-invoicing compliance, sales/CRM/project analytics, geofenced attendance expensing, and roughly 45 further modules across finance, inventory, HR, and public self-service portals.
Aviation & Charter ERP — Odoo 18
A second Odoo 18 deployment for a Gulf-based charter aviation and logistics group, operating across the UAE, Saudi Arabia, and Bahrain as three companies under one multi-company instance. Built collaboratively across three engineers since October 2025.
- Team-built modules
- 24
- Lines of team-written code
- ~62k
- Companies, one instance
- 3
- Built since
- Oct 2025
- United Arab Emirates Operating company
- Saudi Arabia Operating company
- Bahrain Operating company
Dashboards management builds itself, without seeing data it shouldn't
A drag-and-drop builder driven by typed, whitelisted conditions, so every viewer sees only what their access rights allow.
Led by Yaseen · Team built · ~20,800 LOC Read the case studyOne source of truth for billable flight hours and crew pay
Zulu-time leg timestamps drive flight hours, block hours, contract hours and crew allowances — computed, not argued over.
Team built — near-even split · ~3,500 LOC Read the case studyVAT across three GCC companies, with no silent filing gaps
One tax classifier replaced scattered detection logic, and every filing period is checked against the last.
Led by Umar · Refined by Yaseen · ~2,600 LOC Read the case studyA sales pipeline reps can't skip steps in
Mandatory checklists gate every stage change, and an AI assistant drafts checklists and whole pipelines from a plain description.
Led by Haseeb · ~4,300 LOC Read the case studyBooks that looked slightly wrong, repaired without SQL
Currency revaluation plus explicit tools that find and fix stale fields on posted journal lines.
Built by Yaseen Read the case studyPlus: a reusable report letterhead engine (Yaseen), percentage-based billing schedules, per-company sequence auto-provisioning that requires zero setup when a new operating company is added, a Central Bank exchange-rate integration, and a Gmail-Meet-style meeting UI for internal collaboration.
Facing something similar?
Tell us what's broken. Chances are we've already fixed a version of it.