Kiến thức / Bán hàng – Chăm sóc khách hàng / Sale / CSKH

Workflow AI cho Telesale từ lead đến follow-up

Workflow từ lead mới đến phân loại, tư vấn và follow-up dành cho Telesale

Tình huống thật: một lead được đẩy vào hàng đợi ba lần

Khách điền form lúc 8 giờ 12 để nhận tư vấn một lần rồi hỏi thêm qua inbox Zalo. Webhook timeout nên nền tảng quảng cáo gửi lại hai lần; đến 8 giờ 20, một nhân viên nhập thủ công cùng số điện thoại từ bảng Google Sheets. CRM có ba record, tổng đài nhận hai task và một lịch gọi lại cũ vẫn đang chờ. Trong khi đó, khách vừa nhắn “chỉ gửi tài liệu, chưa tiện nghe máy”.

Nếu workflow AI cho Telesale chỉ nhìn từng record, hệ thống có thể tạo call brief rất đẹp nhưng vẫn làm sai việc: gọi trùng, gọi sai mục đích hoặc replay lịch cũ sau khi khách rút consent. Vì vậy luồng phải bắt đầu từ event identity, idempotency, consent và DNC; AI chỉ chuẩn hóa, dựng packet cùng draft. Con người gọi và quyết định nội dung tiếp theo.

Mục tiêu của workflow là một sự kiện được xử lý một lần, một lead có owner rõ, mỗi cuộc gọi có căn cứ liên hệ và mọi outcome truy về evidence. Luồng không robocall, không tự merge người, không suy đoán cảm xúc hoặc khả năng mua, không tự gửi follow-up và không hứa chính sách ngoài nguồn được duyệt.

Việc có thể giao cho AI trong từng trạng thái

Ở trạng thái INGESTED, AI kiểm schema, che trường thừa và tạo normalized envelope. Ở IDENTITY_REVIEW, nó trình candidate với exact signals, conflicts và source history nhưng không gộp. Ở CONSENT_REVIEW, Agent đọc consent card, DNC và purpose để đề xuất ALLOW_CALL, ALLOW_DRAFT_ONLY hoặc BLOCKED; policy engine mới thực thi rule.

Khi lead đã READY_FOR_CALL_PREP, Agent ghép call brief từ lời khách, chiến dịch, knowledge source và câu hỏi còn thiếu. Nó không chọn lời hứa để “tăng chốt”, không tự xếp lead nóng và không dùng transcript cũ ngoài purpose. Brief phải có source_ref, version, UNKNOWN, prohibited_claims, owner và thời hạn hiệu lực.

Sau cuộc gọi do nhân viên thực hiện, AI cấu trúc call note thành facts, questions, outcome candidate và next action. Nhân viên xác nhận code, sửa note và quyết định follow-up. Outcome NO_CONTACT không có nghĩa khách từ chối; STOP_CALL không được đổi thành gọi lại; CALLBACK_REQUESTED cần thời điểm khách nói và kênh được phép.

Dữ liệu cần chuẩn bị cho state machine

Event envelope gồm event_id, source_event_id, event_type, occurred_at, received_at, channel, lead_ref, phone_hash, campaign_id và payload_version. Idempotency key ghép source_event_id với action_type. Nếu một webhook đến lại, inbox ghi DUPLICATE_EVENT và trả receipt cũ, không tạo thêm lead, call task hay follow-up.

Lead master giữ lead_id, active_owner, current_state, last_transition_id, identity_status và stop_reason. Consent ledger giữ purpose, channel, evidence_ref, granted_at, expires_at, withdrawn_at và DNC. Data owner xác minh ledger; khách hàng mới là chủ thể cấp hoặc rút đồng ý. Mọi transition liên hệ phải đọc phiên bản consent mới nhất.

Call packet có brief_id, script_version, knowledge_refs, policy_refs, open_questions, allowed_claims, forbidden_claims và reviewer. Call result có call_id, started_at, ended_at, agent_id, recording_ref nếu được phép, facts, outcome_code, next_action và customer_words_ref. Trường chưa biết giữ UNKNOWN, không tự suy ra từ thời lượng hay giọng nói.

Workflow bảy bước từ ingest đến follow-up

Bước 1 — Ingest và quarantine: adapter nhận event, kiểm schema, giảm dữ liệu và ghi receipt. Lỗi schema vào QUARANTINE. Bước 2 — Idempotency và identity: chặn source_event lặp; tạo candidate trùng. Mọi merge cần nhân viên hoặc data steward xác nhận, kể cả exact match trong pilot.

