Templates / Book HVAC service appointments via WhatsApp with GoHighLevel and Gemini

Book HVAC service appointments via WhatsApp with GoHighLevel and Gemini

Ready for 3.0

by iamvaar ✓ · 188 views · created 2026-05-17 · Support Chatbot, AI Chatbot

Ready for 3.0. This template uses no nodes that n8n 3.0 removes. No removed nodes, versions or helpers found. Static check, last run 2026-10-19.

Nodes used (8)

AI AgentGoogle Gemini Chat ModelRedis Chat MemoryHighLevelWhatsApp Business Cloud

What it does

Youtube Video For Workflow Explanation: https://youtu.be/3VTYQU7N6uU This workflow operates as an automated WhatsApp customer service and booking chatbot for an HVAC company (Blankarray HVAC Solutions). It connects WhatsApp, GoHighLevel (for CRM and calendar), and a Gemini AI model to handle customer inquiries, capture contact details, and schedule service appointments. 1. Core Flow (The Main Logic) WhatsApp Trigger Purpose: This is the starting point of the workflow. It actively listens for incoming WhatsApp messages and triggers the sequence whenever a new message is received. If Valid Sender Exists Purpose: A conditional check to ensure the incoming message has a valid sender phone number (messages0.from is not empty). This prevents the workflow from failing on empty or malformed requests. Fetch GHL Contacts Purpose: Connects to GoHighLevel to search for an existing contact record using the sender's WhatsApp phone number. It always outputs data, which tells the AI later if this is a known customer or a new lead. Customer Service AI Agent1 Purpose: The central "brain" of the operation. This node orchestrates the conversational logic based on a detailed system prompt. It adopts the persona of "Alex," an HVAC service coordinator. Functionality: It decides whether to ask for missing user information (Name and Email), when to look up calendar slots, when to book the appointment, and how to format the responses (using WhatsApp-friendly styling). Send WhatsApp Response Purpose: The final step in the main execution path. It takes the text output generated by the AI Agent and sends it back to the customer's WhatsApp number. --- 2. AI Sub-Nodes (The Agent's Toolkit & Brain) These nodes are connected directly to the Customer Service AI Agent1 to give it memory, intelligence, and the ability to take actions. The Brain & Memory Gemini Chat Model Purpose: The Large Language Model (LLM) powering the AI Agent. It processes the user's text, understands the context based on your prompt, and generates the natural language response. Redis Chat History Memory Purpose: Maintains the context of the conversation. It uses the user's phone number as a unique session key, allowing the AI to remember what was said earlier in the chat rather than treating every message as a brand new interaction. The Action Tools (GoHighLevel Integrations) The AI Agent intelligently decides when to trigger these tools based on the conversation flow. Save user issue in notes Purpose: When a customer describes their HVAC problem, the AI uses this tool to immediately log a summary of the issue directly into the customer's GoHighLevel contact profile notes. Create or update a contact in HighLevel Purpose: If the "Fetch GHL Contacts" node found no existing record, the AI asks the user for their name and email. Once provided, the AI uses this tool to create a brand new contact profile in GoHighLevel before proceeding to book an appointment. Fetch Available Calendar Slots Purpose: When the user wants to book a service, the AI uses this tool to query the GoHighLevel calendar for available 30-minute time slots on the requested date. Book Calendar Appointment Purpose: Once the customer agrees to a specific time, the AI uses this tool to officially book the appointment in the GoHighLevel calendar using the Contact ID and the agreed-upon timestamp.

View the original on n8n.io → Check your own copy

Get the weekly “what broke” email

New templates, newly broken ones, and n8n release changes. One short email a week.

Form not loading? Subscribe here.