> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Siklus Hidup Entitas: Status Pengguna & Bisnis

> Status dan transisi entitas Pengguna dan Bisnis Didit: pembuatan, verifikasi, ACTIVE/FLAGGED/BLOCKED, dan penghapusan. Bayar per panggilan.

Setiap entitas Pengguna dan Bisnis di Didit melewati siklus hidup yang dapat diprediksi. Memahami siklus hidup ini adalah kunci untuk merancang alur onboarding, pemantauan berkelanjutan, dan alur remediasi Anda.

## Diagram siklus hidup

```mermaid theme={null}
stateDiagram-v2
    [*] --> ACTIVE: Created (API, console, or auto from session)
    ACTIVE --> FLAGGED: Rule match / analyst review / suspicious pattern
    FLAGGED --> ACTIVE: Analyst clears / remediation completed
    ACTIVE --> BLOCKED: Manual block / blocklist match
    FLAGGED --> BLOCKED: Investigation concludes blocked
    BLOCKED --> ACTIVE: Manual unblock (analyst only)
```

## Status secara rinci

| Status | Arti | Penerapan |
| - | - | - |
| `ACTIVE` | Bawaan: entitas dalam kondisi baik | Sesi dan transaksi baru dijalankan melalui alur kerja serta aturan yang Anda konfigurasi |
| `FLAGGED` | Entitas memiliki masalah yang menunggu peninjauan | Sesi baru tetap dijalankan tetapi secara default berstatus `IN_REVIEW`; transaksi dapat dieskalasi secara otomatis, bergantung pada aturan |
| `BLOCKED` | Entitas diblokir dari platform Anda | Sesi baru ditolak secara otomatis; transaksi baru ditolak secara otomatis; tidak ada tautan sesi baru yang dapat dibuat untuk `vendor_data` ini |

> [!NOTE]
>
> Mengubah status melalui `PATCH /v3/users/{vendor_data}/update-status/` atau `PATCH /v3/businesses/{vendor_data}/update-status/` mengirim webhook (`user.status.updated` / `business.status.updated`) agar sistem hilir dapat bereaksi secara waktu nyata.

## Tahapan siklus hidup

**1. Pembuatan**

Entitas dibuat dengan salah satu dari tiga cara:

* **Dibuat otomatis** saat Anda memulai sesi dengan `vendor_data` baru. Entitas dibuat dengan status `ACTIVE`.
* **Dibuat sebelumnya melalui API** menggunakan `POST /v3/users/create/` atau `POST /v3/businesses/create/`. Statusnya secara bawaan adalah `ACTIVE`.
* **Dibuat di konsol** oleh operator kepatuhan. Status awalnya `ACTIVE` kecuali operator menentukan lain.

Setiap entitas memperoleh `uuid` yang dibuat oleh Didit dan pengenal `vendor_data` yang dimiliki oleh pelanggan.

**2. Verifikasi**

