Cara Membuat Bot WhatsApp AI untuk Menangani Komplain Pelanggan

Jawaban singkat: bot AI komplain = klasifikasi 4 tingkat (Ringan/Sedang/Berat/Kritis) → response empatetis otomatis → eskalasi ke admin dengan SLA → follow-up recovery → logging untuk analisis root cause. Semua visual n8n. Artikel ini implementasi lengkap: prompt empatetis, workflow eskalasi, SLA dashboard, dan analisis pola komplain.

Mengapa Komplain Butuh Penanganan Khusus (Bukan FAQ Biasa)?

  • Emosi tinggi: Pelanggan marah, kecewa, merasa tidak dihargai → butuh empathy, bukan jawaban teknis.
  • Risiko reputasi: 1 komplain tidak tertangani → review negatif, viral medsos, churn.
  • Butuh keputusan cepat: Refund, ganti barang, diskon, escalasi manajemen → butuh authority.
  • Root cause analysis: Pola komplain = sinyal perbaikan produk/proses → butuh logging terstruktur.
  • Legal/compliance: Komplain tertentu (BPOM, halal, safety, data) butuh protokol khusus.

Klasifikasi 4 Tingkat Komplain (AI Classifier Output)

Tingkat Kriteria Contoh Response Bot Eskalasi SLA Admin
1. RINGAN (Low) Keluhan fungsional, solusi standar ada di KB “Barang belum sampai”, “Salah ukuran”, “Manual tidak jelas” Empatetik + solusi KB + “Admin follow-up <2 jam" Notif Admin 🟡 LOW (queue) <4 jam
2. SEDANG (Medium) Butuh keputusan: refund/ganti/diskon, bukan di KB “Produk rusak”, “Tidak sesuai deskripsi”, “Garansi”, “Kualitas jelek” Empatetik + “Saya turunkan ke admin untuk keputusan refund/ganti” + Notif 🟠 MEDIUM Notif Admin 🟠 MEDIUM (priority) <2 jam
3. BERAT (High) Emosi tinggi, ancaman review/legal, multi-channel “Saya lapor ke BPOM”, “Ini penipuan”, “Saya hubungi konsumen”, “Viral di Twitter” Empatetik tinggi + “Manajemen akan hubungi <1 jam" + Pause bot + Notif 🔴 HIGH Notif Admin + Manajemen 🔴 HIGH (urgent) <1 jam
4. KRITIS (Critical) Safety, legal, regulator, data breach, ancaman fisik “Makanan beracun”, “Data bocor”, “Alat cayakan luka”, “Ancaman fisik ke staff” Template legal + “Tim legal/hukum handle” + Notif 🚨 CRITICAL + Pause total Notif Owner + Legal + Manajemen 🚨 CRITICAL <15 menit

AI Classifier Komplain Prompt (Node AI – Output JSON)

Klasifikasikan komplain pelanggan. Output JSON SAJA:
{
“is_complaint”: true/false,
“tingkat”: “RINGAN | SEDANG | BERAT | KRITIS”,
“kategori”: “PENGIRIMAN | PRODUK | KUALITAS | GARANSI | LAYANAN | BILLING | LEGAL | SAFETY | LAINNYA”,
“emosi”: “NETRAL | KECEWA | MARAH | SANGAT_MARAH | TRAUMA”,
“entities”: { “produk”: “kode/nama”, “nomor_order”: “xxx”, “bukti”: “foto/video/link” }
“urgency_keywords”: [“BPOM”, “lapor”, “polisi”, “advokat”, “viral”, “twitter”, “instagram”, “makanan”, “beracun”, “bocor”, “luka”, “mati”],
“confidence”: 0.0-1.0,
“reasoning”: “Alasan klasifikasi”
}

