Build
- Custom Software DevelopmentWeb apps, SaaS, integrations
- Custom E-Commerce Web DevelopmentStorefronts, checkout, payments, marketplaces
- Mobile App DevelopmentiOS + Android + cross-platform
- Application DevelopmentEnd-user products from MVP to scale
- Web Design & DevelopmentMarketing sites + e-commerce + portals
Grow
Our products
Case studies
Blog
More
- All case studiesHow we design and build custom software
- All articlesPlanning, building and running software
- Free guides and reviewsBrief template, e-invoicing review, scoping call
- Free toolsRequirements planner, e-invoicing checker and more
- Email signature generatorFree, Arabic and English
- How we workOur philosophy and project management process
Our product · Retail, hospitality & services software
Ten apps, one source of truth.
For years we connected other people’s POS, stock and accounting systems for clients, and spent much of that time reconciling them. EXO NODES is what we built so the work is recorded once — and it is the hardest engineering we have done.

- 10+
- Apps from one codebase: back office, POS (with waiter mode), kitchen, rider, kiosk, websites…
- 1,500+
- API routes in an authorisation manifest checked on every build
- 0 gaps
- Tax document numbers issued sequentially, even offline
- 2
- Languages throughout, right-to-left Arabic included
01
The brief we set ourselves
Restaurants, shops, salons and laundries in the UAE need a till, a kitchen screen, stock, purchasing, accounting, VAT, payroll and reports. Bought separately, those tools disagree with each other, and someone reconciles them by hand every month.
We wanted one platform where every module reads and writes the same data, that many companies can use securely side by side, that works in Arabic and English, and that treats UAE VAT and e-invoicing readiness as part of the core rather than an add-on.
02
What made it hard
A till cannot stop selling when the internet drops, but tax invoice numbers must stay sequential with no gaps — and two tills selling offline at the same time must never issue the same number.
Financial records have to be provable: once an invoice or payment is issued, nobody, including us, should be able to quietly change it. And with many companies on one system, no request may ever see another company’s data.
03
How we approached it
Each till reserves a block of document numbers in advance and sells against it offline; when it reconnects, every queued sale carries a unique key, so a retry can never create a duplicate. Stock, loyalty, time-clock and audit records are append-only journals — the database account the application runs under is not allowed to update or delete them, so the rule holds even if a bug tries.
Regulated events such as invoices, payments and credit notes are written to a hash-chained log that is verified every night. Every route declares who may call it, and a CI check fails the build if an unprotected route appears. AI agents work through the same services as staff, with a person approving their actions and a monthly spending cap that stops at its limit.
04
What is live today
- POS with waiter mode and kiosk, kitchen display and QR ordering
- Stock, recipes and purchasing per branch and warehouse
- Accounting with automatic posting and the UAE VAT return
- Tax invoices generated in the UAE e-invoicing (PINT AE) format, ready for submission through an accredited provider as UAE e-invoicing goes live
- Numbered daily close with blind cash counts
- Rider app, customer app and business websites on the same catalogue
- AI Accountant drafting bills and invoices, with approval
- Arabic and English across the apps
What went into it
What we would tell the next team
- — Decide the rules that must never break — numbering, audit, tenant isolation — before writing features, and enforce them in the database.
- — Offline support is a data-model decision, not a networking feature.
- — Security checks belong in CI. A review catches today’s mistake; a failing build catches next month’s.
Building something similar?
Tell us what it has to do. We reply within one business day with questions and a way to scope it.


