Skip to content
← All work17 of 21
Internal ops software · inventory

Hazne

One order, quote to invoice.

A distributor writes in with an order. Hazne carries it through quote, order, pick, pack, ship and invoice under a single document number, and writes every stock move to a ledger that can't be edited.

For
Our own beauty brand's US warehouse and wholesale team
Platform
Web app + phone scanner
Status
Built by Pirahas · in shadow mode
Picking a wholesale order by barcode: a case scan counts the whole case
( 01 · The problem )

Stock lived in a tool we couldn't shape.

Distributor orders arrive written out, not as a file, and had to be keyed into an off-the-shelf inventory tool we couldn't change. Orders mix cases and single units, some ship short, and every stock number needs a reason behind it. The tool didn't follow that flow.

( 02 · What we built )

A system of record we own

We built Hazne on Cloudflare Workers with a SQLite-backed Durable Object as the database. It reads Shopify orders through signed webhooks, runs the wholesale flow end to end and connects to QuickBooks. It is running alongside the old tool in shadow mode before it takes over.

( 03 · How it works )

How it works

01

Six steps, one document

Quote, order, pick, pack, ship, invoice: the same B2B number follows the order the whole way, and each step shows who moved it and when.

02

Barcode picking, cases or units

Scanning a case barcode counts the full case; a unit barcode counts one. A product that isn't on the order raises a full-screen warning. Works from a phone camera too.

03

Back orders without guesswork

If an order ships short, choose to open a back order for the rest at the same price or cancel it. The invoice only covers what actually shipped.

04

A ledger that can't be rewritten

Stock moves are append-only and corrected with reversing entries. Lots, expiry dates and FIFO cost layers sit on top, so every number has a history.

( 04 · Screens )

Screens

Real screens · sample data
B2B documents by stage, with stock shortfalls flagged before picking
Shipping a short order: open a back order or cancel the rest
Today screen: failed events, expiring lots, negative stock
Hazne on a phone: the same six steps and the scan field
( 05 · By the numbers )

0

steps under one document number

From the first quote to the invoice, a wholesale order keeps one number, so the warehouse and accounting look at the same record.

( Stack )Cloudflare WorkersDurable Objects (SQLite)ReactShopify webhooksQuickBooksExpo
Book a call →