Tích hợp n8n
1. Tổng quan
n8n là nền tảng workflow automation (mã nguồn mở) giúp bạn kết nối AhaChat với các dịch vụ khác qua webhook, HTTP API, hoặc các “step” tích hợp sẵn (Telegram, Google Sheets, v.v.).
Bạn có thể mở rộng để đồng bộ qua Google Sheets/CRM/Email… bằng cách thêm step trong n8n.
2. Chuẩn bị trên n8n: tạo Webhook Trigger
Bước 2.1 — Tạo workflow mới
Đăng nhập n8n (bản Cloud hoặc Self‑host).
Nhấn + → Workflow
- Đặt tên workflow, ví dụ: AhaChat → n8n Webhook.
Bước 2.2 — Thêm Webhook Trigger
- Trong n8n, nhấn + → tìm Webhook → chọn Webhook Trigger.
- Nhấn Listen for Test Event (nếu dùng n8n Cloud) hoặc Execute Workflow (nếu Self‑host) để n8n chờ tín hiệu.
- Sao chép Test URL (n8n cung cấp 2 URL: Test URL dùng khi đang “Listen/Execute”, Production URL dùng sau khi Activate workflow).
Tạm thời dùng Test URL để kiểm thử cùng AhaChat; khi chạy thật, bật Activate và chuyển sang Production URL.
3. Truy cập AhaChat (đẩy dữ liệu sang n8n)
Bước 3.1 — Tạo kịch bản lấy thông tin khách hàng
- Tạo Kịch bản trên AhaChat để thu thập trường dữ liệu bạn cần (tên, SĐT, email, địa chỉ, ghi chú…).
- Có thể dùng kịch bản mẫu sẵn có, sau đó sửa nội dung câu hỏi và thứ tự thu thập. Copy kịch bản mẫu tại đây
Bước 3.2 — Dán URL Webhook n8n vào block API
Tên thuộc tính trong {{ }} là ví dụ; thay bằng đúng thuộc tính bạn đang dùng để lưu thông tin người dùng trong kịch bản AhaChat.
Bước 3.3 — Chạy thử
Trên AhaChat, nhấn Test trên Messenger để chạy kịch bản.
Quay lại n8n, đảm bảo workflow đang Listen/Execute, bạn sẽ thấy Webhook Trigger nhận được dữ liệu mẫu ở panel bên phải.
4. Xử lý dữ liệu trong n8n
Sau Webhook Trigger, bạn có thể thêm các step Edit Fields(set) / Function để chuẩn hóa dữ liệu trước khi đẩy đi:
- Set: đổi tên trường, gom nhóm dữ liệu, gán giá trị mặc định.
- If: rẽ nhánh (ví dụ chỉ gửi Telegram nếu có phone).
- Date & Time: đổi định dạng timestamp.
Ví dụ: Gôm tất cả trường địa chỉ vào chung một biến
5. Gửi thông báo lên Telegram với n8n
n8n có step Telegram giúp gửi tin nhắn qua Bot.
Bước 5.1 — Chuẩn bị bot & chat ID
· Tạo Bot qua @BotFather (lấy Bot Token).
· Lấy Chat ID của nhóm/kênh/người nhận (ví dụ bằng cách thêm @RawDataBot vào nhóm bạn sẽ lấy được ID).
Bước 5.2 — Thêm step Telegram → Send Message
- Nhấn + → tìm Telegram → chọn Send Message.
- Credentials: tạo mới, dán Bot Token.
Chat ID: nhập Chat ID nhận tin.
Text: soạn nội dung, có thể nội suy trường từ payload:
- Nhấn Execute Step để thử gửi.
Nếu muốn kèm ảnh/tệp, dùng các operation khác của step Telegram (Send Photo/Document) và truyền URL hoặc binary data.
Trong nhiều trường hợp, sau khi xử lý dữ liệu trên n8n bạn muốn gửi thông tin xác nhận trở lại cho khách hàng qua AhaChat. Bạn có thể thực hiện bằng cách thêm một HTTP Request Node gọi API của AhaChat.
5. Gửi thông báo về Chatbot AhaChat
Cấu hình step HTTP Request
- Thêm một step mới trong n8n: + → HTTP Request.
- Thiết lập:
- HTTP Method: POST
- URL: https://ahachat.com/api/bot/send
- Authentication: None
Chọn Body Content Type: JSON.
Trong phần JSON/Body, điền:
Giải thích:
- bot_id: ID bot trên AhaChat.
- user_id: ID người dùng nhận tin ({{messenger_user_id}} của khách hàng mà bạn muốn gửi broadcast).
- ahachat_token: token API do AhaChat cung cấp cho bot.
- ahachat_message_tag: Thẻ tin nhắn cho phép gửi ngoài 24h (ví dụ: NON_PROMOTIONAL_SUBSCRIPTION, CONFIRMED_EVENT_UPDATE…).
- ahachat_data.messages.text: nội dung tin nhắn, có thể sử dụng nội suy biến từ dữ liệu Webhook (ví dụ: {{$json.query.ho_va_ten}}).
Xem thêm tài liệu đầy đủ về các API khác tại: https://ahachat.com/swagger/docs
Kết quả
Mỗi khi workflow chạy đến bước này, AhaChat sẽ gửi tin nhắn xác nhận thông tin về Messenger cho khách hàng tương ứng.
6. Lưu lại và bật Active cho workflow n8n.
Mở step Webhook, chuyển sang Production URL và copy URL để thay thế vào block API trong AhaChat.
Bật Activate để workflow đi vào hoạt động.