Skip to content

About

Autonomous WhatsApp AI food ordering & customer service agent built with n8n, LangChain, Google Gemini, and Google Sheets.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

๐Ÿฝ๏ธ HK Restaurant โ€” Autonomous WhatsApp AI Food Ordering Agent

n8n Google Gemini WhatsApp Cloud API Google Sheets LangChain License: MIT

An intelligent, production-ready WhatsApp AI Food Ordering & Customer Care assistant built with n8n, LangChain, Google Gemini, and Google Sheets.

This system transforms traditional manual restaurant telephone and messaging operations into a fully autonomous, 24/7 intelligent conversational ordering channel. Customers can browse dynamic menus, inquire about pricing, check stock availability, place real-time orders, and get instant answers to FAQs directly via WhatsApp.


๐Ÿ“Œ Table of Contents


๐Ÿ—๏ธ Overview & Architecture

Modern food delivery demands immediate response times, accurate stock confirmation, and seamless order dispatching. This workflow eliminates human delay by positioning a LangChain AI Agent backed by Google Gemini at the center of your WhatsApp customer communication.

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”       Webhook       โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ WhatsApp Client โ”‚ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€> โ”‚   WhatsApp Trigger   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜                     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
         โ–ฒ                                         โ”‚ Customer Message Payload
         โ”‚ WhatsApp Message                        โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”                     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Send Message   โ”‚ <โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”‚       AI Agent       โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜   Agent Response    โ”‚ (LangChain + Gemini) โ”‚
                                        โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                                                   โ”‚
                โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
                โ”‚                                  โ”‚                                  โ”‚
                โ–ผ                                  โ–ผ                                  โ–ผ
     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
     โ”‚  Tool: Get Inventory โ”‚           โ”‚      Tool: FAQ       โ”‚           โ”‚   Tool: Post Order   โ”‚
     โ”‚   (Google Sheets)    โ”‚           โ”‚   (Google Sheets)    โ”‚           โ”‚   (Google Sheets)    โ”‚
     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                โ”‚                                  โ”‚                                  โ”‚
                โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                                                   โ”‚
                                        โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
                                        โ”‚    Context Memory    โ”‚
                                        โ”‚ (Buffer Window = 10) โ”‚
                                        โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

High-Level Workflow Diagram

flowchart TD
    subgraph WhatsApp_Cloud ["WhatsApp / Meta Cloud"]
        User(["Customer on WhatsApp"])
    end

    subgraph n8n_Core ["n8n Automation Engine"]
        Trigger["WhatsApp Trigger (n8n-nodes-base.whatsAppTrigger)"]
        Agent["AI Agent (@n8n/n8n-nodes-langchain.agent)"]
        LLM["Google Gemini Model (@n8n/n8n-nodes-langchain.lmChatGoogleGemini)"]
        Memory["Simple Memory Buffer (Session: wa_id | Window: 10)"]
        ToolInventory["Tool: Get Inventory (Reads Inventory Sheet)"]
        ToolFAQ["Tool: FAQ (Reads FAQ Sheet)"]
        ToolOrder["Tool: Post order (Appends to orders Sheet)"]
        Sender["Send message (n8n-nodes-base.whatsApp)"]
    end

    subgraph Google_Workspace ["Google Sheets Database: Fast Delivery system"]
        SheetInv[("Sheet: Inventory (Items, Prices, Stock)")]
        SheetFAQ[("Sheet: FAQ (Hours, Delivery, Policies)")]
        SheetOrders[("Sheet: orders (Customer, Item, Qty, Status)")]
    end

    User -->|"1. Inbound WhatsApp Message"| Trigger
    Trigger -->|"2. Pass Message & Sender ID"| Agent

    Agent <-->|"3. LLM Reasoning"| LLM
    Agent <-->|"4. Read/Write Conversation State"| Memory

    Agent <-->|"5a. Query Stock & Prices"| ToolInventory
    ToolInventory <--> SheetInv

    Agent <-->|"5b. Query Policies & FAQs"| ToolFAQ
    ToolFAQ <--> SheetFAQ

    Agent -->|"5c. Commit Confirmed Order"| ToolOrder
    ToolOrder --> SheetOrders

    Agent -->|"6. Synthesize Output Message"| Sender
    Sender -->|"7. Send Response via Cloud API"| User
