close

Bật mí cách tạo chatbot Facebook với n8n đơn giản

Tác giả: Đông Tùng Ngày cập nhật: 21/05/2025 Chuyên mục: Kiến thức tổng hợp
Disclosure
Website Wiki.tino.org được cung cấp bởi Tino Group. Truy cập và sử dụng website đồng nghĩa với việc bạn đồng ý với các điều khoản và điều kiện trong chính sách bảo mật - điều khoản sử dụng nội dung. Wiki.tino.org có thể thay đổi điều khoản sử dụng bất cứ lúc nào. Việc bạn tiếp tục sử dụng Wiki.tino.org sau khi thay đổi có nghĩa là bạn chấp nhận những thay đổi đó.
Why Trust Us
Các bài viết với hàm lượng tri thức cao tại wiki.tino.org được tạo ra bởi các chuyên viên Marketing vững chuyên môn và được kiểm duyệt nghiêm túc theo chính sách biên tập bởi đội ngũ biên tập viên dày dặn kinh nghiệm. Mọi nỗ lực của chúng tôi đều hướng đến mong muốn mang đến cho cộng đồng nguồn thông tin chất lượng, chính xác, khách quan, đồng thời tuân thủ các tiêu chuẩn cao nhất trong báo cáo và xuất bản.

Bạn đang tìm một một giải pháp chatbot trên Facebook nhưng muốn tiết kiệm chi phí và tự kiểm soát, không phụ thuộc vào bên thứ ba? n8n sẽ giúp bạn làm được điều đó. Bài viết dưới đây sẽ hướng dẫn cách tạo chatbot Facebook với n8n chi tiết, giúp bạn thiết lập một hệ thống trả lời tự động hiệu quả, tối ưu ngân sách và không cần viết code phức tạp.

Vì sao nên chọn n8n để tạo chatbot Facebook?

  • Hoàn toàn miễn phí và mã nguồn mở: Không giống nhiều công cụ chatbot giới hạn tính năng ở gói miễn phí, n8n là mã nguồn mở và bạn có thể tự host trên server riêng, đảm bảo quyền kiểm soát và bảo mật tuyệt đối.
  • Không cần viết code phức tạp: Với giao diện kéo – thả trực quan, n8n giúp bạn xây dựng luồng xử lý tin nhắn dễ dàng mà không cần kiến thức lập trình chuyên sâu. Bạn có thể thiết kế luồng trò chuyện chỉ bằng vài cú click.
  • Tích hợp mạnh mẽ với nhiều nền tảng: n8n hỗ trợ kết nối với hơn 400 dịch vụ. Điều này giúp bạn mở rộng khả năng chatbot như lưu trữ dữ liệu khách hàng, gửi email tự động hoặc đồng bộ dữ liệu sang hệ thống CRM.
  • Dễ dàng mở rộng và tùy biến: Bạn có thể dễ dàng viết script JavaScript trong các node để xử lý logic phức tạp hoặc tùy chỉnh hành vi chatbot theo nhu cầu mà không bị ràng buộc bởi nền tảng cloud của bên thứ ba.
Vì sao nên chọn n8n để tạo chatbot Facebook?
Vì sao nên chọn n8n để tạo chatbot Facebook?

Chuẩn bị trước khi bắt đầu tạo chatbot Facebook

Tài khoản Facebook và Fanpage đã xác minh

Để sử dụng chatbot trên Facebook, bạn bắt buộc phải có:

  • Một tài khoản Facebook cá nhân đã được xác minh (có số điện thoại và email hợp lệ).
  • Một Trang Facebook (Fanpage) mà bạn có quyền quản trị viên.
  • Xác minh ứng dụng và chấp thuận quyền gửi – nhận tin nhắn thông qua Facebook Developer (trong môi trường development hoặc production).

Việc xác minh Fanpage và cấu hình quyền truy cập là điều kiện tiên quyết để Facebook cho phép bạn tích hợp webhook từ chatbot bên ngoài như n8n.

Cài đặt và cấu hình n8n

Bạn có thể lựa chọn một trong hai cách sau để chạy n8n:

  • Self-hosted: Cài đặt n8n trên máy chủ riêng (VPS) để toàn quyền quản lý và tùy chỉnh.
  • n8n.cloud: Dịch vụ n8n được host sẵn bởi nhà phát triển – bạn chỉ cần đăng ký và sử dụng ngay mà không cần cấu hình phức tạp.

Bạn muốn self-hosted mà ngại cấu hình phức tạp? VPS N8N – AI Workflow của Tino là giải pháp bạn cần. Sử dụng VPS N8N – AI Workflow, bạn sẽ được cài sẵn n8n với cấu hình chất lượng.

