title: “Customers — Database Pelanggan” description: “Manajemen database pelanggan dengan paginasi, pencarian, import multi-format, WhatsApp integration, dan detail profil di SNISHOP ERP.”
Customers — Database Pelanggan

Arsitektur
Akses Halaman
URL:/crm → tab Database
Entitas: Customer
Tampilan List
Desktop View
Tabel dengan kolom:Mobile View
Card layout dengan informasi yang sama, dioptimasi untuk layar kecil.VIP Badge
Pelanggan denganlifetime_value > 1.000.000 mendapatkan badge VIP (ikon bintang) di samping nama.
Paginasi
25 pelanggan per halaman dengan navigasi halaman di bagian bawah.Form Tambah/Edit Pelanggan
Dialog form dengan 3 section:Section 1: Contact Info
Section 2: Business Detail
Section 3: Address & Notes
Export CSV
Seluruh daftar pelanggan (sesuai filter aktif) bisa diexport ke CSV:Import Multi-Format
CustomerImportModal — 4 Step Wizard
Format yang Didukung
Kolom Auto-Detection
Sistem mendeteksi nama kolom secara otomatis berdasarkan kata kunci:Hasil Import
Setiap record yang diimport menjadiCustomer dengan:
Template CSV
Tersedia template CSV sample untuk download agar user tahu format yang diharapkan.Customer Detail Profile
CustomerDetailProfile — Full-Screen Dialog
Dialog detail dengan sidebar profil dan 3 inner tab:Tab Overview
Menampilkan informasi kontak lengkap dan customer journey:Tab Activity
Tab AI Copilot
AI Copilot menggunakaninvokeLLM untuk generate pesan WhatsApp yang dipersonalisasi:
- AI membaca profil pelanggan (nama, LTV, membership, last purchase)
- Generate pesan yang relevan (promo, ucapan terima kasih, follow-up)
- Tombol “Send to WhatsApp” untuk langsung kirim
Address Book
CustomerAddressBook — Multi-Address Management
Setiap pelanggan bisa memiliki beberapa alamat:Operasi
WhatsApp Quick Send
WhatsAppQuickSend — Single Customer
Mengirim pesan WhatsApp ke satu pelanggan: Setelah terkirim, Customer entity diupdate:last_contact_date→new Date()last_contact_method→ “whatsapp”last_contact_notes→ isi pesan
Blast Message
CustomerBlastMessage — Broadcast
Mengirim pesan broadcast ke banyak pelanggan:- Pilih pelanggan dengan checkbox
- Tulis pesan atau generate via AI
- AI menggunakan konteks: jumlah audiens, rata-rata LTV
- Kirim via
whatsappSendMessageke setiap pelanggan - Cek
WhatsAppSessionuntuk memastikan gateway terhubung
Tips Penggunaan
- Gunakan import VCF untuk memindahkan kontak dari telepon ke CRM
- Filter status untuk fokus pada segmen pelanggan tertentu
- Export CSV secara berkala untuk backup data pelanggan
- Manfaatkan AI Copilot untuk membuat pesan WhatsApp yang personal
- Update alamat pelanggan secara berkala untuk pengiriman yang akurat
- Monitor LTV untuk identifikasi pelanggan VIP
Entity Relationship Diagram
Berikut adalah diagram relasi antara entitas Customer dengan entitas terkait di SNISHOP ERP. Setiap pelanggan dapat memiliki banyak alamat (embedded array), satu keanggotaan membership, banyak baris ledger loyalty, banyak Purchase Order, dan terhubung ke session WhatsApp.Penjelasan Relasi
Complete Entity Schema: Customer
Entitas Customer memiliki 45 field yang terbagi dalam 8 kategori. Berikut adalah schema lengkap berdasarkan definisi entity JSONC.Kategori 1: Identity (Identitas Dasar)
Field-field inti yang mengidentifikasi pelanggan.Kategori 2: Status & Klasifikasi
Menentukan posisi pelanggan dalam pipeline CRM dan tipe bisnisnya.Kategori 3: Financial (Keuangan & Analitik)
Field yang menghitung dan menyimpan metrik nilai pelanggan.Kategori 4: Membership & Loyalty
Seluruh field terkait program keanggotaan dan loyalty.Kategori 5: Contact Tracking (Pelacakan Kontak)
Mencatat interaksi terakhir dengan pelanggan untuk follow-up.Kategori 6: Personal (Preferensi Personal)
Kategori 7: B2B (Business-to-Business)
Field khusus untuk pelanggan korporat, retailer, dan distributor.Kategori 8: Metadata
Customer Lifecycle State Diagram
Berikut adalah diagram state machine untuk lifecycle pelanggan di SNISHOP ERP. Setiap pelanggan dimulai sebagailead dan bergerak melalui pipeline hingga menjadi customer aktif atau inactive.
Penjelasan Transisi State
Filter Status di Dashboard
Dashboard Stats
Import Flow: Detail & Fuzzy Column Matching
Proses import mendukung tiga format file dengan kemampuan fuzzy column matching — sistem mencocokkan nama kolom dari file yang diimport dengan field Customer menggunakan kata kunci sinonim (bahasa Indonesia dan Inggris).Fuzzy Column Matching — Tabel Sinonim Lengkap
Sistem menggunakan fuzzy matching untuk mengenali nama kolom dari berbagai format file. Berikut adalah pemetaan lengkap:Penanganan Duplikat
Saat import, sistem melakukan pengecekan duplikat berdasarkan:- Nomor telepon — jika sudah ada customer dengan
phoneyang sama, record di-skip. - Email — jika sudah ada customer dengan
emailyang sama, record di-skip. - Ringkasan hasil import menampilkan jumlah: berhasil, gagal (validasi), dan duplikat (di-skip).
WhatsApp Integration: Sequence Diagram
Integrasi WhatsApp di SNISHOP ERP menggunakan gateway Baileys (WhatsApp Web API). Setiap session WhatsApp disimpan di entitasWhatsAppSession dan digunakan untuk mengirim pesan ke pelanggan.
