Zalo OAn8nAI Chatbot15 phút đọc

Cách Tạo Chatbot Zalo OA Bằng n8n — Hướng Dẫn Từ Zero 2026

Zalo có 79.6 triệu người dùng và 2.1 tỷ tin nhắn mỗi ngày. Nhưng 85% doanh nghiệp vẫn đang trả lời thủ công — chậm, sai, bỏ sót. Bài này hướng dẫn bạn xây 3 loại chatbot Zalo OA bằng n8n: từ FAQ đơn giản đến AI chatbot với RAG, không cần biết lập trình.

Vấn Đề: Khách Nhắn Zalo Mà Không Ai Trả Lời

Khách hỏi giá lúc 10 giờ tối. Nhân viên đã về nhà. Sáng hôm sau mở Zalo thấy 12 tin nhắn chưa đọc — 3 người đã mua của đối thủ, 5 người không hỏi lại nữa.

⚠️Con số đáng lo ngại
Theo nghiên cứu về hành vi người dùng Zalo: khách hàng kỳ vọng phản hồi trong vòng dưới 5 phút. Nếu chờ quá 1 giờ, 68% sẽ chuyển sang tìm nhà cung cấp khác. Với 2.1 tỷ tin nhắn mỗi ngày trên Zalo, cơ hội và rủi ro đều đến rất nhanh.

Giải pháp không phải là thuê thêm người — mà là dạy chatbot trả lời thay bạn. n8n với Conversational Agent node và 993 AI chatbot template cho phép bạn xây chatbot Zalo OA trong vài giờ, chạy 24/7, không tốn lương nhân viên.

Tại Sao Chọn Zalo OA Để Triển Khai Chatbot?

Trước khi vào kỹ thuật, hãy nhìn vào con số để hiểu tại sao Zalo OA là kênh chatbot tốt nhất cho doanh nghiệp Việt Nam hiện tại:

79.6M
người dùng Zalo
Monthly Active Users tại Việt Nam
85%
người Việt dùng Zalo
tỷ lệ thâm nhập cao nhất mọi nền tảng
2.1B
tin nhắn mỗi ngày
lưu lượng trao đổi thực tế
25,000+
OA trả phí
doanh nghiệp đã dùng Zalo OA nghiêm túc

Zalo OA (Official Account) là tài khoản doanh nghiệp chính thức trên Zalo. Khác với tài khoản cá nhân, OA cho phép: nhắn tin không giới hạn với follower, gửi broadcast, tích hợp webhook, đặt menu chat, và quan trọng nhất — kết nối với n8n để tự động hóa hoàn toàn.

ℹ️n8n và Zalo OA
n8n hiện có 993 AI chatbot template trên thư viện chính thức, bao gồm Conversational Agent node — node chuyên dụng để xây AI chatbot có bộ nhớ ngữ cảnh (memory), kết nối knowledge base, và tích hợp với bất kỳ API nào. Zalo OA cung cấp webhook để n8n nhận tin nhắn real-time.

Rule-Based vs AI Chatbot — Chọn Loại Nào?

Có hai hướng xây chatbot Zalo OA, mỗi loại phù hợp với trường hợp khác nhau:

Tiêu chíRule-Based ChatbotAI Chatbot (LLM + RAG)
Cách hoạt độngKhớp từ khóa → trả lời định sẵnHiểu ngôn ngữ tự nhiên, tìm kiếm knowledge base
Phù hợpFAQ cố định, câu hỏi đoán trước đượcCâu hỏi đa dạng, cần tư duy, thông tin phức tạp
Độ chính xác100% nếu câu hỏi đúng template95%+ nếu knowledge base tốt
Chi phíGần như 0 (chỉ server n8n)Phí API LLM (~500k–2tr/tháng)
Thời gian setup2–4 giờ1–3 ngày
Xử lý câu hỏi ngoài scriptKhông — chuyển sang nhân viênCó — AI tự xử lý hoặc leo thang thông minh
Ví dụ dùng tốtGiờ mở cửa, địa chỉ, bảng giá cố địnhTư vấn sản phẩm, hỗ trợ kỹ thuật, đặt lịch phức tạp

