14 KiB
Screen Flow WhatsApp Inbox MVP
Dokumen ini menjabarkan screen flow utama untuk WhatsApp Inbox MVP berdasarkan role dan use case paling penting.
Tujuan dokumen:
- membantu desain prototype dan wireflow
- menjelaskan urutan perpindahan layar
- menandai action, keputusan, dan state penting
- memudahkan mapping route dan prioritas build
1. Cara Membaca Dokumen
Format flow:
Screen A -> action -> Screen B -> action -> Screen C
Catatan:
- jika sebuah langkah lebih cocok sebagai modal, drawer, atau side panel, itu disebutkan di bawah flow
- jika ada kondisi berhasil/gagal, dicatat sebagai state
- fokus dokumen ini adalah MVP, bukan flow lanjutan post-MVP
2. Public / Auth Flow
2.1 Login Flow
Tujuan:
- user masuk ke sistem sesuai role dan tenant
Flow:
Login -> submit credentials -> Role-based Dashboard
Kemungkinan hasil:
- valid -> masuk dashboard sesuai role
- invalid -> tetap di
Logindengan error alert - account disabled -> tetap di
Logindengan status message
Screen terlibat:
- Login
- Dashboard Super Admin atau Dashboard Admin Client atau Dashboard Agent
2.2 Forgot Password Flow
Flow:
Login -> klik Forgot Password -> Forgot Password -> submit email -> Reset Request Sent
State:
- email valid -> tampil success info
- email tidak ditemukan -> bisa tetap tampil generic success agar aman
2.3 Reset Password Flow
Flow:
Email Reset Link -> Reset Password -> submit new password -> Login
State:
- token valid -> reset berhasil
- token expired/invalid ->
Reset Passwordmenampilkan expired state
2.4 Invitation Acceptance Flow
Flow:
Invitation Link -> Invitation Acceptance -> set full name & password -> submit -> Login atau langsung Dashboard
Catatan:
- keputusan final apakah setelah invite masuk ke login atau langsung dashboard bisa ditentukan saat desain sistem auth
3. Shared Global Flow
3.1 Open Profile Flow
Flow:
Any App Screen -> klik Profile Menu -> Profile Menu -> pilih My Profile -> My Profile
Lanjutan:
My Profile -> klik Edit Profile -> Edit Profile -> save -> My Profile
3.2 Change Password Flow
Flow:
Profile Menu -> Change Password -> submit -> success -> kembali ke screen sebelumnya atau tetap di Change Password
3.3 Unauthorized Flow
Flow:
Restricted Route -> authorization check failed -> Unauthorized / Forbidden
4. Super Admin Flow
4.1 Onboard Tenant Baru
Tujuan:
- membuat tenant baru agar siap dipakai client
Flow utama:
Super Admin Dashboard -> Tenants List -> klik Create Tenant -> Create Tenant -> submit -> Tenant Detail
Lanjutan:
Tenant Detail -> lihat invitation/admin setup status
State penting:
- sukses buat tenant
- slug sudah dipakai
- field wajib belum lengkap
UI notes:
Create Tenantbisa halaman penuh atau modal besar- setelah sukses, paling masuk akal diarahkan ke
Tenant Detail
4.2 Edit Tenant
Flow:
Tenants List -> Tenant Detail -> klik Edit Tenant -> Edit Tenant -> save -> Tenant Detail
4.3 Suspend / Reactivate Tenant
Flow:
Tenant Detail -> klik Suspend/Reactivate -> Confirmation Modal -> confirm -> Tenant Detail
State:
- status tenant berubah
- audit log tercatat
4.4 Hubungkan Channel WhatsApp Tenant
Tujuan:
- mengaktifkan channel WhatsApp tenant
Flow utama:
Tenant Detail -> tab/section Channel Status -> klik Connect Channel -> Connect Channel -> submit config -> Connection Validation Result -> Channel Detail
Kemungkinan hasil:
- valid ->
Channel Detailstatus connected - invalid -> tetap di
Connect Channeldengan error detail
UI notes:
Connection Validation Resultbisa berupa inline result state atau dedicated result screen
4.5 Monitor Kesehatan Platform
Flow:
Super Admin Dashboard -> klik alert/widget -> Channel List atau Platform Reports atau Audit Log
Contoh cabang flow:
Dashboard -> disconnected channels widget -> Channel List -> Channel DetailDashboard -> subscription health widget -> Tenant Subscription List -> Tenant DetailDashboard -> delivery failures widget -> Platform Reports
4.6 Kelola Subscription Tenant
Flow:
Super Admin Dashboard atau Subscription List -> Tenant Subscription List -> pilih tenant -> Tenant Detail atau Invoice Detail
Lanjutan:
Tenant Detail -> ubah plan -> plan update form/modal -> save -> Tenant Detail
4.7 Audit dan Investigasi Event
Flow:
Super Admin Dashboard -> Audit Log -> filter event -> Log Detail
Lanjutan lain:
Super Admin Dashboard -> API / Webhook Logs -> pilih event -> Webhook Log Detail
5. Admin Client Flow
5.1 Login dan Masuk Dashboard Harian
Tujuan:
- admin melihat kondisi operasional tenant
Flow:
Login -> Admin Dashboard
Cabang cepat dari dashboard:
Dashboard -> klik Open Conversations -> Shared InboxDashboard -> klik Agent Workload -> Team Performance SnapshotDashboard -> klik Broadcast Performance -> Campaign List atau Campaign DetailDashboard -> klik Contact Growth -> Contact List atau Contact Growth Report
5.2 Review Shared Inbox dan Distribusi Conversation
Ini flow operasional paling penting.
Flow utama:
Admin Dashboard atau Sidebar -> Shared Inbox -> pilih conversation -> Conversation Detail
Cabang aksi dari Conversation Detail:
Conversation Detail -> assign/reassign -> Assignment Panel/Modal -> save -> Conversation DetailConversation Detail -> change status -> status action -> Conversation DetailConversation Detail -> add tag -> tag selector -> save -> Conversation DetailConversation Detail -> add internal note -> note input -> save -> Conversation DetailConversation Detail -> reply -> send -> Conversation Detail
State penting:
- belum ada conversation dipilih
- inbox kosong
- channel disconnected
- outbound failed
5.3 Assign Conversation ke Agent
Flow:
Shared Inbox -> Conversation Detail -> klik Assign -> Assignment Panel -> pilih agent -> confirm -> Conversation Detail
Hasil:
- assigned user tampil di header/panel
- activity log bertambah
5.4 Ubah Status Conversation
Flow:
Conversation Detail -> Status Selector -> pilih open/pending/resolved/spam -> save -> Conversation Detail
Lanjutan:
- jika
resolved, conversation pindah ke tab/list resolved - jika
spam/archive, conversation hilang dari flow utama
5.5 Balas Pesan dari Inbox
Flow:
Shared Inbox -> Conversation Detail -> Reply Composer -> send -> Conversation Detail
Alternatif:
Conversation Detail -> Template Picker -> pilih template -> preview -> send -> Conversation DetailConversation Detail -> Quick Reply -> pilih canned response -> edit jika perlu -> send -> Conversation Detail
State:
- sending
- sent
- failed
5.6 Tambah Internal Note atau Tag
Flow note:
Conversation Detail -> Internal Notes -> add note -> save -> Conversation Detail
Flow tag:
Conversation Detail -> Tags -> add/edit tag -> save -> Conversation Detail
5.7 Tambah Contact Manual
Flow:
Contact List -> klik Add Contact -> Create Contact -> submit -> Contact Detail
State:
- nomor tidak valid
- nomor duplikat
- sukses tersimpan
5.8 Edit Contact
Flow:
Contact List -> Contact Detail -> klik Edit -> Edit Contact -> save -> Contact Detail
5.9 Import Contacts
Flow:
Contact List -> klik Import -> Import Contacts -> upload CSV -> Field Mapping -> Validation Preview -> Confirm Import -> Import Result
Kemungkinan hasil:
- semua valid -> import sukses
- sebagian gagal -> partial success + error rows
5.10 Export Contacts
Flow:
Contact List -> klik Export -> Export Contacts -> pilih filter/field -> confirm -> export result/download state
5.11 Kelola Segments
Flow buat segment:
Contact List atau Segments List -> Create Segment -> isi rules -> save -> Segment Detail
Flow edit segment:
Segments List -> Segment Detail -> Edit Segment -> save -> Segment Detail
5.12 Kelola User / Agent
Flow buat user:
Team / Users List -> klik Create User -> Create User -> submit -> User Detail atau kembali ke Users List
Flow edit user:
Users List -> User Detail -> klik Edit -> Edit User -> save -> User Detail
Flow activate/deactivate:
Users List atau User Detail -> klik Activate/Deactivate -> Confirmation Modal -> confirm -> User Detail
5.13 Review Laporan Operasional
Flow umum:
Admin Dashboard atau Sidebar -> Reports Overview -> pilih report -> Report Detail
Cabang:
Reports Overview -> Response Time ReportReports Overview -> Resolution ReportReports Overview -> Agent Productivity ReportReports Overview -> Campaign Analytics ReportReports Overview -> Contact Growth Report
Pola interaksi:
Report Detail -> set filter -> lihat chart/table -> export jika tersedia
5.14 Buat Campaign Broadcast
Ini flow operasional besar kedua setelah inbox.
Flow utama:
Campaign List -> klik Create Campaign -> Create Campaign Step 1/2/3 -> Campaign Review -> submit -> Campaign Detail
Langkah yang disarankan:
- Step 1: metadata campaign
- Step 2: pilih channel dan template
- Step 3: pilih audience
- Step 4: schedule/send now
- Review
Kemungkinan hasil:
- valid -> campaign dibuat
- template belum approved -> tetap di create flow dengan warning
- audience kosong -> tidak bisa lanjut
5.15 Monitor Hasil Campaign
Flow:
Campaign List -> pilih campaign -> Campaign Detail -> klik Recipient List -> Campaign Recipients
Lanjutan:
Campaign Detail -> klik error breakdown -> filtered recipient state atau failure detail
5.16 Kelola Template
Flow buat template:
Template List -> Create Template Request -> submit -> Template Detail
Flow lihat status template:
Template List -> pilih template -> Template Detail
Flow revisi template rejected:
Template Detail -> klik Edit/Resubmit -> Create Template Request atau Edit Template -> submit -> Template Detail
5.17 Review Billing Tenant
Flow:
Sidebar -> Billing & Subscription -> Billing Overview
Cabang:
Billing Overview -> Usage Quota DetailBilling Overview -> Billing HistoryBilling History -> Invoice Detail
5.18 Review Audit Log Tenant
Flow:
Sidebar -> Audit Log -> filter event -> Log Detail Drawer/Modal
5.19 Kelola Settings Tenant
Flow umum:
Sidebar -> Settings -> pilih submenu -> Settings Detail
Cabang:
Settings -> Tenant Profile SettingsSettings -> Business Hours SettingsSettings -> Auto Assignment RulesSettings -> Chat Tags ManagementSettings -> Canned ResponsesSettings -> Webhook / Integration Settings
6. Agent Flow
6.1 Mulai Shift dan Review Inbox
Flow:
Login -> Agent Dashboard -> klik Assigned Conversations -> My Inbox
Cabang dari dashboard:
Dashboard -> unread conversations -> My Inbox filtered unreadDashboard -> due follow-up -> My Inbox filtered pending/due
6.2 Tanggapi Percakapan Customer
Flow utama:
My Inbox -> pilih conversation -> Agent Conversation Detail -> reply -> Agent Conversation Detail
Alternatif:
Agent Conversation Detail -> canned response -> insert -> send -> Agent Conversation DetailAgent Conversation Detail -> template picker -> pilih template -> send -> Agent Conversation Detail
6.3 Tambah Note Internal atau Tag
Flow:
Agent Conversation Detail -> Internal Notes atau Tags -> add/edit -> save -> Agent Conversation Detail
6.4 Ubah Status Conversation
Flow:
Agent Conversation Detail -> Status Selector -> pilih status -> save -> Agent Conversation Detail
Kemungkinan efek:
- resolved -> muncul di
Resolved History - pending -> muncul di queue follow-up
6.5 Ambil Conversation dari Queue
Flow:
Agent Dashboard atau Sidebar -> Unassigned Queue -> pilih conversation -> preview/detail -> klik Take Assignment -> Agent Conversation Detail
Hasil:
- conversation pindah ke daftar assigned agent
6.6 Lihat Riwayat Resolved
Flow:
Agent Dashboard atau Sidebar -> Resolved History -> pilih conversation -> Agent Conversation Detail
6.7 Lihat Contact Terkait
Flow:
Agent Conversation Detail -> klik contact card -> Agent Contact Detail
Alternatif:
Sidebar -> Agent Contact List -> pilih contact -> Agent Contact Detail
6.8 Cek Performa Pribadi
Flow:
Sidebar -> My Performance -> filter date -> lihat personal stats
7. Cross-Role End-to-End Flow
7.1 End-to-End Inbound Message Flow
Ini flow paling penting dari sisi produk.
Flow lintas sistem:
Customer kirim WhatsApp -> Webhook Ingestion -> sistem create/update Contact -> sistem create/update Conversation -> Shared Inbox -> Admin/Agent buka Conversation Detail -> Reply -> status berubah -> activity log tercatat
Jika diterjemahkan ke screen:
Shared Inbox -> Conversation Detail -> Reply Composer -> send -> Conversation Detail
Pihak yang terlibat:
- customer
- sistem webhook/worker
- admin client atau agent
7.2 End-to-End Broadcast Flow
Flow lintas sistem:
Admin create campaign -> sistem validate template & audience -> campaign queued -> worker kirim bertahap -> delivery webhook masuk -> Campaign Detail update metrics
Jika diterjemahkan ke screen:
Campaign List -> Create Campaign -> Campaign Review -> Campaign Detail -> Campaign Recipients
7.3 Channel Disconnected Exception Flow
Flow:
System detects disconnected channel -> Notification/Alert -> Super Admin Dashboard atau Admin Billing/Settings area -> Channel Detail / Integration Settings -> Reconnect action -> validation result
Screen yang bisa muncul:
- dashboard alert
- channel detail
- webhook/integration settings
7.4 Template Rejected Exception Flow
Flow:
Template List -> Template Detail -> status rejected -> Edit/Resubmit -> submit -> Template Detail
7.5 Message Delivery Failed Exception Flow
Flow inbox reply:
Conversation Detail -> send reply -> failed state -> retry action atau note error -> Conversation Detail
Flow campaign:
Campaign Detail -> failed metrics -> Campaign Recipients filtered failed -> lihat failure reason
8. Rekomendasi Wireflow Prioritas
Kalau ingin dibuat ke prototype lebih dulu, urutan flow yang paling penting untuk divisualkan:
- Login -> Dashboard
- Dashboard -> Shared Inbox -> Conversation Detail
- Conversation Detail -> Assign -> Reply -> Change Status
- Contact List -> Create Contact -> Contact Detail
- Campaign List -> Create Campaign -> Campaign Review -> Campaign Detail
- Users List -> Create User -> User Detail
- Super Admin Dashboard -> Tenant List -> Create Tenant -> Tenant Detail
- Tenant Detail -> Connect Channel -> Channel Detail
9. Kesimpulan
Kalau struktur screen menjawab daftar layarnya, maka dokumen ini menjawab alur kerja user di antara layar-layar itu.
Untuk MVP ini, flow yang paling wajib matang dulu adalah:
- login
- dashboard entry
- shared inbox
- conversation handling
- contact management
- campaign creation dan monitoring
- tenant onboarding
- channel connection