Automate WhatsApp Business Bot with n8n Workflow

This n8n workflow automates WhatsApp business communication by managing appointment notifications and replies via Google Sheets integration. It ensures timely responses, reduces manual errors, and saves significant admin time.
WhatsApp Trigger
WhatsApp
Google Sheets
+6
Learn how to Build this Workflow with AI:
Workflow Identifier: 2235
NODES in Use: WhatsApp Trigger, If, Google Sheets Trigger, Filter, WhatsApp, Google Sheets, Schedule Trigger, SplitInBatches, Wait

Press CTRL+F5 if the workflow didn't load.

Visit through Desktop for Best experience

Opening Problem Statement

Meet Sarah, a small business owner who schedules dozens of client appointments every week through Google Forms. She offers appointment reminders and confirmations via WhatsApp to improve customer engagement. However, Sarah spends hours manually sending WhatsApp messages for each new booking and replying to incoming client queries. This process is time-consuming, prone to errors like missed messages or wrong appointment details, and often leads to frustrated customers and lost revenue.

Sarah’s struggle highlights a common pain: manually managing appointment notifications and customer replies on WhatsApp without automation wastes precious hours and increases the risk of miscommunication.

What This Automation Does

This specific n8n workflow streamlines Sarah’s WhatsApp communication by connecting Google Forms responses, Google Sheets, and WhatsApp Business API into a fully automated message bot.

  • Automatically sends WhatsApp appointment notification templates when a user opts-in via the form.
  • Captures incoming WhatsApp user messages and logs them in Google Sheets for easy tracking.
  • Enables staff to prepare personalized WhatsApp replies by updating the Google Sheet with a “Ready” status.
  • Scheduled process sends out replies via WhatsApp within the 24-hour window allowed for WhatsApp business bots.
  • Updates message statuses in Google Sheets automatically after replies are sent, maintaining real-time tracking.
  • Filters out non-message WhatsApp events like delivery or read receipts to avoid clutter.

With this workflow, Sarah saves hours each day on manual message sending, reduces errors in appointment communication, and improves client satisfaction.

Prerequisites ⚙️

  • WhatsApp Business Account & API access for sending and receiving messages.
  • Google Sheets account with the target spreadsheet configured to track messages.
  • Google Sheets OAuth2 credentials configured in n8n for reading and writing sheet data.
  • n8n account (cloud or self-hosted) for building and running the automation.
  • Optional: Self-hosting ideas (e.g., via Hostinger) for more control.

Step-by-Step Guide to Build This WhatsApp Business Bot

Step 1: Set up WhatsApp Business Template Notification

Navigate to your WhatsApp Business portal and create a new message template, for example, “test_appointment_button” with placeholders for appointment details like date and user name.

In n8n, create a WhatsApp node named “Sent notification template”.

  • Set the template parameter to your template name, e.g., “test_appointment_button|en_US”.
  • Configure the components section to include header and body placeholders using values like {{ $json["Your name"] }} and formatted dates using Luxon for date formatting.
  • Set your WhatsApp Business Account Phone Number ID and recipient phone number dynamically from incoming data.

This node sends standardized notifications when triggered.

Step 2: Establish the Google Sheets Trigger for New Form Entries

Add a Google Sheets Trigger node named “Get new entries” listening to row additions in your Google Form response sheet.

  • Configure it to poll every 5 minutes for new rows.
  • Connect it to a Filter node “User consented for WA messages?” that checks if users agreed to WhatsApp notifications.

This ensures messages are only sent to consenting users.

Step 3: Send WhatsApp Template Notification on User Consent

If the user consent is “Yes,” connect to the WhatsApp node “Sent notification template” to send the initial appointment message.

Step 4: Set up WhatsApp Trigger to Capture Incoming Messages

Add a WhatsApp Trigger node configured with your WhatsApp API credentials to listen for incoming messages.

The workflow then uses an If node “Is message?” to validate the payload contains actual user messages, filtering out status notifications.

Step 5: Append Incoming User Messages to Google Sheets

Using a Google Sheets Append node “New message from the user,” capture details like user phone, name, and message text, storing them with status “New” for staff review.

Step 6: Schedule a Timer to Check for Ready Replies

Add a Schedule Trigger node “Schedule Trigger” on a recurring interval (e.g., every minute).

Connect it to a Google Sheets node “Get new answers” that fetches rows with status “Ready” for sending replies.

Step 7: Loop Through Ready Replies and Reply Via WhatsApp

Use a Split In Batches node “Loop Over Items” to process each reply row one by one.

For each, send a WhatsApp message using the “Reply to the user” WhatsApp node.

After sending, update the Google Sheet row status to “Replied” with the Google Sheets Update node “Update message status.” Then wait 1 second to avoid rate limits.