Chiến lược tối ưu: bắt đầu với rule-based (Workflow 1 + 2 bên dưới) để giải quyết 70–80% câu hỏi phổ biến với chi phí gần bằng 0, sau đó thêm AI layer (Workflow 3) để xử lý phần còn lại.

Bước Đầu: Kết Nối Zalo OA Với n8n Qua Webhook

Trước khi xây bất kỳ workflow nào, bạn cần kết nối Zalo OA với n8n. Toàn bộ chatbot đều hoạt động qua cơ chế này: Zalo gửi sự kiện đến webhook của n8n, n8n xử lý và gọi lại Zalo API để gửi phản hồi.

1
Tạo Webhook node trong n8n

Kéo Webhook node vào canvas. Chọn HTTP Method: POST. Copy "Webhook URL" — dạng https://your-n8n.com/webhook/zalo-chatbot

2
Đăng ký webhook trên Zalo OA

Vào oa.zalo.me → Cài đặt → API & Webhook → dán URL vào ô Callback URL. Chọn events: message (nhận tin nhắn người dùng).

3
Xác minh webhook (OA yêu cầu)

Zalo gửi GET request với ?verifytoken=xxx để xác minh. Thêm node Respond to Webhook trong n8n để trả về đúng token.

4
Lấy Access Token để gửi tin

Vào oa.zalo.me → Công cụ → lấy OA Access Token. Lưu vào n8n Credentials (HTTP Header Auth) để dùng trong các workflow.

Đây là cấu trúc JSON Zalo gửi về n8n mỗi khi có tin nhắn mới từ người dùng:

Zalo OA Webhook Payload — tin nhắn người dùng
{
"app_id": "your_app_id",
"user_id_by_app": "uid_123456789",
"timestamp": 1710000000000,
"event_name": "user_send_text",
"message": {
"msg_id": "msg_abc123",
"text": "Cho hỏi giá sản phẩm X là bao nhiêu?"
},
"sender": {
"id": "uid_123456789"
},
"recipient": {
"id": "oa_id_987654321"
}
}

Và đây là cách n8n gọi Zalo API để gửi phản hồi về cho người dùng:

Gửi tin nhắn phản hồi qua Zalo OA API
$curl -X POST "https://openapi.zalo.me/v3.0/oa/message/cs" \
$ -H "access_token: YOUR_OA_ACCESS_TOKEN" \
$ -H "Content-Type: application/json" \
$ -d '{
$ "recipient": {
$ "user_id": "uid_123456789"
$ },
$ "message": {
$ "text": "Sản phẩm X hiện giá 299.000đ. Bạn muốn đặt hàng không?"
$ }
$ }'

Trong n8n, bạn dùng HTTP Request node để thực hiện lệnh trên — điền URL, chọn method POST, thêm header access_token, và dùng expression để lấy user_id từ webhook payload.

💡Tip bảo mật
Không hardcode Access Token trong workflow. Lưu vào n8n Credentials với tên "Zalo OA Token" và dùng expression {{$credentials.ZaloOAToken.token}}. Token Zalo OA có thời hạn — setup auto-refresh hoặc dùng cron job để gia hạn hàng tuần.

Workflow 1: Chatbot FAQ Tự Động (Rule-Based)

Workflow đơn giản nhất — xử lý các câu hỏi thường gặp bằng cách khớp từ khóa. Xây trong 2 giờ, giải quyết ngay 60–70% tin nhắn mà không cần AI.

1
Webhook nhận tin nhắn từ Zalo OA

n8n nhận POST request với nội dung tin nhắn và user_id của người gửi.

2
Switch node phân loại ý định

Kiểm tra text chứa từ khóa: "giá", "bảng giá" → intent: pricing | "giờ", "mấy giờ" → intent: hours | "địa chỉ", "ở đâu" → intent: location | else → intent: fallback