ATURAN TINGKAT:
– RINGAN: Keluhan standar, solusi di KB, emosi NETRAL/KECEWA, tanpa urgency_keywords
– SEDANG: Butuh keputusan refund/ganti, emosi KECEWA/MARAH, tanpa urgency_keywords
– BERAT: Ada urgency_keywords (lapor, advokat, viral, BPOM) ATAU emosi SANGAT_MARAH
– KRITIS: Kategori SAFETY/LEGAL ATAU urgency_keywords: makanan/beracun/bocor/luka/mati/ancaman fisik

CONTOH:
User: “Pesanan #12345 belum sampai sudah 5 hari” → {“is_complaint”:true,”tingkat”:”RINGAN”,”kategori”:”PENGIRIMAN”,”emosi”:”KECEWA”,”entities”:{“nomor_order”:”12345″},”urgency_keywords”:[],”confidence”:0.95,”reasoning”:”Keluhan pengiriman standar, solusi cek resi di KB” }
User: “Baju rusak di siku, saya minta ganti!” → {“is_complaint”:true,”tingkat”:”SEDANG”,”kategori”:”PRODUK”,”emosi”:”MARAH”,”entities”:{“produk”:”Baju”,”kerusakan”:”siku”},”urgency_keywords”:[],”confidence”:0.9,”reasoning”:”Butuh keputusan ganti barang, tidak di KB” }
User: “Makanan ini beracun! Anak saya sakit! Saya lapor BPOM!” → {“is_complaint”:true,”tingkat”:”KRITIS”,”kategori”:”SAFETY”,”emosi”:”TRAUMA”,”entities”:{“produk”:”Makanan”},”urgency_keywords”:[“beracun”,”BPOM”,”sakit”],”confidence”:1.0,”reasoning”:”Safety issue, legal threat, urgency keywords beracun+BPOM” }

Response Empatetis Template per Tingkat (Inject ke System Prompt)

# COMPLAINT RESPONSE TEMPLATES (WAJIB DI SYSTEM PROMPT)

## TINGKAT 1 – RINGAN (Empati + Solusi KB + ETA Admin)
“Maaf kak 😔 [Nama] mengalami [keluhan]. Saya cek: [solusi dari KB: cek resi/prosedur ganti/garansi]. Admin akan follow-up detail <2 jam ya. Nomor tiket: [TIKET-ID]." ## TINGKAT 2 – SEDANG (Empati + Eskalasi Keputusan + ETA Admin)
“Maaf sekali kak 😔 [Nama] menerima [produk] yang [rusak/tidak sesuai]. Ini tidak seharusnya terjadi. Saya turunkan ke admin untuk keputusan [refund/ganti barang/diskon] paling cepat. Admin hubungi <2 jam. Nomor tiket: [TIKET-ID]." ## TINGKAT 3 – BERAT (Empati Tinggi + Manajemen + Pause Bot)
“Maaf sangat dalam kak 😔 Aku benar-benar peduli dengan pengalaman [Nama]. Tim manajemen kami akan hubungi langsung <1 jam untuk risolusi ini. Saya pause balasan otomatis biar fokus ke kasus ini. Nomor tiket: [TIKET-ID-URGENT]." ## TINGKAT 4 – KRITIS (Template Legal + Total Eskalasi)
“Kami sangat serius tangani kasus ini. Tim legal & manajemen sudah dikontak. Akan hubungi <15 menit. Mohon simpan bukti (foto/video/produk). Kami commit risolusi transparan. Nomor tiket: [TIKET-ID-CRITICAL]." ## BANNED PHRASES UNTUK KOMPLAIN:
– “Sesuai prosedur…” / “Kebijakan kami…” (terasa dismissive)
– “Tidak bisa…” / “Tidak diizinkan…” (terasa menolak)
– “Harus…” / “Wajib…” (terasa memaksa)
– “Itu bukan tanggung jawab kami…” (terasa lari tanggung jawab)
– “Tenang saja…” (meminta emosi lawan = invalidating)

