AI Quote Generator
Turns a customer's WhatsApp message into a professional quote in under a minute.

Overview
A quoting tool I built for ProClean Commercial Services. A customer sends an enquiry on WhatsApp, you paste it in, and the tool reads the message, figures out the job, and fills in a clean quote you can send straight back. If there's no message to paste, four quick questions do the same thing. What used to mean a spreadsheet and a bit of back and forth now takes about a minute.
The problem
Service businesses lose jobs to slow quotes. Someone messages on WhatsApp, and the owner has to stop what they're doing, work out what the customer actually wants, price it, and type the whole thing up. Often that happens hours later. Sometimes it never happens at all.
The bottleneck was never the cleaning work. It was turning a vague message into a priced, professional reply before the customer went and asked someone else.
The solution
The tool takes the raw WhatsApp message and does the reading for you. It pulls out the service, the scope, and the details, then builds a quote that already looks like it came from the business. When there's nothing to paste, a short four-question form gets you to the same place.
I built it for someone standing on a job site with their phone, not sitting at a desk. No setup, no training. Paste the message and send the quote.
Architecture
The Next.js frontend captures the message or the four answers. A server route reads it with a model call, and the quote gets assembled and rendered ready to send.
- Reads a normal WhatsApp message and works out the job
- The model call runs on the server, so the pricing logic stays private
- Output is a real branded quote, not a wall of text
- Manual mode for enquiries that come in by phone
Screens & diagrams
shotKey features
Paste and go
Drop in the customer's actual message and the quote fills itself in.
Under a minute
From enquiry to a quote you can send, without leaving the page.
Manual mode
Four quick questions build the quote when there's no message to paste.
Looks like the business
Quotes come out branded and ready, so you send straight back.
Implementation highlights
- Got reliable job details out of messy free-text messages, reliable enough to put in front of a paying customer.
- Kept the pricing logic and the model call on the server so none of it ships to the browser.
- Designed the whole thing around a phone on a job site, which meant no setup and nothing to learn.
- Added timeouts and a fallback so a slow response never leaves you staring at a spinner.
Challenges solved
Messy real-world messages
Customer messages are vague and all over the place. Careful prompting and a fixed output shape turned that into quotes you can trust.
The number has to be right
This goes straight to a paying customer, so the quote had to be something you can read and check, not a black box.
Technologies
Future improvements
- Save sent quotes and track which ones turn into jobs
- Nudge the customer when a quote goes unanswered
- More than one service template per business