Skip to content
Sadia Khanam PrityAutomation Developerঅটোমেশন ডেভেলপার
AIAdvanced

AI Messenger Chatbot

A Facebook Messenger agent that answers product questions, takes orders and bookings, and hands off to a human when it should.

n8nMeta Graph APIGoogle GeminiGoogle SheetsGoogle CalendarOCR.space

Problem

A retail page was getting messages around the clock. Replies during business hours were fine; everything outside that window sat unread for hours, and simple questions ate as much staff time as real ones.

Before

Every message — 'is this in stock', 'what's the price', a real order — waited in the same queue for a human to open Messenger.

After

The agent answers catalogue questions and takes orders and bookings immediately. It only escalates when a message genuinely needs a person.

Interactive workflow

Click through the actual node graph

Loading workflow…

Demo video

See it running end to end

Why it's built this way

Facebook sends two very different things to the same address: a one-time check to confirm the page is set up correctly, and every real customer message after that. Facebook also expects a fast "got it" reply within a few seconds — if it doesn't get one, it assumes the message failed to arrive and sends it again, which can make a customer's message get answered more than once. So the workflow always replies "got it" immediately, and only then goes on to actually handle the message.

A photo from a customer takes a different path than a text message. It's first scanned for a printed product code, since that's the fastest way to identify an item; only if no code is found does it get passed to an AI that looks at the photo itself and works out which product it matches by colour, pattern and style. That's the same idea covered on its own in Visual Product Search — here, it's built directly into this same workflow.

What the assistant can actually do

The assistant is more than just a chat window with a script. It can look up real, current product details, save a completed order or booking to the same records staff already use, book an actual slot on the calendar, and flag a conversation for a staff member when it decides that's the right call. It also remembers what each customer has already told it earlier in the conversation, so it never asks for the same detail twice — and never mixes up two different customers.

Staying in character, and staying safe

If a customer asks whether they're talking to a real person, the assistant gives one short, honest answer and moves on — it never pretends to be human, and never explains how it works or what it's built with. More importantly, nothing a customer types can talk the assistant into acting outside its instructions: a message that tries to get it to offer a discount, change its behaviour, or pretend to be the shop owner gets flagged for a staff member instead of being obeyed. The assistant can never change a price or promise something that isn't in the official product list, no matter how the request is phrased.

When it hands off to a person — and when it doesn't

A staff member only gets pulled in for a short, specific list of situations: an upset or angry customer, a complaint about a refund or a damaged item, rude language, someone directly asking for a person, or an attempt to manipulate the assistant. Everyday questions the assistant could reasonably answer itself — an unfamiliar product question, a vague first message — are not escalated. Every handoff is logged before the customer is told a person will follow up, so nothing slips through even if the customer doesn't reply again. And handing off one issue doesn't shut the assistant out of the rest of the conversation — if the customer asks something new and answerable right after, it answers normally.

Impact

Replies in seconds instead of hours; simple orders and bookings no longer need a human at all.

Start a similar project