3
Lấy nội dung phản hồi

Mỗi intent map với câu trả lời định sẵn trong Set node. Thêm Google Sheet lookup nếu nội dung thường xuyên thay đổi (bảng giá).

4
HTTP Request gửi tin nhắn về Zalo

Gọi Zalo OA API với user_id và nội dung phản hồi. Thêm typing indicator (delay 0.5s) để tự nhiên hơn.

5
Fallback: chuyển sang nhân viên

Nếu không khớp intent nào → gửi "Câu hỏi của bạn đang được chuyển đến nhân viên. Vui lòng chờ 2-3 phút." + thông báo team qua Telegram.

💬
Khách nhắn Zalo
Webhook nhận real-time
🔀
Switch Intent
Khớp từ khóa
📋
Lấy câu trả lời
Set node / Google Sheet
📤
Zalo API reply
Phản hồi < 2 giây
🧑‍💼
Fallback → nhân viên
Alert Telegram
Kết quả kỳ vọng
Với 20–30 câu trả lời FAQ được định nghĩa rõ, workflow này xử lý khoảng 65% tin nhắn hoàn toàn tự động. Thời gian phản hồi trung bình: dưới 2 giây, bất kể ngày hay đêm.

Workflow 2: Tra Cứu Trạng Thái Đơn Hàng

Câu hỏi phổ biến nhất trong eCommerce và F&B: "Đơn hàng của tôi đến đâu rồi?" — workflow này trả lời tức thì, không cần nhân viên tra cứu thủ công.

1
Nhận tin nhắn chứa mã đơn hàng

Webhook detect tin nhắn khớp pattern mã đơn: "DH", "ORDER", số thuần túy 6-10 ký tự. Hoặc khách nhắn "tra cứu đơn" → chatbot hỏi lại mã.

2
Extract mã đơn bằng Regex

Code node dùng regex để trích xuất mã đơn từ tin nhắn. Validate định dạng trước khi tra cứu.

3
Lookup từ Google Sheet / database

Google Sheets node hoặc HTTP Request đến API nội bộ — tìm row có order_id khớp. Lấy: trạng thái, ngày dự kiến, ghi chú.

4
Format và gửi kết quả qua Zalo

Gửi tin nhắn dạng: "Đơn #DH12345: Đang vận chuyển — dự kiến giao 15:00 hôm nay. Shipper: Nguyễn Văn A — 0912345678"

5
Không tìm thấy → hướng dẫn liên hệ

Nếu không có đơn → "Không tìm thấy đơn #DH99999. Vui lòng kiểm tra lại mã hoặc nhắn [HOTLINE] để được hỗ trợ."

🔢
Khách gửi mã đơn
Detect + extract regex
🔍
Lookup database
Google Sheet / API
📦
Lấy trạng thái
Status, ETA, shipper
💬
Zalo reply chi tiết
Trong 1-2 giây

Nếu hệ thống của bạn dùng WooCommerce, Haravan, hay Shopify, thay Google Sheet bằng HTTP Request đến API của nền tảng đó. n8n có sẵn node cho WooCommerce và có thể gọi REST API của Haravan trực tiếp.

Workflow 3: AI Chatbot Với RAG — Tư Vấn Thông Minh

Khi câu hỏi phức tạp hơn rule-based có thể xử lý, bạn cần AI. n8n Conversational Agent node kết hợp với vector database (RAG) cho phép chatbot đọc toàn bộ catalog sản phẩm, chính sách, FAQ nội bộ rồi trả lời chính xác theo ngữ cảnh — như nhân viên tư vấn thực thụ.

1
Chuẩn bị Knowledge Base

Tập hợp: mô tả sản phẩm, bảng giá, chính sách đổi trả, FAQ. Lưu vào Google Drive hoặc Notion. n8n dùng Document Loader node để đọc và chunk tài liệu.

2
Embed và lưu vào Vector Store

