Accounting
General Ledger: Opening, Period Total & Closing per Account
Initial balance, period movements, period total and closing balance under every account
Websites, web apps, mobile apps and ERP systems — built, rescued and kept fast. Thirteen years across the full stack, with deep specialist expertise in Odoo.
What I build
Thirteen years across the layers a real product needs. Every one of these is something I have shipped and maintained, not something I have read about.
Customer-facing platforms and internal dashboards that stay fast as they grow.
The engine room: business logic, integrations and services other systems depend on.
One codebase for iOS and Android, published and maintained on both stores.
Where slow systems get fixed: schema design, query tuning, and rescuing what has become painful to use.
Servers, containers and networks defined in code — so an environment can be rebuilt on demand rather than reconstructed from memory.
Push code, the tests run, and the change deploys itself. Releases become routine instead of an event nobody wants to schedule.
I build the tooling, not just use it — including developer tools I publish openly.
Where I go deep
Three hundred custom features across twenty businesses. Here is where that work actually sits, so you can find your own problem in the list.
More about my Odoo work
Most developers need the process explained to them. I have spent years inside accounting, stock and sales — so we can argue about the process, not just the screen.
Ready-made solutions
Across retail, restaurants, manufacturing, HR, real estate, education and e-commerce. If one of these describes your problem, most of the work is already done.
Each branch sees and sells only its own stock. Cashiers cannot pull inventory from a warehouse they do not belong to.
Stop selling what you do not have — the till refuses out-of-stock items, or offers an alternative that is in stock.
A maximum discount per cashier, and credit customers stopped at the till once they pass their limit.
Restrict which payment methods a refund can return to and who may process one — and capture the reason every time.
Alerts when a branch opens late or closes early, and every sale attributed to the employee who made it.
Orders routed to the right kitchen station as they are taken, with duplicate tickets where a station needs them.
Seat-level assignment, guest counts captured automatically, and order tabs held under the customer's name.
Arabic product names on the receipt, Bluetooth printer support, and automatic invoice printing.
Payments, expenses, budgets and safety sign-offs routed by department before anything posts to the books.
Trial balance, general ledger and partner ledger that carry opening balances correctly — plus petty cash and custody.
Every invoice, payment and expense carries its project or branch, so profitability is a report rather than a spreadsheet.
Residency permits, licenses and contracts that warn you before they expire, not after.
Leave requests submitted by email, attendance controls, manager time-off, and end-of-service settlement reports.
One HR department across several legal entities, with payroll extensions and appraisal tracking.
Quantity validation on production and picking, and fixed-cost handling for by-products.
Allocated time, budgets per project, submittals for construction, and every document in one place.
Units, tenants and managed properties with contract terms carried through to the accounts.
Branch and area-based maintenance requests with timeslot capacity, so a technician cannot be overbooked.
Products, stock and orders kept in step between your Salla storefront and Odoo — in both directions.
AlRajhi, ClickPay, UPayments/KNET, Tamara and Tabby — each reconciling correctly against the accounts.
A full e-learning platform: course catalogs and filters, an exam system, certificate issuing, video hosting and live sessions.
Order updates and customer satisfaction surveys sent over WhatsApp, where customers actually read them.
Reports the standard views cannot express — filters, drill-downs, branch scoping and Excel export.
What has been sitting on the shelf, for how long, and which products actually make money.
Bulk importers for charts of accounts and master data, plus safe batch-merging of duplicate customers.
Odoo Apps Store
Focused modules on the official Odoo Apps Store — install in minutes, English and Arabic included.
Accounting
Initial balance, period movements, period total and closing balance under every account
Accounting / Localizations / EDI
Block posting a ZATCA e-invoice for a company customer whose address, VAT or identification data is missing or malformed
Productivity / Sign
Company stamp field for Odoo Sign; authorized users stamp documents with one click, without the Odoo Sign frame
How I can help
Whether you have a system that has stopped keeping up, or something you need built from scratch.
Staff have stopped complaining because they gave up. I find what is actually slow and fix it — usually without anyone stopping work.
New rollouts, or taking over a build that stalled. Accounting, inventory, POS, manufacturing and everything between.
Moving off an old version without losing your customizations — or your data. I have done it across three major versions on a live business.
Local card payments, buy-now-pay-later, and connecting the systems that refuse to talk to each other.
Web and mobile, from the first screen to the infrastructure it runs on. Built to handle real traffic, in Arabic and English.
If deploying is scary, it happens rarely — and rare deployments are the risky ones. I set up pipelines that test and ship automatically, with a way back when something is wrong.
Code review, standards and mentoring for a team that is growing faster than its habits.
Selected work
Client names are withheld. The numbers are not — every one comes from a system I can open.
A retail group with dozens of branches. The busiest screens took about a second to open, and one page froze for nine. Fixed on the live system during working hours — nobody was sent home.
One of the largest custom Odoo systems I have worked on, brought up to date without a shutdown — including the parts the vendor rewrote twice underneath us.
Read the storyLocal card payments and buy-now-pay-later, wired end to end. Five payment platforms, each reconciling correctly against the accounts.
Read the storySearch, availability, checkout and payment — with the cloud infrastructure defined in code so it can be rebuilt from scratch on demand.
Read the storyOpen source
Work I have published for other people to use — including a security fix that now ships with the install script the Odoo community relies on.
It gave the database far more power over the server than it needed. My fix is now part of the script everyone uses.
Yenthe666/InstallScript — View on GitHubThree tools that encode the upgrade rules I kept repeating in code review, so they apply whether I am in the room or not.
minaonlyone/odoo-skills — View on GitHubRuns entirely in the browser — no server, no account, no tracking.
minaonlyone/minacut-studio — View on GitHubThe route here
I did not start with ERP. Every stop before it is why the ERP work holds up.
A school management platform in daily use. It taught me that the data model outlives every screen you build on top of it.
Websites, custom dashboards, mobile apps — and the phone systems and networks behind them.
Online platforms and payment gateways. Handling money taught me to build things that reconcile.
Joined an Odoo practice at its founding — no team, no codebase, no standards. I helped build all three.
A year leading instructors at an applied-technology school. It is the reason my code reviews are any good.
Leading and mentoring a development team, owning the architecture and standards, and taking on the problems nobody else can solve.
No cost, no pitch
Bring the problem you keep postponing. We will work out whether it is worth fixing, what it would take, and whether I am the right person for it.