Bạn chỉ cần: Đăng ký VPS -> Đổi tên miền riêng (nếu có) -> Truy cập và sử dụng n8n ngay.

Đăng ký tại: Tino.vn. Nhập mã TINO03 để được giảm 30%.

Hoặc tham khảo bài viết: Cách đăng ký VPS cài sẵn n8n để được hướng dẫn chi tiết.

 VPS N8N - AI Workflow
VPS N8N – AI Workflow

Một số lưu ý khi cài đặt n8n:

  • Đảm bảo n8n có thể truy cập công khai từ internet (Facebook yêu cầu webhook phải có địa chỉ HTTPS hợp lệ).
  • Nên sử dụng domain riêng và chứng chỉ SSL để tránh lỗi khi kết nối với Facebook API.

Hướng dẫn cách tạo chatbot Facebook với n8n

Bước 1: Tạo webhook để gọi API Messenger

Tạo một workflow mới -> nhấn dấu + -> thêm node Webhook.

Bạn có thể tham khảo chi tiết bài viết: Cách kết nối API Messenger với n8n thông qua node Webhook.

Bước 2: Thêm node IF để phân loại tin nhắn

Để workflow hiểu được được tin nhắn dạng text hay chỉ là một icon (ví dụ khách hàng lỡ tay nhấn like), bạn cần sử dụng node IF để phân loại.

Thêm node IF phía sau node Webhook và cấu hình node này như sau:

  • Kéo phần Text từ mục Messenger ở phần bên trái vào ô Value 1 hoặc nhập: {{ $json.body.entry[0].messaging[0].message.text }}
  • Chọn String -> Exists
Thêm node IF để phân loại tin nhắn
Thêm node IF để phân loại tin nhắn

Khi đó:

  • Nếu tin nhắn không phải là văn bản (ví dụ khách hàng lỡ tay thả like) luồng thông tin sẽ chạy qua nhánh False
  • Nếu tin nhắn là văn bản luồng thông tin sẽ chạy qua nhánh True

Nhấn Test workflow và nhập thử tin nhắn để kiểm tra.

Bước 3: Thêm node Set (Edit Fields)

Node này có vai trò lọc các thông tin cần thiết để cấu hình cho node AI Agent phía sau.

Thêm node Set sau nhánh True. Cấu hình như sau:

  • Nhấn Add Field – Đặt tên “ID khách hàng” và kéo phần id tại mục Sender vào ô Value
  • Nhấn Add Field – Đặt tên “ID page” và kéo phần id tại mục Recipient vào ô Value
  • Nhấn Add Field – Đặt tên “Nội dung tin nhắn” và kéo phần text tại mục Message vào ô Value
Thêm node IF để phân loại tin nhắn
Thêm node IF để phân loại tin nhắn

Sau khi tạo xong, nhấn Test workflow và thử gửi 1 tin nhắn để tiện cho việc lấy dữ liệu ở các node sau.

Thêm node IF để phân loại tin nhắn
Thêm node IF để phân loại tin nhắn

Bước 4: Tạo node AI Agent

Thêm node AI Agent sau node Set (Edit Fields). Cấu hình chung:

  • Chọn Define below tại mục Source for Prompt
  • Như đã nói ở phần trên, việc tạo node Set giúp bạn lọc các dữ liệu chính, bạn chỉ việc kéo Nội dung tin nhắn vào ô Prompt hoặc nhập trực tiếp: {{ $json[‘Nội dung tin nhắn’] }}
  • Nhấn Add Option -> chọn System Message -> nhập ngữ cảnh để mô tả quy tắc cho AI (tham khảo ở bài viết liên quan được nhắc đến bên dưới).
Tạo node AI Agent
Tạo node AI Agent

Với node AI Agent, bạn cần chuẩn bị:

  • Chat Model: Google Gemini Chat Model đã xác thực để kết nối API (có thể thay thế bằng OpenAI nếu cần AI chất lượng hơn nhưng phải trả phí).
Tạo node AI Agent
Tạo node AI Agent

  • Memory: Sử dụng Memory mặc định của n8n (Simple Memory)
Tạo node AI Agent
Tạo node AI Agent

  • Tools: Bảng dữ liệu Google Sheet, chứa demo câu hỏi của khách hàng và câu trả lời được thiết lập sẵn. Cần xác thực Credential cho Google Sheets.
Tạo node AI Agent
Tạo node AI Agent