n8n gửi các chunk văn bản qua OpenAI Embeddings → lưu vào Pinecone hoặc Supabase pgvector. Chỉ cần làm 1 lần khi setup, sau đó update khi nội dung thay đổi.

3
Conversational Agent nhận tin nhắn

n8n Conversational Agent node nhận câu hỏi của khách. Node này có bộ nhớ ngữ cảnh (Window Buffer Memory) — nhớ được 5–10 tin nhắn gần nhất trong cùng cuộc chat.

4
RAG: tìm kiếm knowledge base

Agent tự động embed câu hỏi → tìm 3–5 đoạn văn bản liên quan nhất trong vector store → đưa vào context cho LLM.

5
LLM tổng hợp và trả lời

GPT-4o hoặc Claude tổng hợp thông tin tìm được + lịch sử chat → trả lời bằng tiếng Việt tự nhiên, đúng ngữ cảnh, không bịa thêm thông tin.

6
Gửi phản hồi qua Zalo OA API

Kết quả từ AI → HTTP Request gửi tin nhắn về Zalo. Nếu AI không chắc chắn → tự động leo thang lên nhân viên kèm tóm tắt cuộc chat.

💬
Câu hỏi phức tạp
Zalo webhook
🧠
Conv. Agent
n8n AI node
🔍
RAG Retrieval
Vector DB search
🤖
GPT-4o trả lời
Với context thực
📤
Zalo reply
Hoặc leo thang nhân viên
System Prompt cho AI Chatbot Zalo OA tiếng Việt
# System Prompt — dán vào Conversational Agent node trong n8n
system_prompt: |
Bạn là trợ lý chăm sóc khách hàng của [TÊN DOANH NGHIỆP].
QUY TẮC:
- Trả lời bằng tiếng Việt, thân thiện, ngắn gọn (tối đa 3-4 câu)
- CHỈ dùng thông tin từ context được cung cấp, KHÔNG bịa thêm
- Nếu không chắc chắn: "Để chính xác hơn, mình sẽ nhờ nhân viên
hỗ trợ bạn ngay. Xin chờ 2-3 phút nhé!"
- Xưng hô: "mình" và "bạn"
- Không đề cập đến việc bạn là AI trừ khi được hỏi trực tiếp
THÔNG TIN DOANH NGHIỆP:
{{knowledge_base_context}}
LỊCH SỬ CHAT:
{{chat_history}}
💡Tối ưu chi phí AI
Không cần dùng GPT-4o cho mọi tin nhắn. Setup routing thông minh: câu hỏi đơn giản (dưới 20 từ, không phức tạp) → GPT-4o mini (rẻ hơn 10 lần). Câu hỏi phức tạp → GPT-4o. Trung bình tiết kiệm 60–70% phí API.

Kết Quả Trước và Sau Khi Triển Khai Chatbot

Trước — Trả lời thủ công
  • Phản hồi chậm 1–8 giờ tùy giờ làm việc
  • Ngoài giờ hành chính = không ai trả lời
  • Nhân viên mất 2–3 giờ/ngày chỉ để trả lời Zalo
  • Câu hỏi lặp lại (giá, địa chỉ) trả lời nhiều lần
  • Bỏ sót tin nhắn khi cao điểm
  • Không có dữ liệu về câu hỏi phổ biến nhất
Sau — Chatbot n8n + Zalo OA
  • Phản hồi trong 1–3 giây, 24/7/365
  • 70–80% câu hỏi giải quyết hoàn toàn tự động
  • Nhân viên chỉ xử lý 20–30% câu hỏi phức tạp
  • FAQ được trả lời nhất quán, không sai sót
  • 0 tin nhắn bị bỏ sót — log đầy đủ trong n8n
  • Dashboard tự động: câu hỏi phổ biến, tỷ lệ tự phục vụ
< 3s
thời gian phản hồi
từ 1–8 giờ xuống dưới 3 giây
75%
câu hỏi tự phục vụ
không cần nhân viên can thiệp
-2.5h
tiết kiệm mỗi ngày
thời gian nhân viên xử lý Zalo
24/7
hoạt động liên tục
kể cả Tết và ngoài giờ hành chính