Sesi dilekatkan ke entitas melalui `vendor_data`. Setiap sesi dijalankan melalui [alur kerja](https://docs.didit.me/id/console/workflows.md) yang Anda konfigurasi: verifikasi identitas, liveness, pencocokan wajah, AML, dokumen, pencarian registri untuk KYB, dan seterusnya.

Sesi yang selesai memperbarui penghitung agregat entitas:

* `session_count`, `approved_count`, `declined_count`, `in_review_count`
* Peta `features`: status terbaru setiap fitur di seluruh sesi (misalnya `{ "id_verification": "APPROVED", "aml": "IN_REVIEW" }`)
* Kolom profil diperbarui berdasarkan sesi terbaru yang disetujui (misalnya `full_name`, `date_of_birth`, `portrait_image`).

**3. Penggunaan aktif**

Setelah entitas memiliki satu atau lebih sesi yang disetujui, Anda dapat:

* **Mengirim transaksi** yang merujuk entitas melalui `vendor_data` dalam payload transaksi
* **Menjalankan pemantauan AML berkelanjutan**: pemindaian ulang berkala terhadap daftar sanksi / PEP / media negatif
* **Melakukan verifikasi ulang sesuai jadwal**: membuat sesi baru untuk `vendor_data` yang sama pada interval rutin
* **Mengagregasi sinyal risiko** di seluruh sesi dan transaksi

**4. Perubahan status**

Perubahan status entitas terjadi secara otomatis atau manual.

**Perubahan otomatis**

* `ACTIVE → FLAGGED` saat transaksi melampaui ambang batas peninjauan atau saat aturan menambahkan entitas ke daftar pantauan.
* `ACTIVE → BLOCKED` saat biometrik wajah cocok dengan entri daftar blokir.

Sesi yang ditolak tidak memasukkan entitas ke daftar blokir, sehingga status tidak berubah. Memasukkan subjek yang ditolak ke daftar blokir adalah langkah manual: tambahkan entri dari [halaman Daftar Blokir](https://docs.didit.me/id/console/blocklist-users.md) atau [Lists API](https://docs.didit.me/id/management-api/lists/overview.md), dan entri `USER` (`vendor_data`) akan mengatur status menjadi `BLOCKED`.

**Perubahan manual** terjadi saat analis mengubah status dari konsol atau saat Anda memanggil endpoint `update-status`.

Setiap perubahan status mengirim webhook `user.status.updated` atau `business.status.updated`.

**5. Penghapusan**

Entitas dihapus melalui `POST /v3/users/delete/` atau `POST /v3/businesses/delete/` (batch). Rekaman entitas dihapus secara permanen. Menghapus Pengguna juga menghapus setiap [templat biometrik](https://docs.didit.me/id/management-api/biometric-templates/overview.md) yang masih tersimpan setelah sesi dihapus, sehingga orang tersebut tidak lagi cocok dalam deteksi duplikat dan Pencarian Wajah.

Sesi verifikasi tidak tercakup oleh endpoint ini, begitu pula transaksi. Hapus sesi dengan [Hapus Sesi](https://docs.didit.me/id/sessions-api/delete-session.md) atau [Hapus Sesi Batch](https://docs.didit.me/id/management-api/sessions/batch-delete.md); transaksi dihapus dari Konsol.

## Stempel waktu aktivitas

Entitas melacak aktivitas untuk membantu Anda mengidentifikasi profil yang sudah usang atau aktif:

| Stempel waktu | Diperbarui saat |
| - | - |
| `first_session_at` | Sesi pertama dibuat untuk entitas ini |
| `last_session_at` | Sesi terbaru dibuat atau diperbarui |
| `last_activity_at` | Terjadi perubahan apa pun: sesi, transaksi, perubahan status, atau pembaruan profil |

Gunakan stempel waktu ini untuk memfilter entitas yang tidak aktif, menjadwalkan verifikasi ulang, atau memicu pemantauan berkelanjutan.

## Peristiwa yang dikirim selama siklus hidup

| Tahap siklus hidup | Webhook yang dikirim |
| - | - |
| Pembuatan (otomatis dari sesi) | `status.updated` (sesi), `user.data.updated` atau `business.data.updated` |
| Verifikasi | `status.updated` (sesi), `data.updated` |
| Perubahan status | `user.status.updated` atau `business.status.updated` |
| Transaksi dikirim | `transaction.created` |
| Status transaksi berubah | `transaction.status.updated` |

Lihat [webhook entitas](https://docs.didit.me/id/entities/webhooks.md) untuk bentuk payload dan semantik pengiriman.

## Langkah selanjutnya

> [card] [Penautan data vendor](https://docs.didit.me/id/entities/vendor-data-linking.md)
>
> Cara `vendor_data` menghubungkan sesi, transaksi, dan entitas.

> [card] [Operasi Pengguna](https://docs.didit.me/id/entities/users/operations.md)
>
> Membuat, memperbarui, mengubah status, dan menghapus entitas Pengguna.

> [card] [Operasi Bisnis](https://docs.didit.me/id/entities/businesses/operations.md)
>
> Membuat, memperbarui, mengubah status, dan menghapus entitas Bisnis.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.