Node If kiểm tra một hoặc nhiều điều kiện và đưa mỗi item vào nhánh true hoặc false. Node Switch so một giá trị với nhiều quy tắc và đưa item vào đúng nhánh, có thêm nhánh Fallback khi không khớp quy tắc nào. Dùng If cho câu hỏi có/không, dùng Switch khi có từ ba nhánh trở lên.
Bài này hướng dẫn cấu hình hai node điều kiện trong n8n qua hai ví dụ có ảnh chụp từng bước, nằm trong loạt hướng dẫn tạo workflow trên n8n. Email trong ví dụ là địa chỉ minh họa thuộc tên miền example.com.
Node If và node Switch trong n8n là gì?
Node If
Node If trong n8n hoạt động như câu lệnh “nếu… thì…” trong lập trình: kiểm tra điều kiện rồi chia luồng thành hai nhánh true và false. Mỗi điều kiện gồm giá trị bên trái, toán tử (equals, contains, ends with, is greater than…) và giá trị bên phải; nhiều điều kiện ghép bằng AND hoặc OR (If node, docs.n8n.io).
Ví dụ: kiểm tra người dùng có điền số điện thoại trong form không. Có thì gửi SMS, không thì gửi email nhắc.
Node Switch
Node Switch trong n8n phân luồng dữ liệu theo nhiều quy tắc, mỗi quy tắc một nhánh đầu ra (Output 0, Output 1…). Item không khớp quy tắc nào có thể đi vào nhánh riêng nhờ tùy chọn Fallback Output (Switch node, docs.n8n.io).
Ví dụ: chia đơn hàng theo phương thức thanh toán (thẻ, chuyển khoản, ví điện tử, COD), mỗi loại một nhánh xử lý.

Khi nào dùng node If, khi nào dùng node Switch?
Dùng If khi câu hỏi chỉ có hai đáp án (đúng/sai, có/không). Dùng Switch khi một trường có từ ba giá trị trở lên cần xử lý khác nhau, thay cho chuỗi node If nối tiếp khó đọc.
Tình huống Node nên dùng Lý do Email có chứa từ “khẩn cấp” không If Chỉ hai nhánh Khách đã đăng ký dịch vụ chưa If Có/không Giá đơn hàng trên 1 triệu đồng If So sánh số, hai nhánh Phương thức thanh toán: thẻ, chuyển khoản, COD Switch Nhiều giá trị của một trường Webhook có trường eventType: signup, purchase, unsubscribe Switch Mỗi sự kiện một nhánh, có Fallback cho sự kiện lạ Đang nối 3 node If kiểm cùng một trường Switch Gọn, dễ bảo trì hơn
Chi tiết hơn:
- Node If: kiểm tra điều kiện đơn giản, xử lý có/không, lọc dữ liệu cơ bản theo ngưỡng số, quy trình chỉ cần hai hướng.
- Node Switch: phân loại theo nhiều giá trị cụ thể, chọn hành động theo loại sự kiện, định tuyến workflow theo nhiều điều kiện rõ ràng.
Cách sử dụng node If trong n8n (ví dụ)
Ví dụ: kiểm tra người đăng ký dùng email thuộc tên miền công ty @example.com hay không. Có thì gửi email chào mừng nhân viên nội bộ; không thì gửi email chào mừng khách bên ngoài. Ảnh chụp làm trên n8n bản 1.x: nút Test step, Test workflow trong ảnh nay là Execute step, Execute workflow; công tắc Inactive nay là nút Publish.
Bước 1: Mở n8n, bấm Create Workflow để tạo workflow mới.
Bước 2: Bấm + trên canvas, tìm Manual Trigger và chọn làm điểm bắt đầu.

Bước 3: Thêm node Edit Fields (Set) sau Manual Trigger để tạo dữ liệu mẫu.

Cấu hình node Edit Fields:
- Mode: Manual Mapping, bấm Add Field.
- Name:
email, kiểu String. - Value:
nhanvien@example.com.

Bước 4: Thêm node If sau Edit Fields để kiểm tên miền email.