So Sánh 3 Loại Chatbot: Thủ Công, Rule-Based, AI

Tiêu chíThủ côngRule-Based (WF 1+2)AI Chatbot RAG (WF 3)
Thời gian phản hồi1–8 giờ< 2 giây2–5 giây
Hoạt độngGiờ hành chính24/724/7
Xử lý câu hỏi phức tạpTốtKémRất tốt
Chi phí hàng tháng10–25 triệu (lương nhân viên)~200k (server n8n)700k–2.5 triệu (server + API)
Thời gian setup0 (đã có người)2–4 giờ1–3 ngày
Tỷ lệ tự phục vụ0%60–70%75–85%
Độ nhất quán câu trả lờiThấp (phụ thuộc người)100%95%+
Khả năng mở rộngThuê thêm ngườiThêm ruleCập nhật knowledge base

Câu Hỏi Thường Gặp

Zalo OA miễn phí đăng ký. n8n có bản self-host miễn phí (chỉ tốn chi phí server ~200k/tháng trên VPS). Nếu dùng AI chatbot (Workflow 3), tốn thêm phí OpenAI API — trung bình 500k–2 triệu/tháng tùy lượng tin nhắn. Tổng chi phí thường thấp hơn 10 lần so với thuê nhân viên chăm sóc khách hàng.

Có. n8n chạy liên tục trên server, chatbot phản hồi trong vòng 1–3 giây bất kể ngày đêm. Đây là ưu điểm lớn nhất so với nhân viên — không nghỉ lễ, không trễ giờ, không bỏ sót tin nhắn.

Không cần. n8n là công cụ no-code/low-code với giao diện kéo thả. Bạn chỉ cần copy webhook URL vào Zalo OA và thiết lập workflow theo hướng dẫn. Phần webhook JSON trong bài này có thể copy nguyên xi. Nếu cần AI chatbot phức tạp hơn, mới cần hỗ trợ kỹ thuật.

Zalo OA phân loại tin nhắn thành: tin nhắn phản hồi (response message — miễn phí, gửi trong 48h sau khi khách nhắn trước) và tin nhắn chủ động (broadcast — tốn ZNS/ZNS template). Chatbot phản hồi tin nhắn của khách thuộc loại miễn phí. Chỉ khi bạn gửi tin chủ động (khuyến mãi, thông báo) mới tốn phí.

n8n hiện có 993 AI chatbot template trên thư viện chính thức. Tuy nhiên, template Zalo OA cụ thể còn ít — bạn cần tự build workflow dựa trên HTTP Request node và Webhook node. Bài này cung cấp cấu trúc 3 workflow cốt lõi có thể tùy chỉnh theo nhu cầu.

RAG (Retrieval-Augmented Generation) cho phép AI tìm kiếm trong cơ sở dữ liệu riêng của bạn (sản phẩm, chính sách, FAQ) trước khi trả lời. Cần dùng khi: chatbot phải trả lời câu hỏi phức tạp về sản phẩm/dịch vụ cụ thể, thông tin thay đổi thường xuyên, hoặc khi câu hỏi không thể đoán trước bằng rule-based.

ℹ️Sẵn sàng triển khai?

Đặt lịch tư vấn miễn phí 30 phút — mình sẽ phân tích nhu cầu cụ thể của doanh nghiệp bạn và đề xuất workflow chatbot Zalo OA phù hợp nhất, từ rule-based đơn giản đến AI chatbot đầy đủ.

Đặt lịch tư vấn miễn phí →
Chia sẻ
Cập nhật: 1 tháng 4, 2026

Sẵn sàng tự động hóa?

Đặt lịch audit miễn phí 30 phút — mình sẽ phân tích quy trình của bạn và đưa ra lộ trình cụ thể. Hoặc làm quiz 2 phút để biết mức độ sẵn sàng.