Back to projects
Live in ProductionAutomation Engineer · Sole Builder · 2025 to Present
Quoting & Invoicing Automation
GoHighLevel + n8n Workflow Estate
A live workflow estate that takes a business from an inbound WhatsApp message to a priced quote, an approved PDF and a paid invoice without anyone typing it out. GoHighLevel holds the customer and the pipeline, n8n does the thinking, and a person approves every price before it reaches a customer.

The Problem
Every enquiry arrived on WhatsApp as free text and someone on the team priced each job by hand and typed the quote out. Turnaround was about a day and work was being lost to whoever replied first. An earlier attempt had also been sending some customers two quotes for the same order.
Architecture & Approach
- GoHighLevel as the system of record across thirteen pipeline stages and nineteen custom fields, holding contacts, opportunities, conversations and the team dashboard
- n8n as the orchestration layer, self hosted, with twenty three published workflows covering intake, pricing, approval, invoicing and exception handling
- An LLM step that reads the free text a customer wrote and extracts the job detail into clean structured JSON, in whatever layout it arrives
- Live stock and pricing lookups against the client point of sale system over its API, so the AI never invents a number
- A durable queue behind every webhook, with the endpoint acknowledging first and doing the slow work in the background
- An atomic idempotency claim on the enquiry ID, written as a single insert that fails if the record already exists, so a retry can never produce a second quote
- Human approval gate before any quote reaches a customer, then automated PDF generation, invoice and payment link
- Supporting workflows for stuck order detection, restock notification, change requests and backlog re engagement
Tech Stack
n8nGoHighLevelOpenAIAnthropic ClaudeREST APIsWebhooksPOS IntegrationPDF GenerationPayment LinksQueuesWhatsApp Business API
Results
- 23 published workflows running in production
- 2,861 production executions with zero failed runs
- Over a thousand quotes processed, every one starting as a WhatsApp message
- Quote turnaround cut from around a day to a couple of minutes
- Duplicate quotes eliminated through webhook acknowledgement, queues and atomic idempotency