Build · Shop Software
Shop Desk, the Software That Runs Our Own Repair Shop
Shop Desk is the software that runs Supercanic, our own working auto repair shop, every day. It takes a job from the first missed call to the paid invoice, and every rule in it came from a real day on the floor.
- Year 1Website
- Year 2Map Listings
- Year 3Booking Tool
- Year 4Front Desk
- Year 5Payments
- Year 6Reports
Same six pieces.
Built once. Switched on in hours.
The Short Version
- Quote, approve, schedule, invoice and collect in one place, with the customer signing from their phone.
- A front desk answers texts and missed calls while the team is under a car.
- Postgres with row level security keeps each shop's records walled off from every other shop.
- Every smoke test is a bug that once reached a technician, so it cannot reach one twice.
| Runs on | Node app on Railway |
|---|---|
| Database | Postgres with row level security |
| Proven at | Supercanic, every working day |
| Customer approval | Signed from the customer's phone |
| Front desk | Texts and missed calls answered |
| Test suite | Smoke checks, one per past bug |
- CustomerMissed callTextPhone signature
- Front deskTextbackIntakeHand to a person
- The deskQuoteApproveScheduleInvoiceCollect
- AppNode on RailwaySmoke tests
- DataPostgresRow level security
The Problem Was Hours, Not Features
A repair shop does not lose money in the bay. It loses money at the counter. A call rings while the only person who can answer is under a car. A quote sits in a notebook until the customer gives up. An approval happens over the phone and nobody writes it down. The invoice goes out two days late, and the payment comes in a week after that.
Say a shop gets 40 calls a week and misses a quarter of them. That is ten people a week who called someone else. Say each quote takes fifteen minutes to write, text and chase. That is an afternoon a week spent on typing, not on cars.
We did not guess at those hours. We run a working repair shop, Supercanic, and we felt every one of them. Shop Desk is what we built to get them back.
What We Built
Shop Desk follows a job the way a job really moves. It is one path, not a pile of screens.
- The lead. A call or text comes in. If nobody picks up, the front desk texts back right away and starts the intake.
- The quote. The advisor builds the estimate from the car and the complaint. Labor times link to the shop's own labor guide, and the desk can suggest a time you accept or edit.
- The approval. The customer gets a link and approves the quote from their phone. The signature is stored with the job.
- The schedule. The job lands on the board with a time both ends have confirmed.
- The repair. Photos before and after, the diagnosis, and the parts go on the job as the tech works.
- The invoice and payment. The invoice builds from the approved work. The customer pays, and the car goes home.
The loop matters. When the tech finds something new, the job goes back to the quote step for a fresh approval. In a real shop that is the normal case, so the desk treats it as normal.
How It Is Wired
The app is a Node service on Railway. It talks to a Postgres database. Every table that holds shop data has row level security turned on, so a query from one shop can only ever see that shop's rows. The wall lives in the database, not in the app code. If a screen has a bug, the database still says no.
Customer notes and internal notes are two separate fields on purpose. One crosses to the customer. The other never does. The customer page is built so it never shows what the shop paid for a part.
The front desk runs beside the app. It answers the missed call, keeps the text thread, and hands the thread to a person when one steps in. You can read how that engine works on the front desk engine page.
What Broke and What We Changed
Running the software on our own shop is the whole point. Every morning the desk meets real cars, real customers, and a tech holding a phone with greasy hands. Things broke, and each break taught us something.
A Signature That Did Not Save
A customer drew their signature on the approval page. Nothing was saved. The page had redrawn itself, and the code was still wired to a pad that was no longer on screen. The customer saw a line of small print and no approval. We fixed the wiring, and then we wrote a smoke check that signs a real approval on every deploy.
A Phone Number Read From an Order Number
The desk once pulled ten digits out of the middle of an order number and treated them as a phone number. A text went nowhere. We tightened the match and added a check with that exact case.
The Rule That Came Out of It
Every check in the smoke suite is a bug that once reached a technician. We do not write tests for things we imagine. We write them for things that already hurt somebody. That keeps the suite short, and every check in it earns its place.
What It Means When You Switch It On
You get software that has already had its bad days. The missed call gets a text before the caller dials the next shop. The quote goes out from the bay, not from a notebook. The customer approves from their couch, and the approval is on file with a signature. The invoice builds itself from the work that was approved, so nobody retypes it.
Two things to know up front. Labor guides are links to your own subscription, not a feed we resell. And card payments need your own payment gateway, which takes a setup call. The desk refuses to charge a card against another shop's account on purpose.
What you do not get is a year of setup. We built it and we run it every day, so you switch it on and start with the next call.
If you work on motorhomes and trailers, read how we shaped the same desk for longer jobs in RV Shop Desk.
Questions People Ask
Is Shop Desk used by a real shop?
Yes. It runs Supercanic, our own working auto repair shop, every day. Every screen has been used on real jobs before it reaches you.
Can my customers approve a quote from their phone?
Yes. They get a link and approve the quote from their phone. The signature is saved with the job.
Can I take card payments on day one?
Not on day one. You need your own payment gateway, and that takes a setup call. The desk will not charge a card through another shop's account.
Can other shops see my customers?
No. Row level security in the database walls off each shop's records. Even if a screen had a bug, the database would refuse the read.
We sell time
Get Years of Building Switched On in Hours
A thirty minute call. A written price. Nothing built until you say yes.