Workflow Eskalasi Otomatis (n8n Visual)

  1. Trigger → AI Classifier Komplain (prompt di atas)
  2. Switch (Tingkat):
    • RINGAN: AI Response (Empati + KB) → Send → Notif Admin 🟡 LOW (Telegram) → Log Complaint_Log
    • SEDANG: AI Response (Empati + Eskalasi) → Send → Notif Admin 🟠 MEDIUM (Telegram + Priority) → Pause Bot untuk nomor ini (flag PAUSE_COMPLAINT) → Log Complaint_Log
    • BERAT: AI Response (Empati Tinggi + Manajemen) → Send → Notif Admin + Manajemen 🔴 HIGH (Telegram + Call/WA Blast) → Pause Bot + Flag URGENT → Log Complaint_Log
    • KRITIS: AI Response (Legal Template) → Send → Notif Owner + Legal + Manajemen 🚨 CRITICAL (Multi-channel: Telegram, WA, Call, Email) → Pause Total Bot untuk nomor ini → Log Complaint_Log + Incident_Report
  3. Node Function (Generate Tiket ID): `TIKET-${tingkat}-${YYYYMMDD}-${NNN}` (auto-increment per tingkat per hari)
  4. Node Sheets Write (Complaint_Log): Kolom lengkap (lihat di bawah)

Format Google Sheets Complaint Management (3 Tab)

1. Tab “Complaint_Log” (Riwayat Semua Komplain)

Kolom Contoh
Tiket_ID TIKET-SEDANG-20260115-003
Nomor_WA 628123456789
Nama Budi Santoso
Tingkat SEDANG
Kategori PRODUK
Emosi MARAH
Ringkasan Baju rusak di siku, minta ganti
Produk Kaos Polos Premium
Nomor_Order ORD-20260110-001
Bukti https://drive.com/bukti-rusak.jpg
Status BARU / DITANGANI / RESOLVED / ESCALATED
Resolusi Ganti barang + diskon 20% next order
Waktu_Masuk 2026-01-15 14:30:00
Waktu_Respons_Bot 2026-01-15 14:30:02
Waktu_Admin_Ambil 2026-01-15 14:45:00
Waktu_Resolved 2026-01-15 15:20:00
SLA_Target_Menit 120
SLA_Actual_Menit 50
SLA_Met TRUE
Assigned_Admin Admin2
Root_Cause Quality control packing
Preventive_Action Tambah checklist packing foto

2. Tab “Complaint_SLA_Dashboard” (Real-time Monitoring)

  • Total Komplain / Hari, Minggu, Bulan (by Tingkat, Kategori)
  • SLA Met Rate per Tingkat: RINGAN >95%, SEDANG >90%, BERAT >80%, KRITIS 100%
  • Avg Response Time Bot (target <1 detik), Admin Ambil (target: RINGAN <4 jam, SEDANG <2 jam, BERAT <1 jam, KRITIS <15 menit)
  • Avg Resolution Time (target: RINGAN <24 jam, SEDANG <4 jam, BERAT <2 jam, KRITIS <1 jam)
  • Open Complaints > SLA (Alert real-time)
  • Top 5 Root Cause (bahan perbaikan sistem)
  • Recurring Complaints (Nomor_WA >1 komplain 30 hari)
  • Sentiment Trend: Emosi distribution per minggu

3. Tab “Root_Cause_Analysis” (Bahan Perbaikan Produk/Proses)

Kolom Contoh
Root_Cause Quality control packing
Kategori PRODUK
Jumlah_Komplain_30_Hari 12
Impact_Revenue Rp 2.400.000 (refund+ganti)
Preventive_Action Tambah checklist packing foto + double check
PIC Production Manager
Target_Selesai 2026-02-01
Status IN_PROGRESS / DONE / VERIFIED
Verifikasi_Efektif Komplain turun 80% pasca action

Recovery Flow Pasca Resolusi (Retain Pelanggan)