Loading

Workflow Canvas & Live Execution Screenshots

n8n Canvas Architecture Google Sheets Live Order Logging
n8n Canvas Workflow Live Order Logging
Visual representation of nodes, model, memory, tools, and trigger in n8n Verified order commitments captured in real time in Google Sheets
Orders Logging Verification Table Active Workflow Canvas Overview
Orders Logging Verification Active Workflow Canvas
Recorded order data including customer name, item, quantity, timestamp, and status Active production status and live execution telemetry in n8n cloud

โšก Key Features

  • 24/7 Zero-Latency Order Reception: Instant automated handling of customer messages on WhatsApp without human intervention.
  • Conversational Memory Window: Utilizes a 10-message sliding window keyed to the customer's unique WhatsApp ID (wa_id) to retain context across dialogue turns.
  • Live Inventory & Dynamic Bill Computation:
    • Live query against restaurant inventory before order confirmation.
    • Automatically calculates itemized totals and overall order balance (e.g., 1x Chicken Biryani = Rs 350 -> 2 plates = Rs 700).
    • Gracefully declines out-of-stock items and suggests active alternatives.
  • Instant Knowledge Base / FAQ Retrieval: Pulls answers directly from the FAQ sheet to answer opening hours, delivery radius, refund policies, and vegetarian offerings.
  • Automated Database Logging: Automatically structures and appends customer name, item name, quantity, timestamp, and status into the orders sheet.
  • Native WhatsApp UI/UX Guidelines: Configured with strict prompt formatting rules (friendly food delivery app tone, concise formatting, single asterisks for emphasis, no confusing headers or markdown artifacts).
  • Human Escalation Guardrails: Prevents destructive actions (such as automated order cancellation once confirmed), cleanly redirecting customers to the restaurant manager/owner.

๐Ÿงฉ System Components & Node Breakdown

Node Name Node Type Version Role & Configuration
WhatsApp Trigger n8n-nodes-base.whatsAppTrigger 1.0 Listens for incoming WhatsApp webhook events (messages). Captures customer payload, message text ($json.messages[0].text.body), and contact metadata ($json.contacts[0].wa_id).
AI Agent @n8n/n8n-nodes-langchain.agent 2.2 Core orchestration agent running LangChain. Evaluates customer intent, maintains persona guidelines, calls appropriate tools, and generates user replies.
Google Gemini Chat Model @n8n/n8n-nodes-langchain.lmChatGoogleGemini 1.0 Generative language model (Google Gemini PaLM API) providing context comprehension, reasoning, and tool selection.
Simple Memory @n8n/n8n-nodes-langchain.memoryBufferWindow 1.3 Sliding context window memory (length = 10) using customKey = {{ $json.contacts[0].wa_id }} to maintain distinct conversation threads per customer.
Get Inventory n8n-nodes-base.googleSheetsTool 4.7 Reads the Inventory tab (gid: 898910044) in the Google Spreadsheet to inspect real-time pricing and stock counts.
FAQ n8n-nodes-base.googleSheetsTool 4.7 Reads the FAQ tab (gid: 678432777) to deliver policy, delivery radius, payment methods, and hours information.
Post order n8n-nodes-base.googleSheetsTool 4.7 Appends a row to the orders tab (gid: 257576541). Maps fields dynamically using $fromAI() for CUSTOMER_NAME, FOOD_ITEM, QUANTITY_ORDER, STATUS, and $now for timestamping.
Send message n8n-nodes-base.whatsApp 1.0 Sends outbound WhatsApp text message via Meta Cloud API using the synthesized response {{ $json.output }}.

๐Ÿ“Š Database & Spreadsheet Schema

The application uses Google Sheets (Fast Delivery system) as its operational datastore, mirrored locally in fast_food_menu.xlsx.

1. Inventory Sheet (Inventory / gid: 898910044)

Tracks menu items, live prices in PKR, availability flag, and stock quantity.