Trong mục Conditions của node If:
- Ô bên trái (giá trị cần kiểm):
{{ $json.email }}(cách viết cũ{{$json["email"]}}trong ảnh vẫn chạy). - Toán tử: String → ends with.
- Ô bên phải:
@example.com.
![Hướng dẫn cách sử dụng node If và node Switch trong n8n 6 Mục Conditions của node If trong n8n: giá trị trái {{$json["email"]}}, toán tử String ends with, giá trị phải @example.com](https://tino.vn/blog/wp-content/uploads/2026/10/cach-su-dung-node-if-va-node-switch-trong-n8n-sua-02.webp)
Như vậy, email kết thúc bằng @example.com đi vào nhánh true; email khác đi vào nhánh false. Cần thêm điều kiện (ví dụ email không rỗng), bấm Add condition và chọn AND hoặc OR.
Bước 5: Thêm node Gmail → Send a message vào nhánh true:
- To:
{{ $json.email }} - Subject: Chào mừng bạn đến với công ty!
- Message: Chúng tôi rất vui mừng chào đón bạn là thành viên mới của công ty.

Bước 6: Thêm node Gmail → Send a message vào nhánh false:
- To:
{{ $json.email }} - Subject: Chào mừng bạn đến với dịch vụ của chúng tôi!
- Message: Cảm ơn bạn đã đăng ký. Chúng tôi rất mong được phục vụ bạn.

Bước 7: Bấm Execute workflow để chạy thử. Khi thử thật, thay email mẫu ở Edit Fields bằng hộp thư bạn nhận được.

Kiểm hộp thư: email đi đúng nhánh đã thiết lập.

Đổi giá trị email trong Edit Fields sang một địa chỉ khác tên miền (ví dụ khach@example.net), chạy lại để kiểm nhánh false.


Cách sử dụng node Switch trong n8n (ví dụ)
Ví dụ: danh sách người dùng có thuộc tính role, cần gửi thông báo khác nhau cho từng nhóm: admin nhận thông báo quản trị, editor nhận thông báo chỉnh sửa, viewer nhận thông báo xem.
Bước 1: Bấm Create Workflow để tạo workflow mới.
Bước 2: Bấm +, chọn Manual Trigger làm điểm bắt đầu.
Bước 3: Thêm node Edit Fields (Set) để tạo dữ liệu mẫu.

Cấu hình: Mode Manual Mapping, thêm trường Name role, Value editor.

Bước 4: Thêm node Switch sau Edit Fields. Chọn Mode Rules, mỗi Routing Rule là một điều kiện:
- Rule 1:
{{ $json.role }}· String is equal to ·admin - Rule 2 (bấm Add Routing Rule):
{{ $json.role }}· is equal to ·editor - Rule 3:
{{ $json.role }}· is equal to ·viewer

Các tùy chọn trong Options:
- Fallback Output: chọn Extra Output để item không khớp quy tắc nào (ví dụ role “guest”) đi vào nhánh riêng; mặc định là None (bỏ qua item).
- Ignore Case: không phân biệt chữ hoa, chữ thường khi so.
- Less Strict Type Validation: cho n8n tự đổi kiểu dữ liệu (số, chuỗi) khi so sánh; tên cũ trong ảnh là Convert types where required.
- Send data to all matching outputs: gửi item vào mọi nhánh khớp, thay vì chỉ nhánh khớp đầu tiên.
Dữ liệu được chuyển hướng: Output 0 khi role = admin, Output 1 khi role = editor, Output 2 khi role = viewer, và nhánh Fallback nếu bạn bật.
Bước 5: Nối mỗi nhánh tới một node Gmail → Send a message với nội dung riêng cho admin, editor, viewer. Ví dụ với role editor:

Thiết lập Gmail tương tự cho các role còn lại.
Bước 6: Bấm Execute workflow để chạy thử.

Kiểm hộp thư: email gửi đúng theo role đã đặt.

Đổi giá trị role trong Edit Fields (admin, viewer, hoặc một giá trị lạ để thử Fallback) rồi chạy lại để kiểm từng nhánh.
Kết luận
If và Switch là hai node rẽ nhánh cơ bản nhất trong n8n: If cho hai hướng, Switch cho nhiều hướng có Fallback. Kết hợp chúng với node Webhook để xử lý dữ liệu từ form hay hệ thống khác theo từng trường hợp; danh sách các node hay dùng khác có ở bài các node phổ biến trong n8n.
Những câu hỏi thường gặp
Node If có hỗ trợ nhiều điều kiện cùng lúc không?
Có. Bấm Add condition để thêm điều kiện, rồi chọn AND (thỏa tất cả) hoặc OR (thỏa một trong số đó) ở ô nằm giữa các điều kiện.
Node If trả về dữ liệu gì ở nhánh true hoặc false?
Node If không đổi dữ liệu: item thỏa điều kiện đi ra nhánh true nguyên vẹn, item không thỏa đi ra nhánh false. Nhánh nào không có item thì các node phía sau nhánh đó không chạy.
Có giới hạn số lượng nhánh trong node Switch không?
Không có giới hạn cố định. Nên giữ số nhánh vừa phải để workflow dễ đọc; nếu quá nhiều, cân nhắc tách bớt sang sub-workflow hoặc dùng Mode Expression trả về số thứ tự nhánh.
Switch có thể dùng để thay thế If không?
Có thể, Switch với hai quy tắc tương đương một node If. Tuy vậy, với câu hỏi có/không, If gọn và dễ đọc hơn.
Switch có hỗ trợ nhánh mặc định (default) khi không khớp giá trị nào không?
Có. Mở Options, bật Fallback Output và chọn Extra Output để item không khớp đi vào một nhánh riêng, hoặc chọn Output 0 để gộp vào nhánh của quy tắc đầu tiên.
Muốn chạy n8n 24/7 mà không tự cài? VPS n8n của Tino cài sẵn n8n trên VPS NVMe đặt tại Việt Nam; bạn vẫn có quyền root để cấu hình. Xem cấu hình và giá trên trang sản phẩm.