Tahap Timing Aksi Bot Template
Immediate Saat Resolved Kirim: “Kak [Nama], kasus [Tiket] sudah risolusi: [Ringkasan resolusi]. Maaf lagi ya atas ketidaknyamanannya. Sebagai apresiasi, diskon 15% next order: THANKS15.” Recovery discount + empathy
H+1 Besok jam 10:00 Cek: “Kak, resolution kemarin sudah ok? Butuh bantuan lain?” Follow-up care
H+7 1 minggu NPS Survey: “Skala 1-10, puas risolusi kemarin? Balas angka saja.” NPS 1-10
H+30 1 bulan Win-back: “Kak, sudah 1 bulan. Butuh order lagi? Kode loyal: LOYAL20.” Loyalty offer

Checklist Launch Complaint Handling Minggu Ini

  • [ ] Setup AI Classifier Komplain prompt (4 tingkat + urgency keywords)
  • [ ] Setup Complaint_Log, Complaint_SLA_Dashboard, Root_Cause_Analysis Sheets
  • [ ] Import workflow: Trigger → Classifier → Switch 4 tingkat → Response + Eskalasi + Log
  • [ ] Setup Response Templates per tingkat (inject ke System Prompt)
  • [ ] Setup Notif Telegram: 🟡 LOW, 🟠 MEDIUM, 🔴 HIGH, 🚨 CRITICAL (multi-channel untuk CRITICAL)
  • [ ] Setup Pause Bot flag per nomor (PAUSE_COMPLAINT, PAUSE_URGENT)
  • [ ] Setup Cron Recovery: H+0 (resolusi), H+1, H+7 (NPS), H+30 (loyalty)
  • [ ] Setup SLA Dashboard real-time (PIVOT + auto-refresh 1 menit)
  • [ ] Setup Alert: Open > SLA → Notif Admin + Manajemen
  • [ ] Uji: komplain Ringan (pengiriman), Sedang (produk rusak), Berat (ancaman lapor), Kritis (safety)
  • [ ] Uji: Pause bot saat eskalasi, resume setelah resolved
  • [ ] Launch: Daily standup review SLA Dashboard, Weekly root cause analysis

FAQ: Bot WhatsApp AI Handle Komplain Pelanggan

Apakah bot AI bisa benar-benar empatetik (bukan robot)?

Dengan prompt yang benar: YA. Key: (1) Banned phrases dismissive, (2) Template empateti per tingkat, (3) Nama pelanggan + detail kasus di response, (4) ETA konkret bukan “segera”, (5) Pause bot saat eskalasi = focus manusia. Test: 85%+ pelanggan merasa “terdengar” bukan “dijawab bot”.

Bagaimana handle komplain yang butuh bukti (foto/video)?

AI Classifier ekstrak entities.bukti. Response: “Mohon kirim foto/video ke chat ini ya kak, biar admin langsung cek & proses cepat.” Admin terima via WhatsApp Web. Otomatis log ke Complaint_Log kolom Bukti.

Kalau pelanggan komplain berulang (serial complainer), gimana?

Complaint_Log cek Nomor_WA >2 komplain 30 hari → Flag “RECURRING” → Notif Manajemen → Response beda: “Kak, kami catat ini keluhan ke-[N]. Manajemen review pola. Akan hubungi personal.” Bukan dismiss, tapi serious handling.

Bisakah integrasi ke Helpdesk (Zendesk, Freshdesk, Jira)?

BISA — n8n punya node Zendesk, Freshdesk, Jira, Linear, GitHub Issues. Ganti/tambah node Notif Telegram → Helpdesk Create Ticket. Complaint_Log Sheets tetap backup. Template include Helpdesk integration guide.

Template complaint handling lengkap sudah jadi di mana?

Ebook + Template n8n — include: AI Classifier 4 tingkat prompt, 4 Response Templates empateti, Switch 4 tingkat workflow, Complaint_Log + SLA_Dashboard + Root_Cause Sheets, Telegram notif 4 level, Pause/Resume bot logic, Recovery flow 4 tahap, NPS survey, Root cause analysis template, Helpdesk integration guide.

Baca juga: Cara Membuat Bot WhatsApp AI untuk Menangani Komplain Pelanggan untuk panduan lengkapnya.

Scroll to Top