Bước 3 — Consent/DNC gate: policy engine kiểm purpose cùng channel. DNC, STOP_CALL hoặc consent rút chuyển STOPPED và hủy action chờ. Bước 4 — Owner và pre-call brief: rule đề xuất owner theo chiến dịch, ca trực và năng lực; xung đột vào ROUTING_REVIEW. Agent dựng brief, trưởng nhóm hoặc nhân viên kiểm nguồn trước READY_TO_CALL.

Bước 5 — Con người gọi: tổng đài chỉ mở task cho nhân viên; AI không có AUTO_CALL. Nhân viên xác nhận ngữ cảnh, xin phép tiếp tục và dừng khi khách yêu cầu. Bước 6 — Outcome review: Agent tạo note DRAFT, nhân viên chọn code, next action và lưu evidence. Bước 7 — Follow-up: Agent soạn draft đúng consent; con người duyệt và gửi, hoặc đóng STOPPED/CLOSED.

Workflow Telesale bảy bước có consent DNC và con người gọi
Sơ đồ minh họa state machine từ event đến follow-up, trong đó STOP_CALL chặn mọi retry liên hệ.

Năm prompt mẫu điều phối packet và recovery

Prompt trong workflow không viết kịch bản thuyết phục. Prompt 1 kiểm event envelope; prompt 2 lập candidate identity; prompt 3 kiểm transition consent; prompt 4 dựng call packet; prompt 5 chẩn đoán lỗi một phần. Mỗi đầu ra dùng schema cố định với evidence, blocker, next_state, next_owner và prohibited_action.

Prompt được chạy trước policy engine, không nối trực tiếp với tổng đài. Nếu output đề nghị CALL, SEND hoặc MERGE_CONFIRMED, validator trả BLOCKED_ACTION. Khi prompt_version thay đổi, đội phải chạy lại case retry webhook, DNC, consent đổi kênh, source hết hạn, tổng đài timeout và CRM write thành công nhưng task write lỗi.

Ví dụ điền sẵn dùng mã TS-DEMO và không chứa số điện thoại thật. Kết quả sample chỉ chứng minh format, không chứng minh workflow làm tăng tỷ lệ chốt. Reviewer cần đọc evidence_ref, không dựa vào confidence chung chung. Khi thiếu dữ liệu, output đúng là REVIEW hoặc UNKNOWN.

Công cụ phù hợp và kiến trúc event

MISA AMIS CRM hoặc CRM hiện có làm lead master; Stringee, CloudFone hay tổng đài đang dùng giữ call receipt; Google Sheets chứa fixture DEMO; Base.vn giữ review; Zalo OA chỉ nhận draft đúng scope. n8n hoặc Make có thể điều phối event nếu từng connector có idempotency, quyền tối thiểu và dead-letter queue.

Kiến trúc gồm event inbox, identity candidate service, consent/DNC resolver, state store, source resolver, review queue, outbox và channel adapter. Outbox chỉ chứa action đã được actor có quyền duyệt. Receipt từ CRM, tổng đài và kênh trở lại transition log. Model không nắm credential và không tự đổi state bằng văn bản tự do.

Dashboard cần quan sát duplicate event, false merge candidate, consent block, DNC compliance, source expiry, call task duplicate, reviewer edit và ERROR_PARTIAL. Alert phải có owner cùng deadline. Không dùng riêng số cuộc gọi/ngày để tối ưu; hệ thống có thể tăng volume nhưng làm xấu trải nghiệm và tăng vi phạm.

State machine Telesale với nhánh STOP retry và rollback
UI minh họa transition, receipt, ERROR_PARTIAL và recovery chỉ chạy đúng bước lỗi.

AI làm gì và người duyệt làm gì

AI làm việc trên cấu trúc: normalize event, tìm candidate, tách facts, kiểm source, tạo call brief, note draft và recovery checklist. Nó không xác thực consent ngoài ledger, không quyết định merge, không gọi, không gửi, không đánh giá tâm lý và không sửa DNC. Policy engine quyết định transition được phép; con người chịu trách nhiệm cuộc trao đổi.

Nhân viên Telesale xác nhận identity candidate, đọc brief, thực hiện cuộc gọi, chọn outcome và duyệt follow-up. Trưởng nhóm duyệt script, routing rule cùng ngoại lệ. Data owner quản schema, consent evidence và retention. Chủ chính sách duyệt giá, ưu đãi, điều kiện. IT quản service account, retry, rollback và incident.