Column Header Data Type Example Value Description
Fast Food Item String Burger, Pizza (Slice), Shawarma Name of the food item
Price_PKR Integer / Decimal 350, 1200, 600 Price per single unit in PKR
STATUS String Available / out of stock Stock availability indicator
QUANTITY Integer 10, 20, 0 Number of servings currently available

Active Menu Items Reference

Item Price (PKR) Status Stock Quantity
๐Ÿ” Burger Rs 350 Available 10
๐ŸŸ French Fries Rs 1400 Available 12
๐Ÿ• Pizza (Slice) Rs 1200 Available 20
๐Ÿฅช Sandwich Rs 300 Available 20
๐ŸŒฏ Shawarma Rs 600 Available 20
๐Ÿ— Fried Chicken (Piece) Rs 300 Available 30
๐Ÿชฃ Chicken Meal (Bucket) Rs 1500 Available 15
๐Ÿ— chicken_wings Rs 450 Available 13
๐Ÿ pasta Rs 300 Available 14
๐Ÿฅš Boil_egg Rs 50 Available 100
๐Ÿต soap_cup Rs 100 Available 70
๐Ÿ“ฆ Extra_things โ€” out of stock 0

2. Orders Sheet (orders / gid: 257576541)

Captures incoming orders logged by the Post order tool.

Column Header Tool Parameter Mapping Sample Data
CUSTOMER NAME {{ $fromAI('CUSTOMER_NAME', '', 'string') }} Asim imam
FOOD ITEM {{ $fromAI('FOOD_ITEM', '', 'string') }} Pizza (Slice)
QUANTITY ORDER {{ $fromAI('QUANTITY_ORDER', '', 'string') }} 2
ORDER DATE {"datetime":"{{ $now.format('YYYY-MM-DD HH:mm:ss') }}"} 2025-10-02 23:37:15
STATUS {{ $fromAI('STATUS', '', 'string') }} Confirmed

3. FAQ Sheet (FAQ / gid: 678432777)

Provides static restaurant domain knowledge for the AI Agent.

Question Answer
What are your opening hours? We are open daily from 11:00 AM to 10:00 PM.
Do you offer home delivery? Yes, we provide home delivery within 5 km.
What is your refund policy? Refunds are only available for canceled orders before preparation starts.
Do you have vegetarian options? Yes, we serve a variety of vegetarian thalis and meals.
How can I place an order? You can order via phone, WhatsApp, or our website.
Do you accept online payments? Yes, we accept UPI, cards, and cash on delivery.

๐Ÿง  AI Agent Persona & Prompt Engineering

The system prompt embeds precise operational logic into the Gemini model:

You are a smart food ordering assistant for "HK Restaurant".

Rules:

1. When a user sends their first message (like hi, hello), reply with:
   "Welcome to HK Restaurant ๐Ÿด
   How can I help you today?

* ๐Ÿ›’ Place an order
* โ“ FAQ / Information
* ๐Ÿ“ฆ Check order / stock"

๐Ÿ‘‰ Keep the tone friendly like a food delivery app, not like a product e-commerce site

2. If user wants *order*:
* Ask step by step: name, food item, quantity
* Show the *unit price* and calculate *total price* before confirmation
  Example: "1x Chicken Biryani = Rs 350 โ†’ 2 plates = Rs 700"
* Check Inventory sheet before confirming
  * If available โ†’ "Your order for *Chicken Biryani* (x2 = Rs 700) is confirmed โœ…"
  * If not available โ†’ "Sorry, *Chicken Biryani* is out of stock โŒ. Available options: [list items with prices]"
* Only confirmed orders go into the Orders sheet
* In Orders sheet always include:
  * Status = Confirmed / Rejected
  * Description = "Order accepted (item available)" OR "Order rejected (out of stock)"
  * Item, Quantity, Unit Price, Total Price

3. If user asks about *price of an item*:
* Look up in Inventory sheet
* Reply short with price and availability
  Example: "๐Ÿ› Chicken Karahi = Rs 1200 (Available 5 plates)"

4. If user wants *FAQ*:
* Answer short and clear (delivery time, payment method, restaurant hours)

