Skip to main content

Send AI-parsed restaurant orders and status updates via Telegram and Google Sheets

Workflow preview

Workflow preview
100%
Send AI-parsed restaurant orders and status updates via Telegram and Google Sheets preview
Open on n8n.io

1. Workflow Overview

AI Powered Restaurant Order & Notification System A Complete n8n Workflow for Automated Ordering and Customer Updates This professional n8n workflow provides an end to end solution for small res...

Best for

  • Support Chatbot automation workflows
  • AI Chatbot automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.telegramtrigger, n8n-nodes-base.code, n8n-nodes-base.switch, n8n-nodes-base.telegram, @n8n/n8n-nodes-langchain.agent, @n8n/n8n-nodes-langchain.lmchatanthropic, n8n-nodes-base.googlesheets, n8n-nodes-base.if

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Nirav Gajera.

Original n8n.io source

1.1 Workflow description

Title
Send AI-parsed restaurant orders and status updates via Telegram and Google Sheets
Workflow name
Send AI-parsed restaurant orders and status updates via Telegram and Google Sheets

πŸ• AI-Powered Restaurant Order & Notification System

A Complete n8n Workflow for Automated Ordering and Customer Updates

This professional n8n workflow provides an end-to-end solution for small restaurants. It includes a Telegram Customer Bot for placing orders and an Automated Notification System that updates customers via Google Sheets.


πŸ“– Description

This system eliminates the need for manual order taking and status updates. It features:

  1. AI Order Bot: Customers chat with a Telegram bot to view the menu and place orders. An AI agent (Claude Haiku) parses natural language (e.g., "2 pizza + 1 coke") into structured data.
  2. Order Management: Orders are saved automatically to Google Sheets for staff to manage.
  3. Real-Time Notifications: As staff change the status in the sheet (e.g., to Preparing or Ready), n8n instantly notifies the customer via Telegram.

Key Bot Commands