Vì cách thiết lập System Message, Chat Model, ToolsMemory của AI Agent cho chatbot giống nhau trên cả Zalo và Facebook nên bạn có thể tham khảo hướng dẫn cách thực hiện tại bài viết: Cách tạo chatbot Zalo cá nhân trên n8n.

Sau khi thiết lập xong, nhấn Test Workflow và nhắn thử 1 tin nhắn vào Fanpage Messenger để kiểm tra.

Tạo node AI Agent
Tạo node AI Agent

Bước 5: Tạo node Code

Vì n8n chưa hỗ trợ node Messenger trực tiếp nên bạn cần xử lý đầu ta thủ công thông qua node Code và HTTP Request.

Thêm node Code sau node AI Agent và xóa nội dung code bên trong cấu hình

Sau đó, quay lại trang Developers Facebook, vào Công cụ -> chọn Trình khám phá API Đồ thị

 Tạo node Code
Tạo node Code

Thêm quyền pages_read_engagement và nhấn Generate Access Token.

Tiến hành kết nối với tài khoản Facebook quản trị viên Fanpage của bạn.

Sau khi kết nối xong, nhấn nút Gửi để lấy ID của ứng dụng.

 Tạo node Code
Tạo node Code

Dán ID lên ô bên trên rồi nhập thêm phía sau /messages/

Tiếp theo, chuyển GET thành POST rồi nhấn vào nút JSON.

 Tạo node Code
Tạo node Code

Nhập vào giữa 2 dấu ngoặc {} đoạn code sau:

{"recipient":{
"id":“{PSID}”
},
"message":{
"text":"Hello, World!"
}}

Thay “{PSID}” bằng ID khách hàng trong n8n và đổi phần text Hello, World! thành Xin chào! (hoặc một câu chào tùy bạn) rồi nhấn nút Gửi.

 Tạo node Code
Tạo node Code

(Lưu ý: đây chỉ là ID của tài khoản bạn dùng để gửi tin nhắn trong quá trình test workflow, lát nữa chúng ta sẽ thay bằng thông tin trong n8n).

Nếu thành công, bạn sẽ nhận được thông báo trong Messenger của Fanpage.

Dán đoạn code sau vào node Code trong n8n và thực hiện các thao tác:

const body = {
"recipient": {
"id": `${$('Edit Fields').first().json['ID khách hàng']}`
},
"message": {
"text": `${$input.first().json.output}`
}
};
return {
data: body
};
 Tạo node Code
Tạo node Code

Nhấn Test step để kiểm tra, thấy tích xanh ở phần Output là thành công!

Bước 6: Thêm node HTTP Request để Messenger trả lời tin nhắn khách hàng

Thêm node HTTP Request sau node Code.

Chuyển Method GET thành POST.

Nhập URL: https://graph.facebook.com/v22.0/108629477616764/messages/. Thay 108629477616764 thành ID của ứng dụng trong Trình khám phá API Đồ thị mà bạn đã thao tác ở bước Code.

Kích hoạt Send Header và nhập Header Parameters như sau:

  • Name: Authorization
  • Value: Bearer [mã truy cập của bạn trong Trình khám phá API đồ thị]
Thêm node HTTP Request
Thêm node HTTP Request

Kích hoạt Send Body, chọn Using JSON tại mục Specify Body rồi nhập vào ô: {{ $json.data }}

Thêm node HTTP Request
Thêm node HTTP Request

Bước 7: Thêm câu trả lời nếu dữ liệu đi vào nhánh False

Giả sử khách nhấn nhầm icon Like, dữ liệu sẽ đi vào nhánh False vì đây không phải là một văn bản. Khi đó, chatbot sẽ không phản hồi lại khách hàng.

Trong trường hợp này, nếu vẫn muốn tương tác với khách, bạn cần cấu hình đầu ra tại nhánh False.

Cách làm như sau:

Bạn copy 2 node Code và HTTP Requests rồi nối với nhánh False trong workflow.

Sau đó, cấu hình lại đoạn code trong node Code như sau:

const body = {
"recipient": {
"id": `${$input.first().json.body.entry[0].messaging[0].sender.id}`
},
"message": {
"text": `Xin chào, rất vui được hỗ trợ bạn, bạn muốn mình tư vấn về hạt macca và sữa hạt ạ!`
}
};
return {
data: body
};

Nhớ thay phần text bằng lời chào của riêng bạn nhé!

Thêm câu trả lời nếu dữ liệu đi vào nhánh False
Thêm câu trả lời nếu dữ liệu đi vào nhánh False

Bạn có thể nhấn Test workflow để kiểm tra.