Customizations ✏️

  • Change WhatsApp Template: Modify the “Sent notification template” node parameters to use your own WhatsApp Business message template for branding.
  • Expand Consent Criteria: Adjust the filter node “User consented for WA messages?” to include more user consent options like SMS or email notifications.
  • Personalize Reply Timing: Adjust the “Schedule Trigger” node interval to control how frequently replies are checked and sent.
  • Add Language Localization: Use Google Sheets columns with language preferences and modify the WhatsApp nodes to send language-appropriate templates or messages.

Troubleshooting 🔧

Problem: WhatsApp messages not sending or returning errors

Cause: Incorrect Phone Number ID, missing access token, or WhatsApp template not approved.

Solution: Verify credentials in the WhatsApp API credentials node, check your WhatsApp template is active in the Meta Business Manager, and confirm Phone Number ID in the node is correct.

Problem: Incoming WhatsApp messages not logged in Google Sheets

Cause: WhatsApp Trigger webhook URL not properly set in Meta Developer portal.

Solution: Re-copy the webhook URL from the WhatsApp Trigger node and paste it into the WhatsApp app settings in the Meta Developers console. Confirm webhook events are enabled.

Pre-Production Checklist ✅

  • Test your WhatsApp webhook by sending a message to your number and verifying data appears in Google Sheets.
  • Confirm Google Sheets Trigger fetches new form entries and only sends messages when consent is given.
  • Send test replies by setting up “ReplyText” and status “Ready” in Google Sheets and confirm messages are sent.
  • Verify column mappings exactly match your sheet’s schema in all Google Sheets nodes.
  • Deployment Guide

    Activate your workflow in n8n and keep it running on a reliable server or n8n cloud.

    Monitor executions on the n8n dashboard to catch any failures or throttling.

    Ensure your Google Sheets and WhatsApp API credentials remain valid for seamless operation.

    FAQs

    Q: Can I use another messaging platform instead of WhatsApp?
    Currently, this workflow is tailored for WhatsApp Business API integration, but with node adjustments you could adapt for other channels like Telegram or SMS.

    Q: Does sending messages consume API credits or cost money?
    WhatsApp Business API typically involves charges per message depending on your provider and region. Monitor your Meta Business billing.

    Q: Is user data stored securely?
    Only Google Sheets stores message data here; ensure your sheet access is secured with Google account protections and n8n credentials are private.

    Conclusion

    By following this guide, you’ve built an n8n WhatsApp business bot that fully automates appointment notifications and user message replies via Google Sheets integration.

    This automation saves you hours daily, reduces human errors in communication, and improves your customer experience by delivering timely, accurate messages.

    Next steps could include integrating AI for smart reply suggestions, adding SMS follow-ups for users without WhatsApp, or enabling multi-language support for global audiences.

    Keep iterating and expanding your n8n workflows to build truly smart business communication systems!

Related Workflows

Automate Viral UGC Video Creation Using n8n + Degaus (Beginner-Friendly Guide)

Learn how to automate viral UGC video creation using n8n, AI prompts, and Degaus. This beginner-friendly guide shows how to import, configure, and run the workflow without technical complexity.
Form Trigger
Google Sheets
Gmail
+37
Free

AI SEO Blog Writer Automation in n8n (Beginner Guide)

A complete beginner guide to building an AI-powered SEO blog writer automation using n8n.
AI Agent
Google Sheets
httpRequest
+5
Free

Automate CrowdStrike Alerts with VirusTotal, Jira & Slack

This workflow automates processing of CrowdStrike detections by enriching threat data via VirusTotal, creating Jira tickets for incident tracking, and notifying teams on Slack for quick response. Save hours daily by transforming complex threat data into actionable alerts effortlessly.
scheduleTrigger
httpRequest
jira
+5
Free

Automate Telegram Invoices to Notion with AI Summaries & Reports

Save hours on financial tracking by automating invoice extraction from Telegram photos to Notion using Google Gemini AI. This workflow extracts data, records transactions, and generates detailed spending reports with charts sent on schedule via Telegram.
lmChatGoogleGemini
telegramTrigger
notion
+9
Free

Automate Email Replies with n8n and AI-Powered Summarization

Save hours managing your inbox with this n8n workflow that uses IMAP email triggers, AI summarization, and vector search to draft concise replies requiring minimal review. Automate business email processing efficiently with AI guidance and Gmail integration.
emailReadImap
vectorStoreQdrant
emailSend
+12
Free

Automate Email Campaigns Using n8n with Gmail & Google Sheets

This n8n workflow automates personalized email outreach campaigns by integrating Gmail and Google Sheets, saving hours of manual follow-up work and reducing errors in email sequences. It ensures timely follow-ups based on previous email interactions, optimizing communication efficiency.
googleSheets
gmail
code
+5
Free