case study · 2026

A2Z Auto Parts: running a parts business from enquiry to invoice

The internal app a UAE used auto parts business runs on: enquiries, quotes, invoices and credit notes, with an optional WhatsApp intake that uses Claude to turn workshops' messages, photos and voice notes into enquiries.

role
Solo project
timeline
2026
stack
Next.js, React 19, Express, MongoDB, Claude API
status
In production · internal tool
01

What it does

  • Enquiries with several items, each with Used, Aftermarket or Original options and their own lead time, cost, price and discount.
  • Numbered quotes with revisions, exported as a PDF or as WhatsApp text the workshop can answer with codes like “1A 2B”.
  • Invoices created from a quote, including part invoicing. Numbers are assigned on the server so two people can never get the same one, and issued invoices can't be edited.
  • Credit notes, part payments, overdue flags and delivery tracking with due dates worked out from lead times.
  • A dashboard of what needs pricing, quotes awaiting reply, deliveries due, sales, profit and unpaid invoices.
02

WhatsApp intake

  • A listener joins WhatsApp as a linked device and saves every message, photo and voice note to MongoDB.
  • Messages from one chat are batched once the chat goes quiet, voice notes are transcribed, and Claude decides whether it's a parts request and lists the items with a confidence score.
  • Requests from known workshops above 85% confidence become enquiries automatically; everything else waits in a review tab.
  • VINs are decoded with the NHTSA vPIC service, and prices the team sends in WhatsApp are matched back to the right enquiry.
  • Quotes can be sent back from the app, one at a time, with safeguards so a message is never sent late or twice.
03

How it's built

  • One Node process serves both the Next.js screens and the Express API, so the browser talks to a single site and the login cookie stays secure.
  • MongoDB doubles as the job queue: each batch is claimed atomically and retried up to three times, and every decision is written to an audit log.
  • Photos are shrunk in the browser before upload, and API tests run against an in-memory MongoDB.
04

Architecture

The web app and API run as one Render service, with the WhatsApp listener as an optional background worker. The live deployment is private to the business.

  1. WhatsApp listener
  2. MongoDB queue
  3. Claude worker
  4. Express API
  5. Next.js app
next projectMenuQR