📊 B2B FOLLOW UP — n8n Workflow ACTIVE

ID: ZgvELvd5d7ZDT500  ·  62 nodes  ·  Trigger: 6h sáng hàng ngày  ·  Mục đích: Nhắc Owner deal idle + tự động xoay vòng deal bị bỏ quên
🔧 Workflow Diagram 📑 Báo cáo Sales B2B — Rủi ro & Mô hình lương 20–30M NEW
🎯 Pipeline đang theo dõi
1,951deals
10 stages: 1, 2, 3, 4, 16, 22, 78–81
💰 Tổng pipeline value
5.83tỷ ₫
2.99 triệu ₫/deal trung bình
👥 Sales active
6người
5 B2B + 1 SDR (Tùng tạm)
🔔 Reminders fire hôm nay
120tin
😫 20 nhắc nhẹ  ·  🔔 36 cảnh báo  ·  🚨 64 tối hậu
🔄 Deal chờ rotate
1,232deals
Idle > 15 ngày · cap 70/ngày → ~18 ngày clear
💸 Deals chưa có value
1,748deals
89.6% · chỉ 203 deals có giá trị (5.83 tỷ ₫)
🎓 Deals trên 50 HS
741deals
38% · trung tâm/trường tầm trung trở lên
🎓🏫 Deals trên 100 HS
364deals
18.7% · trung tâm lớn — segment ưu tiên +2.5đ
Snapshot Pipedrive lúc 2026-06-11 · Top owner: Tung Tony (1,090 deals = 56%) · 15 deals không xác định size
flowchart TD T1["⏰ Schedule Trigger
6h sáng hằng ngày"]:::trigger T2["🪝 Webhook báo cáo Hải Anh
⚠️ DISABLED"]:::disabled T3["👆 Manual Trigger"]:::trigger T1 --> A1["📥 Get Open Deals
Pipedrive API"]:::api A1 --> A2{"🔍 Lấy stages
1,2,3,4,16,22,78-81"}:::filter A2 --> A3["⚙️ Tính days_idle
= today − last_activity"]:::code A3 --> SW{{"🔀 SWITCH
theo days_idle"}}:::switch SW -->|"= 4"| N1["😫 Nhắc nhẹ Owner
Zalo · 6 mẫu random"]:::zalo SW -->|"= 8"| N2["🔔 Cảnh báo Owner
Zalo · 6 mẫu random"]:::zalo SW -->|"= 15"| N3["🚨 Tối hậu thư
Zalo · 6 mẫu random"]:::zalo SW -->|"> 15"| X1[["🔄 XOAY VÒNG OWNER"]]:::important X1 --> X2["📏 Limit 70 deals/day"]:::filter X2 --> X3{"🚫 Bỏ stage 22
và person_id rỗng"}:::filter X3 --> X4{"🛡️ Bỏ deal của Hải Anh
owner_id ≠ 22994232"}:::filter X4 --> X5["🎯 Enrich data
Person + Owner + B2B Points"]:::api X5 --> X6["🧠 Logic xoay vòng
chọn owner ít điểm nhất
+2.5 đ TT · +1 đ GV/SDR"]:::code X6 --> X7["💾 PUT Update Deal
Pipedrive owner + stage"]:::api X7 --> Y1["🥀 Báo Owner CŨ
'CHIA BUỒN, deal đã rời xa...'"]:::zalo X7 --> Y2["🥷 Báo Owner MỚI
'CƯỚP ĐƯỢC RỒI...'"]:::zalo X7 --> Y3["📝 Log Round Robin
Google Sheets"]:::sheet X7 --> Y4["📋 Mẫu báo cáo Hải Anh
Google Sheets"]:::sheet T2 -.-> R1["📊 Đọc sheet mẫu"]:::sheet R1 -.-> R2["✂️ Phân mảnh dòng"]:::code R2 -.-> R3["💬 Gửi Hải Anh
6 đoạn Zalo"]:::zalo R3 -.-> R4{"Báo thành công?"}:::filter R4 -.->|"Yes"| R5["🗑️ Xoá toàn bộ mẫu"]:::sheet classDef trigger fill:#7aa2f7,color:#0f0f1e,stroke:#4a72c7,stroke-width:2px classDef api fill:#9ece6a,color:#0f0f1e,stroke:#6e9e3a,stroke-width:2px classDef code fill:#bb9af7,color:#0f0f1e,stroke:#8b6ac7,stroke-width:2px classDef switch fill:#ff9e64,color:#0f0f1e,stroke:#cf6e34,stroke-width:2px classDef zalo fill:#0084ff,color:white,stroke:#0054cf,stroke-width:2px classDef sheet fill:#0f9d58,color:white,stroke:#076d38,stroke-width:2px classDef filter fill:#7dcfff,color:#0f0f1e,stroke:#4d9fcf,stroke-width:2px classDef important fill:#f7768e,color:white,stroke:#c7465e,stroke-width:3px classDef disabled fill:#3a3a4e,color:#888,stroke:#555,stroke-width:2px,stroke-dasharray: 5 5
Trigger (Schedule, Webhook)
API call (Pipedrive)
Code JS
Switch routing
Filter / Lọc
Zalo message
Google Sheets
Bước quan trọng
Đang disabled

📌 Toàn bộ mẫu tin nhắn Zalo gửi Sales

Mỗi lần trigger, n8n random 1 trong 6 mẫu để Owner không bị "nhờn". Tất cả tin có footer chung: Title · Phone · Số ngày quá hạn · Stage · Link Pipedrive.

😫 Lần 1 — Nhắc nhẹ Owner days_idle = 4 · tức sau 3 ngày im hơi
  1. 😫 Nhắc nhẹ: Đã 3 ngày rồi mà vẫn chưa có tiến triển gì kìa chị {owner_name} ơi, liên hệ lại khách ngay thôi!
  2. 😫 Nhắc nhẹ: Đừng để Lead nguội nhé {owner_name}! Đã 3 ngày rồi mà chưa thấy update mới.
  3. 😫 Nhắc nhẹ: Alo {owner_name}, dứt điểm deal này sớm nha. Quá 3 ngày sau từ hoạt động cuối rồi, khách đang đợi đó!
  4. 😫 Nhắc nhẹ: Chưa thấy hoạt động của chị {owner_name} cho khách này sau 3 ngày. Tranh thủ chốt đơn nào!
  5. 😫 Nhắc nhẹ: Chị {owner_name} ơi, khách đã im hơi 3 ngày rồi đó. Check lại xem có vướng gì để hỗ trợ thầy/cô ngay nhé!
  6. 😫 Nhắc nhẹ: Nhắc chị {owner_name}, deal này đã qua 3 ngày 'vàng' rồi. Đừng bỏ lỡ cơ hội nhé!
🔔 Lần 2 — Cảnh báo Owner days_idle = 8 · tức sau 7 ngày im hơi
  1. 🔔 CẢNH BÁO: Đã 1 tuần trôi qua rồi chị {owner_name} ơi! Khách sắp quên mình luôn rồi đó, gọi lại ngay!
  2. 🔔 CẢNH BÁO: Chị {owner_name} ơi, deal này 'ngâm' hơi lâu rồi (7 ngày). Đừng để công sức Demo đổ sông đổ biển nhé!
  3. 🔔 CẢNH BÁO: Alo, chị {owner_name}, khách đã demo được 7 ngày mà chưa có tiến triển. Có khó khăn gì cần hỗ trợ không?
  4. 🔔 CẢNH BÁO: Nhắc nhở nghiêm túc cho chị {owner_name}: Deal này đã bỏ bê 7 ngày rồi. Hâm nóng lại tình cảm với khách ngay thôi!
  5. 🔔 CẢNH BÁO: 7 ngày là thời gian quá dài để khách cân nhắc lại. Chị {owner_name} chốt phương án sớm với phụ huynh nhé!
  6. 🔔 CẢNH BÁO: {owner_name} check lại Deal này, đã 1 tuần chưa có hoạt động mới. Đừng để 'Lead' thành 'Lost' thì uổng phí!
🚨 Lần 3 — Tối hậu thư days_idle = 15 · tức sau 14 ngày im hơi
  1. 🚨 TỐI HẬU THƯ: Đã 15 ngày kể từ lần cuối liên lạc! Chị {owner_name} cho khách câu trả lời cuối cùng để chốt hoặc đóng Deal nhé!
  2. 🚨 TỐI HẬU THƯ: Cơ hội cuối cùng cho Deal này chị {owner_name} ơi! Đã nửa tháng rồi, không dứt điểm là mất Lead đó!
  3. 🚨 TỐI HẬU THƯ: Chị {owner_name} ơi, hệ thống sắp gắn tag 'Bỏ rơi' cho Deal này sau 15 ngày im lặng. Liên hệ lần cuối ngay!
  4. 🚨 TỐI HẬU THƯ: Đã 15 ngày trôi qua, khách này có thực sự tiềm năng không chị {owner_name}? Quyết định dứt điểm trong hôm nay nhé!
  5. 🚨 TỐI HẬU THƯ: Nhắc nhở ngày cuối chị {owner_name} ơi, Deal đã quá hạn 15 ngày. Chốt đơn hoặc chuyển trạng thái để tập trung Lead mới nào!
  6. 🚨 TỐI HẬU THƯ: Quá 15 ngày là quá giới hạn rồi chị {owner_name} ơi! Thực hiện cuộc gọi 'sinh tử' để chốt deal ngay đi!
🔄 Khi deal được chuyển giao — Báo Owner CŨ days_idle > 15 · gửi cho người vừa thôi phụ trách deal
  1. 🔄 CHUYỂN GIAO: Deal này đã được phân lại cho đồng nghiệp khác do quá hạn tương tác. Mình tiếp tục tập trung các deal khác nhé!
  2. 📋 CẬP NHẬT: Hệ thống vừa chuyển deal này sang người khác phụ trách. Cảm ơn bạn đã đồng hành đến giờ, cùng cố gắng deal tiếp theo nha!
  3. 🔁 LUÂN PHIÊN: Deal đã lâu chưa có hoạt động nên được chuyển giao theo quy trình. Bạn yên tâm tập trung những deal còn lại nhé!
  4. 📤 BÀN GIAO: Deal đã chuyển sang đồng nghiệp khác chăm sóc. Lần tới nếu cần hỗ trợ kịp thời cứ báo team mình nha!
  5. ⏰ HẾT THỜI HẠN: Deal đã được chuyển giao tự động sau thời gian không tương tác. Cùng cố lên với các deal tiếp theo nhé!
  6. 🤝 ĐỒNG ĐỘI TIẾP SỨC: Một đồng nghiệp sẽ tiếp tục chăm sóc deal này giúp bạn. Mình tập trung việc khác thôi!
🎯 Khi deal được giao — Báo Owner MỚI days_idle > 15 · gửi cho người vừa nhận deal
  1. 🎯 DEAL MỚI: Chị {new_owner_name} vừa được phân thêm một deal cần chăm sóc. Cùng chốt nhanh nhé!
  2. 🌟 CƠ HỘI MỚI: Hệ thống vừa giao cho chị {new_owner_name} một deal mới. Khách đang chờ tin từ mình đó!
  3. 📥 NHẬN DEAL: Chị {new_owner_name} có thêm một deal cần follow-up. Liên hệ sớm để hỗ trợ thầy/cô nhé!
  4. 🤝 TIẾP NHẬN: Deal vừa được chuyển sang chị {new_owner_name} theo quy trình luân phiên. Chăm sóc kỹ giúp khách nha!
  5. 💪 KHỞI ĐỘNG LẠI: Chị {new_owner_name} nhận được một deal cần 'hâm nóng' lại. Tin chị sẽ làm khách vui!
  6. 🎁 GIAO THÊM DEAL: Một deal mới đã đến tay chị {new_owner_name}. Năng lượng của chị giúp khách này thành 'Won' sớm nhé!

⚙️ Logic xoay vòng Owner

👥 2 Team

B2B (5 người active): Kiều Hạnh, Quỳnh Anh, Cao Ánh, Mỹ Ngọc, Hồng Linh (mới, thử việc, không nhận Zalo)

Mai Anh — nghỉ từ 2026-06-10

SDR: Tùng Tony (thay từ 2026-06-11, tạm nhận thay cho đến khi tuyển SDR mới)

Hải Anh Nguyễn — nghỉ từ 2026-06-11; 1,064 deal đã reassign sang Tùng

📊 Cộng điểm

Trung tâm (type 85): +2.5đ

GV lớn / SDR thường: +1đ

Đọc/ghi từ sheet B2B Allocation Points

🛡️ Bảo vệ

Deal stage 22 (Deposit & Payment) không bị xoay

Deal của Hải Anh không bị xoay (cô đang off)

Giới hạn 70 deal/ngày tránh quá tải

⚠️ Điểm cần lưu ý

Bug tiềm năng: Node "Chuẩn hoá ngày..." dùng $input.first().json.channel để map channel name → tất cả deals trong batch đều bị gán chung 1 channel của item đầu. Nên đổi sang deal.channel per-item.
Skip nhắc nếu n8n down: Switch dùng equals 4/8/15. Nếu workflow lỡ skip 1 ngày, deal đó không bao giờ được nhắc ở mốc đó. Cân nhắc đổi sang >= 4 AND < 8.
Hard-code token: Pipedrive API token nằm thẳng trong các node HTTP Request. Nên chuyển sang Credential.