NỘI DUNG
Hướng dẫn cách tích hợp node Zalo vào n8n thông qua Community nodes.

Node Zalo chưa chính thức có trong n8n vì sao?
Zalo chủ yếu phổ biến tại Việt Nam
Zalo là một ứng dụng nhắn tin và mạng xã hội rất được ưa chuộng tại Việt Nam, nhưng ít phổ biến ở các quốc gia khác. Trong khi đó, n8n là một nền tảng mã nguồn mở được phát triển bởi cộng đồng quốc tế, nên các node thường tập trung vào những dịch vụ phổ biến toàn cầu như WhatsApp, Slack, hoặc Google Services.
Hạn chế về API của Zalo
Mặc dù Zalo cung cấp API cho Zalo Official Account (OA), tài liệu hướng dẫn và hệ sinh thái dành cho lập trình viên còn khá hạn chế so với các nền tảng quốc tế. Điều này gây khó khăn cho các nhà phát triển quốc tế khi muốn tích hợp Zalo vào n8n dưới dạng node chính thức.
Node cộng đồng trong n8n là gì?
Node cộng đồng là các gói mở rộng do cộng đồng người dùng n8n phát triển, cho phép tích hợp với các dịch vụ bên ngoài hoặc thêm chức năng tùy chỉnh mà không có trong bộ node chính thức của n8n.
Lợi ích của node cộng đồng
- Tăng khả năng tích hợp: Kết nối với các dịch vụ không có sẵn trong n8n, như Zalo.
- Linh hoạt tùy chỉnh: Đáp ứng các nhu cầu cụ thể của người dùng.
- Khuyến khích sáng tạo: Thúc đẩy cộng đồng đóng góp và chia sẻ giải pháp.
Hướng dẫn cách tích hợp node Zalo vào n8n thông qua Community nodes
Lưu ý khi sử dụng node Zalo từ cộng đồng
- Độ tin cậy: Node cộng đồng không được kiểm duyệt bởi nhóm phát triển n8n, vì vậy cần đánh giá kỹ về tính bảo mật và độ ổn định trước khi sử dụng.
- Rủi ro chính sách: Một số node có thể sử dụng kỹ thuật không được Zalo cho phép, dẫn đến nguy cơ tài khoản bị hạn chế hoặc khóa.
- Tương thích: Các node không được cập nhật thường xuyên có thể không hoạt động với phiên bản n8n mới, gây lỗi trong workflow.
- Yêu cầu môi trường tự host: Node cộng đồng chỉ hoạt động trên n8n tự host (self-hosted) trên VPS. Bạn có thể sử dụng dịch vụ VPS chuyên dụng cho n8n, được cài đặt sẵn để tránh phức tạp trong cấu hình.
Các bước tích hợp node Zalo vào n8n
Bước 1: Truy cập vào trang n8n của bạn
Sau khi bạn đã cài đặt n8n thành công và đã active license. Bạn truy cập vào n8n bằng thông tin đã tạo.
Sau đó nhấn vào dấu 3 chấm tại tên người dùng (góc dưới bên trái màn hình) => chọn Settings.

Bước 3: Chọn mục Community nodes
Bên trong Settings bạn chọn vào Community nodes => Installs a community node

Tại đây, bạn nhập vào ô npm Package Name tên node Zalo như sau:
n8n-nodes-zalo-user-v2
Cảnh báo: Mặc dù n8n-nodes-zalo-user-v2 được nhiều người sử dụng, đây không phải là node chính thức từ Zalo và có thể tiềm ẩn rủi ro dẫn đến việc tài khoản bị khóa. Hãy cân nhắc kỹ trước khi tích hợp.
Sau đó tick vào ô I understand the risks… và chọn Install để cài đặt

Lúc này bạn sẽ thấy thông báo Installing. Bạn hãy để nguyên cho đến khi cài đặt xong

Lưu ý: Một số lỗi thường gặp khi cài trên Share Hosting Cloudlinux.
Khi cài đặt sẽ thường sẽ gặp lỗi sau. Lỗi này cho biết n8n-nodes-zalo-user-v2 trong n8n yêu cầu module sharp
Error loading package "n8n-nodes-zalo-user-v2" :The specified package could not be loaded Cause: Cannot find module 'sharp' Require stack: - /home/jxkxmewk/.n8n/nodes/node_modules/n8n-nodes-zalo-user-v2/dist/nodes/ZaloUser/libs/utils.js - /home/jxkxmewk/.n8n/nodes/node_modules/n8n-nodes-zalo-user-v2/dist/nodes/ZaloUser/libs/apis/listen.js - /home/jxkxmewk/.n8n/nodes/node_modules/n8n-nodes-zalo-user-v2/dist/nodes/ZaloUser/libs/zalo.js - /home/jxkxmewk/.n8n/nodes/node_modules/n8n-nodes-zalo-user-v2/dist/nodes/ZaloUser/libs/index.js - /home/jxkxmewk/.n8n/nodes/node_modules/n8n-nodes-zalo-user-v2/dist/nodes/ZaloUser/ZaloApi.js - /home/jxkxmewk/.n8n/nodes/node_modules/n8n-nodes-zalo-user-v2/dist/nodes/ZaloUser/ZaloUser.node.js - /home/jxkxmewk/nodevenv/n8n/22/lib/node_modules/n8n-core/dist/nodes-loader/load-class-in-isolation.js - /home/jxkxmewk/nodevenv/n8n/22/lib/node_modules/n8n-core/dist/nodes-loader/directory-loader.js - /home/jxkxmewk/nodevenv/n8n/22/lib/node_modules/n8n-core/dist/nodes-loader/index.js - /home/jxkxmewk/nodevenv/n8n/22/lib/node_modules/n8n-core/dist/index.js - /home/jxkxmewk/nodevenv/n8n/22/lib/node_modules/n8n/dist/config/index.js - /home/jxkxmewk/nodevenv/n8n/22/lib/node_modules/n8n/bin/n8n - /usr/local/lsws/fcgi-bin/lsnode.js
Để cài đặt module sharp bạn chạy lệnh sau. Sau khi cài đặt xong module bạn có thể restart lại app hoặc stop/start.
npm install sharp --ignore-scripts
Và đây là kết quả sau khi cài đặt thành công.

Bước 4: Tạo API Key
Bạn hãy quay trở lại Setting, chọn vào mục n8n API => Create a API Key.

Đặt tên cho API của bạn, tuỳ chỉnh thời gian hết hạn cho API và Save lại.

Thông báo API đã được tạo thành công. Hãy lưu lại API để sử dụng cho các công việc khác.

Bước 5: Tạo Create Credential (Xác thực thông tin)
Bạn hãy truy cập lại trang Overview, nhấn vào mũi tên xổ xuống bên cạnh nút Create a workflow => chọn vào Create Credential.

Nhập vào từ khóa zalo => chọn Zalo User Credentials AP => nhấn Continue.

Sau khi cửa sổ xác thực node Zalo hiện lên. Để sử dụng node này, bạn cần tạo một Zalo Official Account và lấy các thông tin xác thực sau:
- Access Token
- App ID
- Secret Key
- Official Account ID
Bạn có thể lấy các thông tin này bằng cách đăng ký tại Cổng phát triển Zalo (Zalo Developer Portal. Sau khi nhập vào và test thành công. Lúc này bạn đã có thể sử dụng.
Nguồn tham khảo:
- https://www.npmjs.com/package/n8n-nodes-zalo-user-v2
- https://www.npmjs.com/package/n8n-nodes-zalo-vn