Built to Say Yes More Often
They had the relationships and the catalog. What they wanted was the capacity to meet demand whenever it showed up.
A salon runs out mid-afternoon. Under the old rhythm that meant a call to the office, an order on the website, or waiting for the next route visit. All three worked, and all three were backed by people who knew the shop by name.
So the question was never how to fix the channels. It was how to add one that could move at the speed the chair moves.
The team was doing it the personal way. Routes planned by the people who actually drove them. Confirmations in a human voice. Stock verified by someone who could walk over and see the shelf.
That attention is a large part of why salons stayed. The goal was never to remove it. It was to let it carry more weight without asking more of the same people.
We started with the promise, because that is where the risk lives. A salon does not need to hear that product might show up. They need to know when. So the delivery window became the center of the whole product, with a countdown to the cutoff on the home screen, in the cart, at checkout, and on the tracking screen.
The storefront kept doing what it does well: catalog, payment, orders. Alongside it we gave the trade channel its own front door. Salon accounts. Pro pricing. Live stock. A delivery window you choose before you pay.
The app never writes an order itself. It reads what actually happened from a verified webhook, so the screen and the truck never disagree. The dispatch console gives staff the same three moves they already made, now in one place: confirm, route, deliver. The notification a salon gets rides on the status change itself, so the update goes out even on the busiest afternoon.
And every outside service sits behind a clean seam, so the storefront, the maps provider or the routing platform can each be swapped out later without anyone touching the app.
A nine-week build, without cutting the corners that matter.
IndigoWave builds inside the Claude Partner Network, and that is the honest reason a system this deep fit a nine-week fixed-price schedule. Twenty-three vendor interfaces, so no single provider is welded in. Thirteen database migrations, each one shipping its own row-level security in the same commit. A hundred and eighty-eight test files, with full coverage on every piece of code that decides money or timing.
The speed went into rigor, not shortcuts. Our client did not trade correctness to move fast, and they did not pay enterprise rates to get it right.
We have always known our salons, and they have always known us. What we wanted was to be there at ten at night too. Now we are, and it is our own app, so we decide what comes next.
Owner, Professional Beauty Distributor, Atlanta Metro