Mọi automation đều bắt đầu từ 3 thứ
Dù bạn dùng Automator trên macOS, Apple Shortcuts, Home Assistant cho nhà thông minh, hay n8n — mọi automation workflow đều được cấu thành từ 3 phần cơ bản:
- Trigger — điều gì kích hoạt workflow?
- Condition — có điều kiện gì cần kiểm tra không?
- Action — làm gì khi điều kiện thoả mãn?
Đây là hình thái cơ bản nhất của quy trình vận hành bất kỳ ứng dụng nào. Sự khác nhau giữa các công cụ nằm ở cách người ta tương tác và kiểm soát các node với nhau để tạo ra một quy trình đủ khoa học.
Bạn đã biết vẽ flow rồi — chỉ chưa biết chạy nó thôi
Nếu bạn là PM, designer, hay bất kỳ ai từng vẽ user flow, bạn đã quen với việc nghĩ theo luồng:
User mở app
│
▼
Chọn sản phẩm
│
▼
Thêm vào giỏ
│
▼
Thanh toán
│
▼
Nhận xác nhậnHay diagram mô tả logic vận hành:
Đơn hàng mới
│
▼
Kiểm tra tồn kho
│
├── Có hàng?
│ │
│ ▼
│ Xuất kho ──▶ Giao vận
│
└── Hết hàng?
│
▼
Thông báo seller ──▶ Hủy/Chờ nhậpThì bạn đã biết nghĩ theo workflow rồi. Cái thiếu duy nhất là: biến cái flow đó từ hình vẽ thành thứ chạy được thật.
Đó chính xác là thứ n8n làm.
Khi mình bắt đầu dùng n8n, cái “aha moment” là: canvas của n8n trông y hệt cái flowchart mình vẫn vẽ — nhưng mỗi ô vuông đều chạy được thật. Trigger giống cái ô “Bắt đầu”. Condition giống cái hình thoi rẽ nhánh. Action giống cái ô “Gửi email” hay “Cập nhật database”. Khác biệt duy nhất: ở n8n, bạn bấm Execute và nó chạy thật.
Mục lục
- Điều gì làm n8n trở nên đặc biệt
- Cách mình làm: luôn sketch trước, đấu nối sau
- Test từng bước — không đợi hoàn chỉnh mới chạy
- Không chỉ là condition và action — HTTP Request
- Gắn AI vào giữa luồng
- Kết nối n8n với mọi thứ — Webhook và MCP
- Use case thực tế mình đang dùng
- Lời khuyên để bắt đầu
Điều gì làm n8n trở nên đặc biệt
n8n không phải công cụ automation đầu tiên, cũng không phải duy nhất. Zapier, Make, Power Automate đều có thể làm được nhiều thứ tương tự. Vậy tại sao n8n lại lan rộng nhanh không chỉ với tech-savvy user mà còn với người yêu công nghệ nói chung?
Câu trả lời của mình nằm ở một tính năng có vẻ nhỏ nhưng thay đổi toàn bộ trải nghiệm:
Bạn xem được input và output của một node ngay khi chạy workflow — và bạn có thể kéo trực tiếp từng field của output vào param của node tiếp theo.
Nghe đơn giản, nhưng đây là điểm đau lớn nhất khi xây automation: “Tôi có output A từ bước trước, tôi cần chuyển thành B để đưa vào bước sau — làm thế nào?”
Ở hầu hết các công cụ, bạn phải mò trong documentation, đoán tên field, rồi hardcode vào. Ở n8n, bạn chạy node, nhìn thấy output hiện ra ngay, rồi kéo field đó vào đúng chỗ cần điền. Nếu cần transform phức tạp hơn, bạn chụp màn hình output và hỏi thẳng ChatGPT: “Tôi muốn chuyển đổi A thành B thì làm thế nào?” — khả năng rất cao GPT sẽ đưa cho bạn hướng dẫn khớp với đúng cấu trúc data bạn đang thấy.
Ví dụ đơn giản: mình cần gửi tin nhắn thông báo cho user, trong đó có các giá trị động như tên ngân hàng và số tiền. Thay vì hardcode, mình chạy node trước, thấy output có field bank_name và amount, rồi kéo thẳng vào template tin nhắn. Xong.
Cách mình làm: luôn sketch trước, đấu nối sau
Mình không bao giờ mở n8n lên rồi bắt đầu kéo thả node ngay. Cách đó dễ bị lạc giữa chừng vì vừa nghĩ vừa build.
Bước 1: Sketch ý tưởng các bước trên giấy hoặc note
Trước khi mở n8n, mình viết ra flow bằng text đơn giản. Ví dụ:
1. Nhận email mới có attachment
2. Lọc: chỉ xử lý email từ domain @vendor.com
3. Tải attachment về
4. Gửi nội dung qua AI để trích xuất thông tin quan trọng
5. Ghi kết quả vào Google Sheet
6. Gửi Slack thông báo cho teamChỉ cần 6 dòng, mình đã thấy rõ toàn bộ flow. Biết có bao nhiêu bước, bước nào cần condition, bước nào cần gọi API ngoài.
Bước 2: Mở n8n, kéo node theo đúng sketch
Giờ mới mở canvas. Kéo từng node theo thứ tự đã sketch:
Email Trigger
│
▼
IF (filter domain)
│
▼
Download attachment
│
▼
AI Agent
│
▼
Google Sheets
│
▼
SlackChưa cần nối. Chưa cần config. Chỉ đặt node lên canvas để nhìn thấy hình hài tổng thể — giống như bạn đặt wireframe trước khi design chi tiết.
Bước 3: Đấu nối và config từng node
Bây giờ mới bắt đầu nối dây và cấu hình. Từng node một, từ trái sang phải.
Cách tiếp cận này giống hệt cách mình làm product design: sketch low-fi trước, rồi mới đi vào detail. Không khác gì.
Test từng bước — không đợi hoàn chỉnh mới chạy
Đây là sai lầm phổ biến nhất mình thấy người mới dùng n8n mắc phải: build xong toàn bộ workflow rồi mới bấm Execute. Lỗi ở node thứ 2 nhưng phải debug cả 8 node.
Cách mình làm: chạy thử từng node ngay khi vừa config xong.
n8n có tính năng Execute Node — cho phép bạn chạy thử đúng một node, xem output của nó, rồi mới quyết định có đi tiếp không.
Mỗi node mình đều kiểm tra:
- Input có đúng format không? Nhiều khi node trước trả ra array mà node sau expect object — nối vào là lỗi ngay.
- Output có đúng thứ mình cần không? Không phải field nào cũng cần truyền tiếp. Lọc bớt data giữa các node giúp flow clean hơn.
- Edge case thì sao? Email không có attachment thì node download có crash không? Input rỗng thì AI node trả về gì?
Cách test từng bước này chậm hơn lúc đầu, nhưng tiết kiệm rất nhiều thời gian debug về sau. Giống như viết unit test: đầu tư ban đầu cao, nhưng payoff lớn.
Không chỉ là condition và action — HTTP Request
Đây là phần mà nhiều người chưa khai thác hết của n8n.
Bản chất của hầu hết các hành động trên web là một HTTPS Request. Khi bạn bấm “Đặt vé” trên một trang web, trình duyệt thực ra đang gửi một request tới API server. Ví dụ luồng đặt vé thực chất có thể mô tả như sau:
1. Gọi API lấy danh sách vé kèm giá
2. Chọn vé đạt yêu cầu → gọi API thêm vào giỏ hàng
3. Điền thông tin → gọi API ghi nhận vé
4. Backend xử lý: trừ tồn, tạo record, trả về thông tin vé
5. Giao diện hiển thị vé đã đặtn8n cho phép bạn giả lập toàn bộ chuỗi đó bằng cách tái tạo các HTTP Request — về cơ bản là cơ chế QA test API khi chưa có giao diện.
Trick cực kỳ hữu dụng: Mở trình duyệt, thực hiện hành động bạn muốn tự động hoá, vào DevTools → Network → tìm request liên quan → chuột phải → Copy as cURL → Paste thẳng vào HTTP Request node của n8n. Lập tức nó thiết lập y chang headers, method, body mà trình duyệt của bạn đã dùng.
Tất nhiên, không phải lúc nào cũng cần mò cURL như vậy. n8n liên tục tích hợp native với các dịch vụ phổ biến — biến chúng thành node sẵn có. Bạn muốn ghi dữ liệu vào Google Sheet? Chỉ cần chọn node Google Sheets, chọn hành động “Add new row”, nó tự lấy danh sách cột trong file và hiển thị các field để bạn điền. Không cần biết API của Google Sheet hoạt động thế nào.
Gắn AI vào giữa luồng
AI trong n8n mạnh nhất khi nó xen vào giữa một quy trình vốn đã chạy bằng logic thông thường — không phải ở đầu hay cuối.
Ví dụ flow xử lý feedback khách hàng:
Nhận feedback từ form
→ [AI] Phân loại: bug / feature_request / complaint / compliment
→ IF bug → Tạo ticket Jira
→ IF feature_request → Thêm vào backlog Notion
→ IF complaint → Slack cho team support
→ IF compliment → Slack cho team productKhông có AI, bạn phải viết regex hoặc keyword matching — vừa cứng vừa hay sai. Với AI node, bạn chỉ cần prompt rõ ràng: “Phân loại feedback sau vào một trong 4 nhóm: bug, feature_request, complaint, compliment. Trả về đúng 1 từ.”
Những chỗ mình hay gắn AI vào:
- Trích xuất thông tin từ text phi cấu trúc: email, chat message, PDF scan
- Phân loại và gắn nhãn: phân loại nội dung, sentiment, mức độ ưu tiên
- Tóm tắt: rút gọn nội dung dài thành vài bullet point
- Dịch hoặc chuyển đổi format: từ ngôn ngữ này sang ngôn ngữ khác, từ free text sang JSON
Nguyên tắc của mình: AI xử lý phần “mềm” (ngôn ngữ, phân loại, suy luận), logic cứng xử lý phần còn lại (routing, lưu trữ, thông báo). Đừng dùng AI cho thứ mà một cái IF/ELSE làm được.
Kết nối n8n với mọi thứ — Webhook và MCP
Webhook: cho ứng dụng khác gọi vào n8n
Bạn có thể dùng cơ chế Webhook để các ứng dụng khác gọi REST API vào n8n và kích hoạt một workflow. Mình dùng cách này để n8n trở thành backend xử lý tin nhắn chat của khách hàng trên web — mỗi khi có tin nhắn mới, hệ thống gọi webhook, n8n xử lý và trả về phản hồi.
MCP: chuẩn giao tiếp mới giữa AI và workflow
Nhưng n8n đem lại một thứ hay hơn nữa: MCP (Model Context Protocol) — ngôn ngữ chung để gần như tất cả AI model, AI tool giao tiếp được với workflow của bạn.
Tại sao MCP lại quan trọng? So sánh trực tiếp:
Với cách cũ (API trực tiếp):
- Bạn phải định nghĩa trước: tình huống A gọi API 1, tình huống B gọi API 2
- Mỗi AI Agent hay tool cần cấu hình riêng
- Khi API thay đổi, phải đi sửa ở tất cả những chỗ đã cấu hình
Với MCP:
- AI tool gọi tới MCP, MCP giải thích về các tool nó có — AI tự quyết định dùng cái nào, thậm chí tự biết cần kết hợp nhiều tool cùng lúc
- MCP như một gateway trung tâm: cắm tất cả AI Agent vào một chỗ
- Khi API thay đổi, chỉ cần sửa kết nối MCP một lần, tất cả đều được cập nhật
Kết quả thực tế: bạn tách được phần “điều phối logic” (n8n — visual, dễ sửa) và phần “giao tiếp tự nhiên” (AI assistant). Mỗi bên làm tốt nhất thứ mình giỏi.
Use case thực tế mình đang dùng
Trong công việc
1. Tóm tắt group chat tự động
Mình có quá nhiều group dự án và cộng đồng, không có thời gian đọc từng group mà không đọc thì FOMO. Mình xây một workflow để AI âm thầm thu gom tin nhắn theo từng group, phân loại theo mức độ quan trọng, rồi cứ đầu ngày / giữa trưa / giữa chiều gửi một bản tóm tắt các ý chính. Sau khi gửi xong, workflow tự xóa hết tin nhắn đã lưu để bắt đầu lại vòng thu thập mới.
2. Tự động hoá khai báo thuế
Hàng quý mình cần nộp nhiều hoá đơn chứng từ, và hoá đơn đầu vào cần khai báo chi tiết từng sản phẩm với mức thuế 8% hay 10%. Tổng hợp tay rất phiền. Mình xây workflow để khi có hoá đơn mới về, nó tự động điền vào các mẫu khai báo thuế theo đúng format. Cuối quý mình chỉ cần cầm đi nộp, không cần làm gì thêm.
3. Quản lý hợp đồng bằng AI
Mình ký nhiều hợp đồng có các điều khoản cần theo dõi lâu dài và các milestone với khách hàng. Thay vì đọc lại từng hợp đồng hoặc quản lý trên Excel, mình xây workflow vector hoá tất cả hợp đồng và nội dung của chúng. Bot sẽ tra cứu hàng ngày để nhắc nhở khi sắp đến hạn điều khoản. Khi cần hỏi “làm thế này có vi phạm hợp đồng nào không?”, AI trả lời ngay dựa trên database hợp đồng đã được index.
Trong cuộc sống cá nhân
4. Tối ưu cashflow thẻ tín dụng
Nhiều thẻ tín dụng, mỗi thẻ có kỳ sao kê và hạn thanh toán khác nhau. Nếu cứ đầu tháng có lương là trả hết thì đang bỏ phí thời gian miễn lãi — nhiều khi gần cả tháng — để sinh lời. Mình xây workflow để lưu lại và ước tính lượng tiền cần giữ lại tối thiểu cho việc trả tín dụng, tự tính ngày thanh toán tối ưu, và nhắc mình trước ít nhất 3 ngày. Nhờ vậy tối ưu được dòng tiền đáng kể.
5. Tự động phân loại chi tiêu
Mỗi khi chuyển khoản ngân hàng, workflow dựa vào nội dung chuyển khoản để xác định danh mục chi tiêu và tự động thêm vào Money Lover — không cần grant quyền truy cập ngân hàng (tránh rủi ro bảo mật), không mất phí đồng bộ, và giải quyết luôn vấn đề Money Lover chia mỗi ngân hàng thành một ví riêng gây rắc rối khi chuyển tiền nội bộ.
6. Hệ thống lưu trữ kiến thức tự động
Mình có thói quen lưu bookmark, bài viết, ghi chú từ bài chia sẻ hay — nhưng nếu phải điền nhiều thông tin là sẽ lười và dần bỏ hẳn. Vì vậy mình xây các workflow:
- Bookmark → tự lưu vào Raindrop, tự đặt tiêu đề / mô tả / tags
- Ghi chú → tự thêm vào Notion, tự gắn tag
- Tất cả đều được vector hoá vào RAG database
Khi cần tìm lại, mình chỉ nhớ mang máng “đã từng lưu cái gì đó về chủ đề này” là AI có thể tìm trong vector database và trích dẫn đúng thông tin, dù không nhớ chính xác từ khoá.
7. Tích hợp với Apple Siri
Khi đang lái xe hoặc bận tay, không thể mở Telegram hay chatbot để nhắn tin. Mình tích hợp n8n vào Apple Siri thông qua Apple Shortcuts: chỉ cần nói “Hey Siri, cho tui hỏi…” là Siri gọi n8n workflow và trả về kết quả bằng giọng nói. Không cần thao tác tay nào.
8. AI assistant cá nhân hoá
Mình xây một trợ lý kết hợp nhiều MCP server để có thể:
- Quản lý lịch họp và nhắc nhở
- Ghi nhớ các thông tin cá nhân theo ngữ cảnh
- Nghiên cứu profile ai đó trên LinkedIn và Google
- Truy vấn lịch sử hoạt động từ Home Assistant — ví dụ: “Tối qua ai đã mở cửa Garage lúc mấy giờ?”
Khi có một kỹ năng mới mình muốn AI làm được, mình chỉ cần dựng thêm một MCP endpoint và viết kịch bản sử dụng. Mô hình này cho phép nhiều AI Agent phối hợp với nhau để hoàn thành một yêu cầu chung chung mà không cần mình phải điều phối từng bước.
Lời khuyên để bắt đầu
Đừng nghĩ n8n là công cụ automation xa lạ. Hãy nghĩ nó là Figma/Miro cho quy trình — nơi bạn vẽ flow và flow đó chạy được thật.
- Chọn một quy trình bạn đang làm bằng tay mỗi tuần. Càng lặp lại, càng phù hợp.
- Sketch ra các bước trên giấy trước. Đừng mở n8n ngay.
- Kéo node lên canvas theo sketch. Nhìn tổng thể trước, chi tiết sau.
- Test từng node. Xem input/output có đúng ý chưa rồi mới nối tiếp.
- Gắn AI node vào chỗ cần xử lý ngôn ngữ hoặc phân loại. Không phải chỗ nào cũng cần AI.
- Chạy vài ngày, quan sát, rồi điều chỉnh. Workflow tốt nhất là workflow được sửa nhiều lần.
Bạn đã biết nghĩ theo flow rồi. n8n chỉ là bước tiếp theo: biến sơ đồ tư duy thành hệ thống chạy thật.