Review card cần hiển thị customer words, source versions, consent purpose/channel, DNC, UNKNOWN và action proposed. Reviewer có thể APPROVE_DRAFT, EDIT, REQUEST_SOURCE, REASSIGN hoặc STOP. Không dùng nhãn “AI approved”; mọi quyết định ghi actor, role, timestamp và reason.

Sai lầm, nhánh lỗi và điều kiện STOP

Lỗi nguy hiểm nhất là retry toàn workflow sau timeout. Nếu CRM đã ghi outcome nhưng kênh follow-up lỗi, chạy lại từ ingest có thể tạo thêm task hoặc liên hệ trùng. Hệ thống phải giữ completed_writes, target proof và idempotency key, rồi replay đúng channel_step sau khi kiểm consent chưa đổi.

Nếu tổng đài tạo call task nhưng owner nghỉ ca, chuyển ROUTING_REVIEW thay vì tự giao cho người bất kỳ. Nếu knowledge source hết hạn trước cuộc gọi, CALL_PREP_BLOCKED. Nếu transcript không được phép lưu, adapter phải loại bỏ và chỉ giữ outcome tối thiểu. Nếu khách nói “đừng gọi nữa”, STOP_CALL được ghi ngay và hủy mọi lịch chờ.

Rollback khi có gọi sau DNC, false merge, source sai, lời hứa vượt policy hoặc action ngoài quyền. Đóng connector, dừng outbox, xác định record ảnh hưởng, khôi phục rule/prompt version và thông báo owner. Không dùng disclaimer để hợp thức hóa một cuộc gọi không có consent.

Triển khai theo cá nhân, đội và doanh nghiệp

Cá nhân mô phỏng workflow bằng 30 event DEMO: retry, hai người trùng tên, consent email-only, DNC, callback, source hết hạn và timeout. Viết expected state trước khi chạy. So transition thực tế với expected, không chỉ xem draft có tự nhiên hay không.

Đội nhóm chạy shadow mode với một chiến dịch, hai nhân viên và một trưởng nhóm. Tuần đầu Agent chỉ quan sát và tạo packet. Tuần hai mở CREATE_DRAFT cùng CREATE_TASK sau review; vẫn khóa AUTO_CALL, SEND và MERGE. Daily review xem STOP, duplicate, source coverage, outcome correction và recovery.

Doanh nghiệp cần schema registry, state contract, RACI, retention, audit, incident runbook và kill switch. Mở rộng theo chiến dịch khi ba lớp consent, source và reviewer đều đủ. Mỗi thay đổi connector hay outcome taxonomy cần regression test; dead-letter phải có owner thay vì trở thành kho lỗi vô hạn.

Kết quả đầu ra mẫu và câu hỏi thường gặp

Kết quả minh họa: FORM-DEMO-91 đến ba lần nhưng inbox trả một receipt. Candidate CRM-DEMO-14 vào IDENTITY_REVIEW và được nhân viên xác nhận. Consent mới chỉ cho gửi tài liệu, nên state chuyển DRAFT_ONLY, không tạo call task. Một CRM write thành công, channel timeout được replay riêng sau review; không có tin trùng.

Chỉ số minh họa gồm event-to-owner time, duplicate task prevented, DNC compliance, source coverage, outcome correction, ERROR_PARTIAL và replay success. Các chỉ số này đánh giá vận hành, không phải bằng chứng doanh thu. Mỗi dashboard cần audit mẫu và phản hồi nhân viên gọi.

AI có tự quay số không?

Không. Workflow chỉ chuẩn bị packet và draft; nhân viên thực hiện cuộc gọi theo consent.

Candidate trùng có tự merge không?

Không trong workflow này. Nhân viên hoặc data steward xem bằng chứng và quyết định giữ riêng hay hợp nhất.

DNC xuất hiện giữa luồng thì sao?

Chuyển STOPPED, hủy task và lịch chưa thực hiện; retry không được mở lại trạng thái.

Timeout có chạy lại toàn bộ không?

Không. Kiểm receipt rồi replay đúng bước lỗi bằng idempotency key, sau khi xác minh consent và source vẫn hợp lệ.

Đọc bản đồ Telesale, dùng prompt pack Telesale, mở landing nghề hoặc liên hệ NganAds.