Thêm câu trả lời nếu dữ liệu đi vào nhánh False
Thêm câu trả lời nếu dữ liệu đi vào nhánh False

Bước 8: Kích hoạt workflow

Trước khi cho chạy workflow, bạn cần đổi link webhook từ Test URL sang Production URL.

Cách thực hiện:

Nhấn nút Active để khởi động workflow.

Kích hoạt workflow
Kích hoạt workflow

Copy Production URL trong node Webhook.

Kích hoạt workflow
Kích hoạt workflow

Chuyển qua trang Cài đặt API Messenger bên Developer Facebook -> vào mục Đặt cấu hình webhook -> dán URL vào ô -> đặt Mã xác minh -> nhấn Xác minh và lưu.

Kích hoạt workflow
Kích hoạt workflow

Lúc này, bạn đã hoàn tất việc tạo chatbot cho Facebook. Hãy thử lại một tài khoản khác và nhắn tin với chatbot để kiểm tra nhé!

Kết quả:

Kết quả
Kết quả

Lưu ý: Mã truy cập sẽ hết hạn sau một khoảng thời gian, bạn cần tạo mới và nhập vào node HTTP Request để workflow hoạt động bình thường nhé!

Kết quả
Cập nhật token

Kết luận

Với các bước hướng dẫn chi tiết trong bài viết, bạn hoàn toàn có thể tự thiết lập chatbot mà không cần thuê của bên thứ ba. Nếu bạn muốn khám phá thêm nhiều giải pháp tự động hóa mạnh mẽ khác với n8n, đừng quên theo dõi blog của Tino để cập nhật các hướng dẫn mới nhất!

Những câu hỏi thường gặp

Tôi có cần trả phí để sử dụng AI Agent trong n8n không?

Việc sử dụng node AI Agent không tốn phí, tuy nhiên, nếu bạn chọn OpenAI GPT-4, bạn sẽ phải trả phí theo mức sử dụng API của OpenAI. Với Google Gemini, bạn có thể sử dụng miễn phí giới hạn tùy tài khoản.

Vì sao khi gửi tin nhắn vào Fanpage, chatbot không phản hồi?

Có thể do một trong các lý do sau:

Tin nhắn không phải là văn bản, nên đi vào nhánh False mà bạn chưa cấu hình phản hồi

Workflow chưa được kích hoạt (Active)

Webhook chưa được cấu hình đúng Production URL

Token Facebook bị hết hạn hoặc sai quyền

Làm sao để chatbot hiểu rõ sản phẩm của tôi?

Hãy cấu hình rõ phần System Message trong AI Agent và kết nối với Google Sheet chứa các thông tin sản phẩm, câu hỏi thường gặp. AI sẽ dựa vào dữ liệu đó để phản hồi chính xác.

Cần quyền gì để kết nối với Fanpage?

Tài khoản Facebook của bạn phải có quyền Quản trị viên (Admin) cao nhất của Fanpage thì mới có thể kết nối ứng dụng với trang và đăng ký webhook thành công.

Chatbot có thể trả lời nhiều người cùng lúc không?

Có. Workflow hoạt động theo từng phiên bản xử lý webhook độc lập, nên bạn có thể xử lý hàng loạt người dùng cùng lúc mà không bị xung đột.

Đông Tùng

Senior Technology Writer

Là cử nhân Quản trị kinh doanh của Trường Đại học Tài chính - Marketing, Tùng bắt đầu làm việc tại Tino Group từ năm 2021 ở vị trí Content Marketing để thỏa mãn niềm đam mê viết lách của bản thân. Sở hữu khả năng sáng tạo đặc biệt, anh cùng đội ngũ của mình đã tạo nên những chiến dịch quảng cáo độc đáo cùng vô số bài viết hữu ích về nhiều chủ đề khác nhau. Sự tỉ mỉ, kiên trì và tinh thần sáng tạo của Tùng đã góp phần lớn vào thành công của Tino Group trong lĩnh vực marketing trực tuyến.

Xem thêm bài viết

Bài viết liên quan

Xem nhiều

CÔNG TY CỔ PHẦN TẬP ĐOÀN TINO
Trụ sở chính: L17-11, Tầng 17, Tòa nhà Vincom Center, Số 72 Lê Thánh Tôn,  Phường Bến Nghé, Q. 1, TP. Hồ Chí Minh

Văn phòng kinh doanh: Số 42 Trần Phú, Phường 4, Quận 5, TP HCM
GPKD số 0315679836 do Sở KH và ĐT TP Hồ Chí Minh cấp
Hotline: 0364 333 333
Góp ý/Phản ánh dịch vụ: 0933 000 886