n8n workflow · Chapter 1 of 5
Customer & Order/Reservation Capture
Updated · Tested on n8n 1.x · Part of the n8n Restaurant ebook
Captures every booking, order and enquiry from your website or ads, sorts it with AI and saves it to your CRM — with an instant Telegram alert to the manager.

How this n8n workflow works
- 1An enquiry arrives from your website or lead ad
- 2Details are cleaned and checked for duplicates
- 3AI sets the intent and priority
- 4The enquiry is saved to your CRM
- 5The manager gets a Telegram summary
Who this workflow is for
- Restaurants, cafés & cloud kitchens — capture every table booking, order and enquiry, already sorted by type, without a person reading each one.
- Bars, banquet halls & catering — funnel event/booking enquiries straight into a triaged CRM.
- Any hospitality business — the same pattern classifies and routes reservations, orders, complaints and feedback.
Why it matters: A missed reservation is an empty table; a missed complaint is a bad review. When enquiries pile up in a shared inbox, the urgent ones get buried. A machine that captures, de-duplicates, and classifies every enquiry in seconds means your team sees "3 reservations, 1 order, 1 complaint (High priority)" instead of a messy inbox — and acts on the right ones first. Even one recovered booking a day pays for the few cents of AI this uses per enquiry.
Inside the workflow: node by node
Every one of these nodes is explained in the ebook, with each setting, prompt and expression printed so you can copy it.
- 1. Lead Webhook — The Front Door
- 2. Manual Test Trigger + Sample Lead — Build & Test Without a Real Form
- 3. Normalize Lead — One Clean Shape for Every Source
- 4. Read Existing Customers — Load the Sheet to Compare Against
- 5. Check Duplicate — Have We Seen This Person Before?
- 6. Is New Lead? — The Fork
- 7. Send Duplicate Notice — "Heads up, a repeat came in"
- 8. Classify Enquiry — The AI Triage
- 9. Attach Score — Merge the Triage Back Onto the Enquiry
- 10. Prepare Customer Row — Shape the Exact Sheet Row
- 11. Save Customer — Write (or Update) the CRM Row
- 12. Save Failed Alert — Tell Me If the Save Breaks
- 13. Prepare Activity Row — Build the Audit-Log Entry
- 14. Log Activity — Append to the Audit Trail
- 15. Build Lead Confirm — Write the Manager-Friendly Ping
- 16. Send Lead Confirm — The "New Enquiry!" Telegram Alert
- 17. On Workflow Error → Send Workflow Error Alert — The Global Safety Net
Before you start
- An n8n account (Cloud or self-hosted) — hosts this workflow and its webhook URL.
- A Google Sheets credential — your restaurant CRM lives in a Google Sheet.
- An OpenAI (or OpenRouter) API key — powers the AI intent-triage.
- A Telegram bot + your chat ID — the instant new-enquiry / duplicate / error alerts.
- A lead source to connect to the webhook — your website forms ("book a table" / "order" / "contact") or a Facebook/Instagram Lead Ad (optional while testing; the workflow has a built-in test trigger).
- Restaurant Customers — one row per customer/enquiry. Suggested column headers (the workflow writes these): Customer ID, Date Added, Name, Phone, WhatsApp, Email, Source, Type, Segment, Last Channel, Last Contact, Next Action, Next Action Date, Conversation Log, Notes, Status.
- Rest Activity — your audit log. Headers: Timestamp, Customer ID, Channel, Action, Detail, Outcome, Agent.
Quick setup guide
- 1Credentials: Add Google Sheets, OpenAI/OpenRouter, and Telegram (see the video table). Do these once.
- 2Make your CRM Google Sheet: With two tabs, Restaurant Customers and Rest Activity, using the headers listed in Prerequisites. Copy the spreadsheet's Sheet ID (the long code in its URL).
- 3Import the workflow: (see the JSON link below) and reconnect every red credential node. Put your Sheet ID into all three Google Sheets nodes (Read, Save, Log), and your Telegram chat ID into all four Telegram nodes.
- 4Test with the sample: Click Test workflow — the Manual Test Trigger → Sample Lead runs the whole chain. Check that a triaged row appears in Restaurant Customers, an entry in Rest Activity, and a "🍽️ new lead" Telegram arrives.
- 5Connect your real forms: Activate the workflow, copy the Production webhook URL, and paste it into your website form's POST action / Facebook Lead Ads form (see the video).
What success looks like: A messy incoming enquiry becomes a clean, AI-triaged CRM row (with the right next action), an audit entry, and an instant manager alert — completely hands-free.
Common problems and fixes
No row appears in the sheet
Why: Wrong Sheet ID, or tab not named Restaurant Customers
Fix: Use the exact Sheet ID; name the tab Restaurant Customers; check the Save node's error alert
Every run makes a new row
Why: "Column to match on" not set to Phone
Fix: Keep match = Phone; the Normalize/Check code already strips formatting
Intent is always "Enquiry"
Why: AI credential missing, or output parser not attached
Fix: Reconnect the OpenAI credential; ensure the Output Parser is wired to the agent
Duplicates not caught
Why: Existing rows have differently-formatted phones/emails
Fix: The code keeps the last 10 digits + lowercases email — make sure the sheet columns are Phone, WhatsApp, Email
No Telegram messages
Why: Bot token / chat ID wrong
Fix: Re-check the Telegram credential and that YOURCHATID is your real chat ID
Phone shows as an error in Sheets
Why: A +-leading number read as a formula
Fix: Keep the Prepare Customer Row phone expression that prefixes a '
Setup time
- With Claude Code30–45 minutes
Give the ebook to Claude Code and it builds the workflow for you.
- Import the JSON yourselfAbout 2 hours
Import the ready workflow JSON and connect your accounts.
- Build it by reading the ebookAbout 1 day
Follow every node and setting step by step to learn it fully.
Get this workflow
- Ready-to-import n8n workflow JSON
- Step-by-step PDF: every node and setting explained
- Copy-paste prompts and expressions — no coding
Frequently asked questions
Will this work on free n8n?
Yes. n8n itself can be free (the self-hosted Community edition) or you can use n8n Cloud. The workflow runs on both. You only pay for the outside services it uses, such as AI tokens, and many of them have free tiers to start.
How do I get the API keys (WhatsApp, OpenAI and others)?
The ebook includes a setup video for every API and account this workflow needs, so you can get each key step by step without any coding.
Do I need to know coding?
No. Every node, setting, prompt and expression is printed in the ebook, ready to copy-paste, and the workflow JSON can be imported in one click.
Can I use this Restaurants workflow for my clients?
Yes. Once it works for you, you can set it up for your own business or for clients and charge for the setup.
No row appears in the sheet: how do I fix it?
Wrong Sheet ID, or tab not named Restaurant Customers. Fix: Use the exact Sheet ID; name the tab Restaurant Customers; check the Save node's error alert.
Every run makes a new row: how do I fix it?
"Column to match on" not set to Phone. Fix: Keep match = Phone; the Normalize/Check code already strips formatting.
Intent is always "Enquiry": how do I fix it?
AI credential missing, or output parser not attached. Fix: Reconnect the OpenAI credential; ensure the Output Parser is wired to the agent.