Command Description
/start Welcome message and instructions
/menu View today's food and drink offerings
/help See all available commands
STATUS [Queue #] Check the live status of an order
CANCEL [Queue #] Cancel an order (only if Pending)
/myorders View your last 5 orders

πŸ›  Setup Requirements

1. Google Sheets Configuration

Your spreadsheet acts as your Admin Dashboard. Ensure Row 1 has these exact headers in order:

Column Header Name Description
A Queue Number Auto-generated by the bot (e.g., #4582)
B Chat ID Customer's Telegram ID β€” captured automatically
C Name Customer's first name
D Order Items ordered β€” parsed and cleaned by AI
E Status Dropdown: Pending, Preparing, Ready, Completed, Cancelled
F Order Time Timestamp of when the order was placed
G Order Date Date of the order
H Last Status Sent Internal: Tracks last notification sent to prevent duplicates

> ⚠️ Important: Set up a Data Validation dropdown on column E with the values: Pending, Preparing, Ready, Completed, Cancelled. This is how staff update order status.

> ⚠️ Important: In the Read All Rows node, go to Options β†’ Output Row Number and ensure it is enabled. The workflow uses row_number to write back to the correct cell.


2. n8n Credential Configuration

You need 3 credentials set up in n8n before activating:

Credential Type Where Used Notes
Anthropic API Claude Haiku node Required for AI order parsing
Google Sheets OAuth2 API All Google Sheets nodes Connect your Google account
Telegram Bot API All Telegram nodes Use your bot token from @BotFather

Steps:

  1. Go to n8n β†’ Settings β†’ Credentials β†’ Add Credential
  2. Add each credential type above
  3. After importing the workflow, open each node and select the correct credential

3. Workflow Import Steps

  1. Copy the workflow JSON
  2. In n8n, click + β†’ Import from JSON β†’ Paste and confirm
  3. Connect all credentials in each node
  4. Ensure Output Row Number is enabled in Read All Rows node options
  5. Pre-fill column H (Last Status Sent) with the current Status for all existing rows to prevent old rows from firing notifications on first run
  6. Turn the workflow Active

πŸ— How It Works

Phase 1: The Customer Bot (Workflow 1)

Customer texts bot
 ↓
Route Message β€” detects command type
 ↓
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ /start β†’ Welcome message β”‚
β”‚ /help β†’ Help guide β”‚
β”‚ /menu β†’ Today's menu β”‚
β”‚ /myorders β†’ Last 5 orders β”‚
β”‚ STATUS β†’ Live order status β”‚
β”‚ CANCEL β†’ Cancel if Pending only β”‚
β”‚ [order] β†’ AI parses β†’ saves β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
 ↓
Order saved to Google Sheet (Status = Pending)
Customer receives queue number + wait time

Phase 2: The Staff Notification System (Workflow 2)

Every 1 minute β€” Schedule Trigger fires
 ↓
Read ALL rows from Google Sheet
 ↓
For EACH row independently (runOnceForEachItem):
 - Skip if no Queue Number or Chat ID
 - Skip if Status = Pending
 - Skip if Status = Last Status Sent (already notified)
 - βœ… Send notification if Status changed
 ↓
Send Telegram message to that customer only
 ↓
Write new Status into column H (Last Status Sent)
β†’ Prevents duplicate notification next minute

Status Flow & Customer Messages

Staff sets Status to Customer receives
Preparing πŸ‘¨β€πŸ³ "Your order is being Prepared! We'll notify you when it's ready."
Ready πŸ• "Your order is READY for collection! Please collect from the counter."
Completed βœ… "Order marked as Completed. Thank you for dining with us!"
Cancelled ❌ "Your order has been Cancelled. We apologise for the inconvenience."

πŸ”’ Order Cancellation Rules

Customers can only cancel orders in Pending status. All other states are protected:

Current Status Customer tries CANCEL Response
Pending CANCEL 1234 βœ… Cancelled successfully
Preparing CANCEL 1234 ⚠️ Cannot cancel β€” being prepared
Ready CANCEL 1234 ⚠️ Already ready β€” please collect
Completed CANCEL 1234 ⚠️ Already completed
Cancelled CANCEL 1234 ⚠️ Already cancelled
Someone else's order CANCEL 1234 ❌ You can only cancel your own orders

πŸ“¦ Required Credentials Summary

Credential Provider Free Tier
Anthropic API anthropic.com Paid β€” ~$5 minimum deposit
Google Sheets OAuth2 API Google Cloud Console Free
Google Sheets Trigger OAuth2 API Google Cloud Console Free
Telegram Bot API @BotFather on Telegram Free forever

πŸ§ͺ Test Scenarios

Run these in order to verify the full system:

  1. /start β†’ Should receive welcome message
  2. /menu β†’ Should see the menu with prices
  3. Type 2 pizza + 1 coke β†’ Should get queue number
  4. STATUS [queue] β†’ Should show ⏳ Pending
  5. In sheet: change Status to Preparing β†’ Within 1 min, customer gets πŸ‘¨β€πŸ³ message
  6. In sheet: change Status to Ready β†’ Customer gets πŸ• message
  7. STATUS [queue] β†’ Should now show πŸ• Ready
  8. CANCEL [queue] β†’ Should say "already ready, please collect"
  9. In sheet: change Status to Completed β†’ Customer gets βœ… message
  10. /myorders β†’ Should show order history with final status

⚠️ Known Limitations

  • Notification delay: Up to 1 minute between staff updating the sheet and customer receiving the message (due to polling interval)
  • Column H required: The Last Status Sent column must exist in your sheet. Without it, every row will fire a notification on every poll
  • Anthropic API cost: Claude Haiku is not free β€” very low cost (~$0.25 per million tokens) but requires a funded account
  • Google Sheets trigger limitation: The Google Sheets Trigger cannot detect which specific row changed, which is why a Schedule Trigger with row comparison is used instead

πŸ—‚ File Structure

restaurant_WITH_STICKIES.json β€” Complete workflow (W1 + W2) with sticky notes
restaurant_workflow_docs.md β€” This documentation file

Built with n8n β€’ Claude Haiku AI β€’ Google Sheets β€’ Telegram Bot API

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Customer Bot Listener

Type / Role
n8n-nodes-base.telegramTrigger - telegramTrigger
Config choices
Version 1.1

Block 2 - Route Message

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 3 - Message Switch

Type / Role
n8n-nodes-base.switch - switch
Config choices
Version 3.2

Block 4 - Send Welcome

Type / Role
n8n-nodes-base.telegram - telegram
Config choices
Version 1.2

Block 5 - Send Help

Type / Role
n8n-nodes-base.telegram - telegram
Config choices
Version 1.2

Block 6 - AI Parse Order

Type / Role
@n8n/n8n-nodes-langchain.agent - agent
Config choices
Version 3.1

Block 7 - Claude Haiku

Type / Role
@n8n/n8n-nodes-langchain.lmChatAnthropic - lmChatAnthropic
Config choices
Version 1.3

Block 8 - Build Order Response

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 9 - Save Order

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.5

Block 10 - Send Confirmation

Type / Role
n8n-nodes-base.telegram - telegram
Config choices
Version 1.2

Block 11 - Find Order to Cancel

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.5

Block 12 - Validate Cancel

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 13 - Can Cancel?

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.1

Block 14 - Mark as Cancelled

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.5

Block 15 - Send Cancel Reply

Type / Role
n8n-nodes-base.telegram - telegram
Config choices
Version 1.2

Block 16 - Find Order Status

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.5

Block 17 - Build Status Reply

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 18 - Send Status

Type / Role
n8n-nodes-base.telegram - telegram
Config choices
Version 1.2

Block 19 - Send Menu

Type / Role
n8n-nodes-base.telegram - telegram
Config choices
Version 1.2

Block 20 - Read All Orders

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.5

Block 21 - Build My Orders

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 22 - Send My Orders

Type / Role
n8n-nodes-base.telegram - telegram
Config choices
Version 1.2

Block 23 - Send Blocked Message

Type / Role
n8n-nodes-base.telegram - telegram
Config choices
Version 1.2

Block 24 - Every 1 Minute

Type / Role
n8n-nodes-base.scheduleTrigger - scheduleTrigger
Config choices
Version 1.2

Showing the first 24 of 43 workflow blocks. Download the JSON for the full node graph.

3. Summary Table

Workflow Send AI-parsed restaurant orders and status updates via Telegram and Google Sheets
Complexity advanced
Nodes 43
Categories Support Chatbot, AI Chatbot
Author Nirav Gajera
Published 18 Mar 2026

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/14136/14136.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Send AI-parsed restaurant orders and status updates via Telegram and Google Sheets do?

AI Powered Restaurant Order & Notification System A Complete n8n Workflow for Automated Ordering and Customer Updates This professional n8n workflow provides an end to end solution for small res...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Support Chatbot, AI Chatbot use case.