All selected work
Live · imoox.netBusiness platform

Sales, operations and finance finally read the same numbers.

A custom CRM and ERP built as one system. Orders, inventory, production and finance live in a single platform shaped around how the business actually runs — not around what an off-the-shelf tool allows.

IMOOX control center
Client
IMOOX
Sector
Operations & trade
Layers
02 · 03
Status
In production
Ownership
Client, day one
The problem

Five tools, five versions of the truth.

Sales in one system, stock in a spreadsheet, production on a whiteboard, finance in another tool. Every report was assembled by hand — and every hand-assembled report is a decision made on stale data.

Reconciliation as a full-time job

Hours each week spent making numbers from different tools agree, instead of acting on them.

No single source of truth

Two departments could both be right and still disagree, because each read a different system.

Off-the-shelf did not fit

Generic CRM and ERP forced the team to work around the software instead of the software serving the work.

What we built

One platform, not five integrations.

The hard part is not features — it is one data model that sales, warehouse, production and finance can all trust at the same time.

01

Unified data model

Clients, orders, stock, production and payments as one connected schema — no syncing, no duplicate records.

02

Sales pipeline & orders

Deals move from enquiry to order to fulfilment in one flow, with the history attached to the record.

03

Inventory & production

Stock levels, purchasing and production status update as work happens, visible to everyone who needs them.

04

Finance & reporting

Invoicing, payments and margin reporting derived from live operational data instead of monthly reconstruction.

How it was built

Mapped before it was built.

Every role, every document and every state transition was written down first. In a business platform, a wrong data model is not a bug you patch — it is a migration you pay for twice.

LaravelVueTypeScriptPostgreSQLRole-based access
01

Discovery

Process interviews, document flows, permission matrix and the definition of every record's lifecycle.

02

Data model

One schema covering clients, orders, stock, production and finance — designed to absorb new processes without rewrites.

03

Interfaces per role

Sales, warehouse, production and finance each get the view they need — same data, no training marathon.

04

Handoff

Repository, infrastructure keys, admin documentation and full IP — transferred, not licensed.

OutcomeIn production today

Decisions made on today's numbers.

The team stopped reconciling and started operating. One platform, one truth, owned outright by the client — and extensible as the business changes shape.

Manual reconciliation between tools eliminated
Orders, stock and production visible in one place, live
New processes added without buying another tool
Reporting derived from operations, not rebuilt monthly