Account Lifecycle
Siklus akun — dari registrasi, aktivasi, sampai penghapusan.
stateDiagram-v2
[*] --> Registered: Sign up (email + phone)
state Registered {
[*] --> Active: Login & verify
}
state Active {
[*] --> CustomerMode: Default mode
[*] --> DBMode: Toggle ke DB
CustomerMode --> DBMode: Toggle
DBMode --> CustomerMode: Toggle
}
Active --> ForgotPassword: Lupa password
ForgotPassword --> Active: Reset password sukses
Active --> Deactivated: Deactivate account
Deactivated --> Active: Reactivate (data tetap ada)
Active --> DeleteRequest: Delete account
DeleteRequest --> Deleted: Permanent removal
Deleted --> [*]: Data permanently removed<br/>Cannot be undone
state InactivityPolicy {
Inactive6mo --> EmailReminder
EmailReminder --> LoggedIn: Login → kembali aktif
EmailReminder --> NoLogin: No login 6+ bln lagi
NoLogin --> PermanentDelete: Akun dihapus +<br/>saldo hangus
}
Active --> Inactive6mo: No activity 6 months
Catatan: User bisa punya dual-role (Customer & DB) dalam satu akun Send App. Merchant punya app terpisah (SendMerchant).