The order spreadsheet of doom.
- ×Orders arrived by email — five different formats from five clients
- ×Mas, the founder, manually re-keyed each one into a spreadsheet
- ×Status updates were sent by reply-all email threads
- ×Approval files were attached, lost, re-attached
- ×11 hours/week of pure admin, every week, growing
Five clients, five formats, one bottleneck.
Indy Ink had grown from a print-on-demand shop into a serious B2B operation. Five enterprise clients — agencies, retailers, internal swag teams — were placing orders weekly for branded apparel and promo goods.
But the system hadn't kept up. Orders came by email. One client used a Google Sheet shared from their procurement team. Another used a custom PO format. A third just wrote requirements in the email body. Mas, the founder, was the integration layer — copying everything into a master spreadsheet, replying with status, chasing approvals on artwork.
It worked. Until the sixth client conversation started, and the math stopped working.
We mapped the operation, not the wishlist.
We spent the first week not building anything. Mas walked us through a real week. We watched orders come in. We logged the variations. We mapped where time disappeared.
The wishlist was big — quotes, invoicing, a ticketing system, integrated production scheduling. But the pain was concentrated in three places: order intake, status, and artwork approval. We focused there.
A multi-tenant portal in 4 weeks.
Each client got their own branded subdomain. We built a product catalogue per tenant — only the SKUs, sizes, and pricing that client had agreed to. Orders went in against that catalogue, not free-text.
Artwork uploads got their own flow: drop a file, the system tags it to the order, sends Mas an approval ping, and tracks versions. Status updates run on automation — when production marks something shipped, all five clients see it instantly.
We integrated with the existing accounting tool for invoicing — no rebuild — and with Shopify for the storefront side. The portal is the operations layer, not a replacement for everything.
The numbers, after six months.
We didn’t need more software. We needed our software to do the boring parts. AppBox built us exactly that — and we got our Fridays back.