5. If user wants *check order* or *check stock*:
* Ask for food name or order id
* Look up in Google Sheets (Orders / Inventory)
  * If checking order โ†’ reply with status + total price (if confirmed)
  * If checking stock โ†’ reply with available quantity + price of that food
  * If requested, also list all *available* food items with prices and quantity

6. If user wants *cancel order*:
* Reply politely:
  "Sorry ๐Ÿ™ I cannot cancel orders directly.
  Please call the restaurant owner first and inform them.
  Owner Contact: +92 3005880486"

7. Always reply in short text like a normal WhatsApp chat
* Do not use **bold** or long paragraphs
* Use *stars* only for highlighting words
* Keep tone friendly, polite, and food-delivery app style

๐Ÿ’ฌ End-to-End Conversation Scenarios

Scenario 1: Successful Order Placement

Customer: Hello!
AI Agent: Welcome to HK Restaurant ๐Ÿด
          How can I help you today?

          * ๐Ÿ›’ Place an order
          * โ“ FAQ / Information
          * ๐Ÿ“ฆ Check order / stock

Customer: I want to order 2 Pizza slices.
AI Agent: Sure! May I have your name, please?

Customer: Asim Imam
AI Agent: 1x Pizza (Slice) = Rs 1200 โ†’ 2 slices = Rs 2400.
          Your order for *Pizza (Slice)* (x2 = Rs 2400) is confirmed โœ…
          We're preparing your food now!

(Order logged immediately in the orders Google Sheet)


Scenario 2: Out-of-Stock Item Handling

Customer: Can I get Extra_things with my order?
AI Agent: [Queries 'Get Inventory' tool]
          Sorry, *Extra_things* is out of stock โŒ.
          Available options:
          * Burger (Rs 350)
          * French Fries (Rs 1400)
          * Shawarma (Rs 600)
          * Fried Chicken (Rs 300)

Scenario 3: FAQ & Operational Queries

Customer: How far do you deliver and what are your hours?
AI Agent: [Queries 'FAQ' tool]
          We deliver within a 5 km radius! ๐Ÿ›ต
          Our opening hours are daily from 11:00 AM to 10:00 PM.

Scenario 4: Order Cancellation Guardrail

Customer: Please cancel my order.
AI Agent: Sorry ๐Ÿ™ I cannot cancel orders directly.
          Please call the restaurant owner first and inform them.
          Owner Contact: +92 3005880486

๐Ÿš€ Installation & Setup Guide

Prerequisites

  • An active n8n instance (n8n Cloud or self-hosted via Docker / npm).
  • A Meta for Developers account with a configured WhatsApp Cloud API app.
  • A Google Cloud Console account with Google Sheets API enabled and OAuth2 credentials configured.
  • A Google Gemini API Key (PaLM / Gemini API via Google AI Studio).

Step 1: Import Workflow into n8n

  1. Download or clone this repository:
    git clone git@github.com:Asim-imam-ai/N8N-PROJECT-HK-RESTURANT.git
  2. Open your n8n workspace dashboard.
  3. Click on Workflows โ†’ Import from File...
  4. Select HK_Resturant (1).json.
  5. The workflow canvas with all 8 interconnected nodes will load automatically.

Step 2: Google Sheets Setup

  1. Open Google Drive and upload fast_food_menu.xlsx, or create a new Google Spreadsheet titled Fast Delivery system.
  2. Ensure the spreadsheet contains three sheets with exact names:
    • Inventory
    • orders
    • FAQ
  3. Copy the spreadsheet URL and extract the Document ID from the link:
    https://docs.google.com/spreadsheets/d/<DOCUMENT_ID>/edit
    
  4. In n8n, update the Document ID in each Google Sheets tool:
    • Get Inventory: Select your spreadsheet and choose sheet Inventory.
    • FAQ: Select your spreadsheet and choose sheet FAQ.
    • Post order: Select your spreadsheet, choose sheet orders, and ensure column mappings match.

