Files
whatsapp-inbox-platform/screen-flow-whatsapp-inbox.md
Wira Basalamah adde003fba
Some checks failed
CI - Production Readiness / Verify (push) Has been cancelled
chore: initial project import
2026-04-21 09:29:29 +07:00

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 Login dengan error alert
  • account disabled -> tetap di Login dengan 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 Password menampilkan 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 Tenant bisa 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 Detail status connected
  • invalid -> tetap di Connect Channel dengan error detail

UI notes:

  • Connection Validation Result bisa 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 Detail
  • Dashboard -> subscription health widget -> Tenant Subscription List -> Tenant Detail
  • Dashboard -> 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 Inbox
  • Dashboard -> klik Agent Workload -> Team Performance Snapshot
  • Dashboard -> klik Broadcast Performance -> Campaign List atau Campaign Detail
  • Dashboard -> 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 Detail
  • Conversation Detail -> change status -> status action -> Conversation Detail
  • Conversation Detail -> add tag -> tag selector -> save -> Conversation Detail
  • Conversation Detail -> add internal note -> note input -> save -> Conversation Detail
  • Conversation 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 Detail
  • Conversation 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 Report
  • Reports Overview -> Resolution Report
  • Reports Overview -> Agent Productivity Report
  • Reports Overview -> Campaign Analytics Report
  • Reports 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 Detail
  • Billing Overview -> Billing History
  • Billing 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 Settings
  • Settings -> Business Hours Settings
  • Settings -> Auto Assignment Rules
  • Settings -> Chat Tags Management
  • Settings -> Canned Responses
  • Settings -> 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 unread
  • Dashboard -> 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 Detail
  • Agent 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:

  1. Login -> Dashboard
  2. Dashboard -> Shared Inbox -> Conversation Detail
  3. Conversation Detail -> Assign -> Reply -> Change Status
  4. Contact List -> Create Contact -> Contact Detail
  5. Campaign List -> Create Campaign -> Campaign Review -> Campaign Detail
  6. Users List -> Create User -> User Detail
  7. Super Admin Dashboard -> Tenant List -> Create Tenant -> Tenant Detail
  8. 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