Workflow

  1. Bước 1: Ingest và quarantine — Kiểm schema, giảm dữ liệu, ghi receipt; lỗi chuyển QUARANTINE.
  2. Bước 2: Idempotency và identity — Chặn event lặp, tạo candidate và để con người quyết định merge.
  3. Bước 3: Consent và DNC gate — Kiểm purpose, channel, STOP_CALL; không đủ bằng chứng thì BLOCKED.
  4. Bước 4: Owner và call brief — Đề xuất owner, ghép nguồn, giữ UNKNOWN và đưa brief vào review.
  5. Bước 5: Con người gọi — Nhân viên thực hiện cuộc gọi, xin phép và dừng theo yêu cầu khách.
  6. Bước 6: Outcome review — AI cấu trúc note DRAFT; nhân viên xác nhận code và next action.
  7. Bước 7: Follow-up hoặc STOP — Soạn draft đúng consent; con người gửi, đóng hoặc recovery đúng bước lỗi.

Prompt mẫu

Kiểm event envelope Telesale

MỤC TIÊU: Kiểm một event lead trước khi vào state machine mà không tạo hành động liên hệ.
[ĐẦU VÀO]: [event_id], source_event_id, channel, occurred_at, received_at, phone_hash, campaign, payload_version và consent_ref.
ĐỊNH DẠNG ĐẦU RA: VALID/QUARANTINE/DUPLICATE; normalized_envelope; missing_fields; idempotency_key; evidence và next_owner.
VÍ DỤ ĐIỀN SẴN: FORM-DEMO-91 retry lần ba; cùng source_event_id; trả receipt cũ, không tạo call task.

Tạo candidate identity chờ người duyệt

MỤC TIÊU: Trình hồ sơ có thể trùng nhưng không tự merge.
[ĐẦU VÀO]: [hai envelope], phone_hash, source history, campaign, owner, consent cards và rule_version.
ĐỊNH DẠNG ĐẦU RA: candidate_pair | matched_signals | conflicts | risk | KEEP/IDENTITY_REVIEW | reviewer | prohibited_action.
VÍ DỤ ĐIỀN SẴN: WEB-DEMO-12 và SHEET-DEMO-07 cùng phone_hash nhưng consent khác; chuyển IDENTITY_REVIEW.

Kiểm transition consent và DNC

MỤC TIÊU: Xác định transition có được phép theo consent mới nhất.
[ĐẦU VÀO]: [current_state], proposed_state, purpose, channel, consent version, DNC, STOP_CALL, action và actor.
ĐỊNH DẠNG ĐẦU RA: ALLOW/BLOCK/REVIEW; reason; required_proof; next_state; next_owner; audit_fields.
VÍ DỤ ĐIỀN SẴN: READY_TO_CALL nhưng consent đổi thành email-only; BLOCK CALL, chuyển DRAFT_ONLY.

Dựng call packet có nguồn

MỤC TIÊU: Chuẩn bị brief cho nhân viên gọi mà không viết lời hứa hoặc tự quay số.
[ĐẦU VÀO]: [lead facts], customer_words_ref, campaign source, knowledge refs, policy version, UNKNOWN và allowed claims.
ĐỊNH DẠNG ĐẦU RA: brief_id; facts; source_map; questions; forbidden_claims; expires_at; reviewer; status=REVIEW.
VÍ DỤ ĐIỀN SẴN: TS-BRIEF-DEMO-22 dùng KB-DEMO-v6; giá chưa có owner nên POLICY_REVIEW, không đưa vào brief.

Lập recovery plan cho ERROR_PARTIAL

MỤC TIÊU: Phục hồi đúng bước lỗi mà không nhân đôi lead, task hoặc follow-up.
[ĐẦU VÀO]: [transition log], idempotency_key, completed_writes, receipts, error, retry_count, consent_now và stop rules.
ĐỊNH DẠNG ĐẦU RA: root_cause; safe_to_retry; replay_step; preserved_ids; rollback; owner; deadline; STOP check.
VÍ DỤ ĐIỀN SẴN: CRM outcome TS-771 đã ghi, email adapter timeout; replay chỉ email_step sau review, không ghi lại CRM.

Câu hỏi thường gặp

AI có tự quay số không?

Không. Workflow chỉ chuẩn bị packet và draft; nhân viên thực hiện cuộc gọi theo consent.

Candidate trùng có tự merge không?

Không trong workflow này. Nhân viên hoặc data steward xem bằng chứng và quyết định giữ riêng hay hợp nhất.

DNC xuất hiện giữa luồng thì sao?

Chuyển STOPPED, hủy task và lịch chưa thực hiện; retry không được mở lại trạng thái.

Timeout có chạy lại toàn bộ không?

Không. Kiểm receipt rồi replay đúng bước lỗi bằng idempotency key, sau khi xác minh consent và source vẫn hợp lệ.

Bài liên quan

Muốn triển khai workflow Telesale có consent, DNC, idempotency và recovery rõ? Liên hệ NganAds để rà state, nguồn và quyền trước khi tích hợp.