Step 3: Meta WhatsApp Cloud API Setup

  1. Go to the Meta Developer Portal.
  2. Create or select your WhatsApp Business App.
  3. In WhatsApp โ†’ Configuration:
    • Set Callback URL to the production webhook URL provided by the n8n WhatsApp Trigger node:
      https://<your-n8n-instance>/webhook/6e1a6177-460b-4fbd-bb69-46c836cf6543/webhook
      
    • Enter your chosen Verify Token.
    • Under Webhook fields, subscribe to messages.
  4. Note your Phone Number ID (e.g., 838440309346424) and temporary or permanent System User Access Token.

Step 4: Configure n8n Credentials

Configure the following credentials in n8n:

  1. WhatsApp Trigger API (whatsAppTriggerApi):
    • Type: WhatsApp OAuth2 or Webhook configuration.
  2. WhatsApp API (whatsAppApi):
    • Access Token from Meta Developer Portal.
  3. Google Gemini (PaLM) API (googlePalmApi):
  4. Google Sheets OAuth2 API (googleSheetsOAuth2Api):
    • Connect using your Google account with access to the Fast Delivery system sheet.

Step 5: Activate & Test

  1. Turn on the Active toggle switch in the upper right corner of the n8n canvas.
  2. Send a WhatsApp message (e.g., "Hi") to your test WhatsApp Business number.
  3. Observe the execution in n8n under the Executions tab.
  4. Verify that the agent replies on WhatsApp and creates records in your Google Sheet upon order confirmation.

๐Ÿ› ๏ธ Production Optimization & Best Practices

1. Dynamic WhatsApp Recipient Configuration

In test/development workflows, the Send message node may be set to a static recipient phone number. For multi-user production environments, update the Recipient Phone Number field in the Send message node to dynamic resolution:

={{ $('WhatsApp Trigger').item.json.contacts[0].wa_id }}

or

={{ $json.contacts[0].wa_id }}

2. ISO Date Formatting for Google Sheets

The Post order node default expression formats the timestamp as:

{"datetime":"{{ $now.format('YYYY-MM-DD HH:mm:ss') }}"}

For a clean date string in spreadsheet cells, simplify the expression to:

={{ $now.format('YYYY-MM-DD HH:mm:ss') }}

3. Inventory Stock Decrement Logic

To prevent overselling high-demand items, add an automated step after Post order to decrement QUANTITY in the Inventory sheet: $$\text{New Quantity} = \text{Current Quantity} - \text{Order Quantity}$$ When quantity reaches 0, set STATUS to "out of stock".

4. Meta Webhook Security

  • Always verify the HMAC-SHA256 signature in production headers using your Meta App Secret.
  • Implement rate limiting on the webhook endpoint to protect against spam attacks.

๐Ÿ“ File Structure

N8N-PROJECT-HK-RESTURANT/
โ”œโ”€โ”€ HK_Resturant (1).json    # Complete exportable n8n workflow definition
โ”œโ”€โ”€ fast_food_menu.xlsx      # Local Excel datastore (Inventory, orders, FAQ)
โ”œโ”€โ”€ Screenshot (296).png     # Canvas architecture screenshot in n8n Cloud
โ”œโ”€โ”€ Screenshot (297).png     # Live orders capture in Google Sheets
โ”œโ”€โ”€ Screenshot (298).png     # Orders verification log in Google Sheets
โ”œโ”€โ”€ Screenshot (299).png     # Workflow editor & execution state screenshot
โ””โ”€โ”€ README.md                # Project documentation and setup guide

๐Ÿ”ฎ Roadmap & Enhancements

  • Multi-Language Support: Natural dialogue support in Urdu, Roman Urdu, and Arabic.
  • Automated Payment Gateway: Integration with Stripe, JazzCash, or EasyPaisa checkout links.
  • POS / Kitchen Display Sync: Webhook dispatches to kitchen thermal printers or POS software.
  • Rider & Delivery Tracking: Live rider location sharing via WhatsApp Location API.
  • Customer Feedback Loop: Automated follow-up message 45 minutes post-delivery requesting food ratings.

๐Ÿ“„ License & Authors

Distributed under the MIT License. See LICENSE for details.

Author


Developed with โค๏ธ using n8n, LangChain, Google Gemini, and Meta WhatsApp Cloud API.

About

Autonomous WhatsApp AI food ordering & customer service agent built with n8n, LangChain, Google Gemini, and Google Sheets.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors