n8n project

WhatsApp Support Bot

Problem: Support teams answer the same WhatsApp questions over and over, and harder questions need a person without losing the conversation.

What I built: A WhatsApp bot answers customer questions from a Notion knowledge base using Supabase vector search and Gemini. Questions it can't answer become HubSpot tickets with a Slack alert; when an agent closes the ticket, the answer is sent back on WhatsApp and can be saved to the knowledge base, which re-indexes itself automatically.

  1. WhatsApp question
  2. KB vector search
  3. Gemini drafts answer
  4. HubSpot ticket + Slack
  5. Agent answer sent
  6. KB re-indexed
n8n · WhatsApp · RAG · Gemini · Supabase · HubSpot · Notion · Slack

Workflow screenshots

WhatsApp Support Bot

n8n WhatsApp Support Bot workflow with Supabase vector search, Gemini answer drafting, and HubSpot ticket handoff
Incoming WhatsApp messages are filtered, matched to a contact, de-duplicated, and logged. Text questions are searched against the Supabase vector store with Gemini embeddings, and Gemini drafts an answer from the knowledge-base excerpts only. A router replies directly to small talk and confident answers; anything else opens a HubSpot ticket (or adds a note to the customer's open ticket), alerts the support team in Slack, and sends a handoff message.

WhatsApp Conversation

WhatsApp conversation showing AI replies, a handoff message, and agent answers sent back by the bot
The customer's view. Small talk is answered instantly by AI. Questions the knowledge base doesn't cover get a handoff message, and once the team answers the ticket, the reply arrives in the same chat a few minutes later.

HubSpot Support Tickets

HubSpot Support Pipeline with WhatsApp tickets and the Add to KB, Customer question, and KB answer properties
Each escalated question becomes a ticket in the HubSpot Support Pipeline with the customer's question attached. The agent writes the answer in the KB answer property, chooses whether to add it to the knowledge base, and closes the ticket.

Support Ticket Writeback

n8n Support Ticket Writeback workflow that sends agent answers to WhatsApp and creates Notion knowledge-base pages
Every 15 minutes, a HubSpot search finds closed WhatsApp tickets that haven't been processed. For each one with an agent answer, the workflow optionally creates a Notion knowledge-base page, sends the answer as a WhatsApp text (or a template when outside the 24-hour window), marks the ticket processed, and clears the customer's open ticket.

Support KB Ingest

n8n Support KB Ingest workflow embedding Notion pages into a Supabase pgvector store with Gemini
When a knowledge-base page changes in Notion (or on a manual full reindex), its old chunks are deleted from Supabase. Published pages are converted to Markdown, split into chunks, embedded with Gemini, and inserted into the pgvector store, while draft and archived pages stay out of the bot's answers.

Notion Support Knowledge Base

Notion Support Knowledge Base table with published answers linked to their source HubSpot tickets
The Notion knowledge base the bot answers from. Each page holds a question and answer with a status and category, and answers added from tickets link back to their source HubSpot ticket.

Support Error Alert

n8n Support Error Alert workflow connecting an Error Trigger to a Slack message
The shared error workflow for Support KB Ingest, WhatsApp Support Bot, and Support Ticket Writeback. An Error Trigger posts an alert to Slack whenever any of the three workflows fails, so problems are caught before customers notice.
All automation projects

Work with me

Need a workflow like this?

Tell me about the process you want to automate. I’m open to freelance projects, full-time roles, and technical partnerships.

borlagdatanfloryan@gmail.comSend a message