Darmabox
Consolidating work that used to live across several disconnected apps — from costing a custom box to the accounting entry posting itself.

- Client
- Darmabox — custom box manufacturer, Malang
- Industry
- Packaging manufacturing
- Our role
- Product definition, system architecture, and full development — web, server, and floor app
- Duration
- 8 months (November 2025 – June 2026)
- Year
- 2026
Scope at a glance
18
modules in the agreed scope
3
connected apps: office web, server, floor app
8
user roles with separately governed access
14
cost-rate tables the owner can edit without a developer
The problem
Darmabox's daily work was spread across several third-party apps that did not talk to each other. Order data lived in one place, invoices were produced in another, the production board in a third. The same figures were retyped repeatedly, and when the three disagreed, nobody could say which was right.
The sharpest pain was costing. The price of a custom box depends on dozens of interlocking cost components — sheet size, how many boxes fit per sheet, dies, die-cutting, lamination, screen printing, hot stamping, embossing, spot UV, PVC windows, glue, dividers. All of it was worked out by hand in spreadsheets.
The consequence was not merely slowness. The answer changed depending on who did the maths, and there was no way to confirm which number was correct before a quote had already gone out to the customer.
Constraints
- Material prices move constantly. Cost formulas had to be editable by the owner, without calling a developer every time a rate changed.
- Production-floor operators share tablets, and the signal down there cannot be relied on.
- Customers communicate over WhatsApp, not through an app. The system had to meet that habit rather than fight it.
- Every monetary rule follows Indonesian practice: VAT, deposits, staged deposit-and-settlement invoices, and addresses based on the official administrative hierarchy.
Approach
The costing engine was separated from the database
The costing function was written without database access — numbers in, numbers out. This makes calculations easier to test without setting up database state. On this project, the test code grew to roughly twice the size of the calculation code itself.
Two calculation paths are compared through testing
The system computes the same figure along two paths: one produces the total, while the other produces the itemised breakdown. A dedicated test checks that they remain identical and helps identify differences before a change is released.
Every cost rate moved into tables the owner can edit
Fourteen kinds of rate — cutting, die-cutting, dies, glue, screen printing, lamination, hot stamping, embossing, spot UV, windows and more — are not buried in code but stored as data, editable from a menu. A rise in material prices no longer means waiting for a developer's release schedule.
Selling prices follow an approval flow
Cost and selling price are separated. Staff can run calculations, while the selling price passes through draft → pending approval → approved, with specific permissions for the owner and finance team. This helps maintain control over pricing and margin.
One figure flows through the entire chain
A calculation can be saved as a product and then used in an order, production card, delivery note, invoice, payment, and accounting entry. This flow reduces the need to re-enter the same figures in several places.
WhatsApp is disabled in test environments
The system runs in three separate environments, and WhatsApp is disabled in the two non-production environments. This separation reduces the risk of test messages reaching customers.
Screens






Observed outcomes
Work that used to be spread across several apps now runs in one system: costing, sales, purchasing, inventory, the production board, and double-entry bookkeeping all sit in the same place and share the same numbers.
Costing became a more standardised process. Rates are stored as shared data, the formula is applied consistently, and each result can be traced component by component.
The owner can follow the business from a phone — dashboard, stock, orders, even approving purchase orders — without sitting at an office computer.
An honest note: the business impact has never been measured. We hold no before-and-after data, so we make no savings claims on this page.
Other projects
Bersama Jaya Cup
Bersama Jaya Cup
2026Bringing a packaging printing company's records into one system while retaining working habits that remain useful to the team.

Flashlight Cleanstar
2026Building a digital workflow for a motorcycle wash, including a public self-service tablet that is not given access to set prices.
Ready when you are / →
Working through a similar need?
Tell us about the situation. Together, we can map the need, possible approaches, and an initial scope.
We usually reply within one business day.