> ## 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.

# API Skrining AML: Sanksi & PEP

> Skrining pengguna via Didit di 1.300+ database sanksi global, PEP, & daftar pantauan real-time. Bayar per panggilan $0.20, tanpa kontrak.

Didit Skrining AML memeriksa seseorang secara real-time terhadap 1,300+ sumber sanksi global, PEP, dan daftar pantauan serta media negatif, lalu mengembalikan setiap kecocokan potensial dengan dua skor: skor kecocokan untuk mengetahui seberapa besar kemungkinan kecocokan tersebut adalah orang yang sama, dan skor risiko untuk mengetahui seberapa berisiko entitas yang terdaftar tersebut.

Prompt Integrasi Skrining AML
        Salin prompt ke papan klip



      
      

\<pre>

\````# Goal
Integrate Didit AML Screening (PEP, sanctions, warnings, adverse media) into your app. Pick ONE mode.

\# Mode A — Session-based
Run AML as a step inside a verification session. Decisions, ongoing monitoring, and audit history are bound to the session and surfaced in the Business Console.

1\. Add the AML feature to the workflow (Business Console or POST /v3/workflows/). Configure thresholds: aml_match_score_threshold, aml_score_approve_threshold, aml_score_review_threshold, and the weights aml_name_weight + aml_dob_weight + aml_country_weight (must sum to 100).
2\. Create a session — POST /v3/session/ with { workflow_id, vendor_data, callback }. See /sessions-api/create-session.
3\. Fetch the decision — GET /v3/session/{sessionId}/decision/ or subscribe to session.status.updated.

Decision surface: `aml_screenings[]` array on the decision payload.

\# Mode B — Standalone API (server-to-server)
Use when you want a one-shot AML check decoupled from a hosted KYC flow.

POST https://verification.didit.me/v3/aml/
x-api-key: YOUR_API_KEY
Content-Type: application/json

curl example:
\```bash
curl -X POST 'https://verification.didit.me/v3/aml/' \
-H "x-api-key: $DIDIT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"full_name": "Javier Ejemplo Modelo",
"entity_type": "person",
"date_of_birth": "1974-01-01",
"nationality": "ES",
"include_adverse_media": true,
"vendor_data": "user-1234"
}'
\```
Returns: { request_id, aml: { status, screening_id, hits: [...], warnings: [...] } }.

\# Important policy rules
\- aml_name_weight + aml_dob_weight + aml_country_weight must equal exactly 100 — request rejected with HTTP 400 otherwise.
\- include_adverse_media=true increases latency to ~25s; use a client timeout of at least 45s.
\- include_ongoing_monitoring=true keeps the entity under daily re-screening at **$0.07 per year per screened entity** (billing alert) and requires save_api_request=true (HTTP 400 otherwise). Disable from the Business Console.

\# Status enum (per aml_screenings[].status / aml.status)
"Not Started" | "In Progress" | "Approved" | "In Review" | "Declined" | "Abandoned" | "Kyc Expired"

\# Warnings (LogWarningChoices.AML)
warnings[] risk codes include:
POSSIBLE_MATCH_FOUND, MATCH_FOUND, HIGH_RISK_COUNTRY, ADVERSE_MEDIA_HIT, SANCTIONED_ENTITY, PEP_MATCH, ONGOING_MONITORING_ENABLED.
Full catalogue: /core-technology/aml-screening/warnings-aml-screening.

\# Failure modes to handle
\- HTTP 400 — weights don't sum to 100; ongoing_monitoring without save_api_request.
\- HTTP 403 — out of credits.
\- status="Declined" — at least one hit's risk_score ≥ aml_score_review_threshold and crossed the decline boundary.
\- status="In Review" — risk_score between approve and review thresholds; route to manual queue.
\- Adverse-media timeout — the upstream provider was slow; the result returns without adverse-media hits (still actionable).

\# See also
\- Canonical schema: /reference/data-models#aml-screening
\- Per-feature report: /core-technology/aml-screening/report-aml-screening
\- Risk catalogue: /core-technology/aml-screening/warnings-aml-screening
\- Ongoing monitoring: /core-technology/aml-screening/continuous-monitoring-aml-screening
\- Full integration playbook: /integration/integration-prompt````

\</pre>



      
      

Tempel ke

Pelajaran Academy tentang membaca hasil verifikasi membahas skrining AML pada menit 8:40: sanksi, PEP, dan media negatif pada sesi langsung.[Skrining AML: sanksi, PEP, dan media negatif — Didit Academy](https://www.youtube.com/embed/7htTWCWsl60?start=520\&rel=0\&playsinline=1)![Tabel sumber daftar pantauan skrining AML Didit termasuk daftar sanksi OFAC, Uni Eropa, PBB, dan daftar PEP](https://mintcdn.com/didit-0f962782/z6T2GHM4Zh-iSj-K/images/aml-list-table.jpeg?fit=max\&auto=format\&n=z6T2GHM4Zh-iSj-K\&q=85\&s=b254abf5bb564018e15588ef7c56f92e)## Konsep Kunci: Skor Kecocokan vs Skor RisikoDidit menggunakan **sistem dua skor** untuk skrining AML:### Skor Kecocokan (Keyakinan Identitas)- **Pertanyaan:** Apakah kecocokan ini adalah orang yang sama dengan orang yang sedang kita skrining?
- **Faktor:** Kesamaan nama, Tanggal Lahir, Negara/Kewarganegaraan, Nomor Dokumen
- **Tujuan:** Mengklasifikasikan kecocokan sebagai **Positif Palsu** atau **Belum ditinjau** (Kecocokan yang Mungkin)
- **Ambang batas:** Ambang Batas Skor Kecocokan (bawaan: 93)### Skor Risiko (Tingkat Risiko Entitas)- **Pertanyaan:** Seberapa berisiko entitas ini jika kecocokan tersebut benar?
- **Faktor:** Risiko negara, Kategori (PEP/Sanksi/dll.), Catatan kriminal
- **Tujuan:** Menentukan **status AML akhir** (Disetujui/Dalam Peninjauan/Ditolak)
- **Ambang batas:** Ambang Batas Persetujuan (bawaan: 80) dan Ambang Batas Peninjauan (bawaan: 100)```
┌─────────────────────────────────────────────────────────────────────────────┐
│                           AML SCREENING FLOW                                │
├─────────────────────────────────────────────────────────────────────────────┤
│                                                                             │
│  STEP 1: Screen against watchlists                                          │
│     └── Returns potential matches (match score ≥ 75% included)              │
│                                                                             │
│  STEP 2: For each match, calculate MATCH SCORE                              │
│     └── Match Score = (Name × W1) + (DOB × W2) + (Country × W3)             │
│                                                                             │
│  STEP 3: Classify match by match score                                      │
│     ├── Match Score < 93 → FALSE POSITIVE (excluded from risk)              │
│     └── Match Score ≥ 93 → UNREVIEWED (included in risk)                    │
│                                                                             │
│  STEP 4: For unreviewed matches, calculate RISK SCORE                       │
│     └── Risk Score = (Country × 30%) + (Category × 50%) + (Criminal × 20%)  │
│                                                                             │
│  STEP 5: Determine AML STATUS (highest risk score among non-FP matches)     │
│     ├── Risk Score < 86 → APPROVED                                          │
│     ├── 86 ≤ Risk Score ≤ 100 → IN REVIEW                                   │
│     └── Risk Score > 100 → DECLINED                                         │
│                                                                             │
└─────────────────────────────────────────────────────────────────────────────┘
```## Status Peninjauan KecocokanSetiap kecocokan AML diberi status peninjauan berdasarkan skor kecocokannya:| Status | Deskripsi | Kapan Ditetapkan |
| - | - | - |
| **Positif Palsu** | Kecocokan kemungkinan BUKAN orang yang sama | Skor kecocokan \< ambang batas (otomatis) |
| **Belum ditinjau** | Kecocokan adalah kecocokan potensial yang perlu ditinjau | Skor kecocokan ≥ ambang batas (otomatis) |
| **Kecocokan Dikonfirmasi** | Kecocokan telah diverifikasi sebagai orang yang sama | Diatur secara manual oleh petugas kepatuhan |
| **Tidak konklusif** | Tidak dapat menentukan apakah kecocokan adalah orang yang sama | Diatur secara manual oleh petugas kepatuhan |> [!NOTE]
>
> ### **Tips:** Anda dapat mengubah status peninjauan kecocokan di Console dengan melihat ikhtisar AML atau mengklik kecocokan tertentu untuk melihat detailnya.## Fitur Utama### 1. Ekstraksi Data Komprehensif- **Ekstraksi Akurat**: Ekstrak data dari informasi yang diberikan pengguna atau dokumen identitas menggunakan teknologi OCR canggih.
- **Logika Fuzzy**: Memperhitungkan variasi nama dan salah eja untuk memastikan pengambilan data yang komprehensif.### 2. Cakupan Daftar Pantauan yang LuasLakukan skrining terhadap beberapa kategori termasuk:- **Daftar Sanksi**: Dari badan pemerintah dan internasional.
- **Politically Exposed Person (PEP)**: Individu yang memegang jabatan publik penting.
- **Catatan Kriminal**: Termasuk database kriminal global dan lokal.
- **Pemberitaan Media Negatif**: Artikel berita dan laporan tentang kejahatan keuangan dan risiko lainnya.
- **Daftar Pantauan Kustom**: Dapat dikonfigurasi berdasarkan kebutuhan spesifik klien.### 3. Algoritma Pencocokan Canggih- **Pencocokan Fuzzy**: Menangkap variasi kecil pada nama atau detail untuk memastikan pencocokan yang akurat.
- **Banyak Titik Data**: Menggunakan nama, tanggal lahir, kewarganegaraan, dan pengenal lainnya untuk skrining menyeluruh.
- **Logika Golden Key**: Pencocokan nomor dokumen yang dapat menimpa skor untuk identifikasi definitif.### 4. Penilaian Risiko Dua SkorSetiap kecocokan menerima DUA skor:| Skor | Tujuan | Klasifikasi |
| - | - | - |
| **Skor Kecocokan** (0-100) | Apakah ini orang yang sama? | Positif Palsu vs Belum ditinjau |
| **Skor Risiko** (0-100) | Seberapa berisiko entitas ini? | Menentukan status AML akhir |**Status Tinjauan Kecocokan (berdasarkan Skor Kecocokan):**- **Positif Palsu**: Skor kecocokan di bawah ambang batas - kemungkinan besar BUKAN orang yang sama
- **Belum ditinjau**: Skor kecocokan pada atau di atas ambang batas - memerlukan peninjauan**Status AML Akhir (berdasarkan Skor Risiko tertinggi di antara kecocokan non-positif palsu):**- **Disetujui**: Semua kecocokan yang belum ditinjau memiliki skor risiko rendah
- **Dalam Peninjauan**: Setidaknya satu kecocokan yang belum ditinjau memiliki skor risiko menengah-tinggi
- **Ditolak**: Setidaknya satu kecocokan yang belum ditinjau memiliki skor risiko sangat tinggi### 5. Skrining Media Negatif TerperinciLakukan skrining terhadap berbagai kategori media negatif, termasuk:- **Kejahatan Keuangan**: Pencucian uang, penggelapan, dan lainnya.
- **Kejahatan Kekerasan**: Penyerangan, pembunuhan, dan pelanggaran terkait.
- **Terorisme**: Keterlibatan dalam atau dukungan terhadap aktivitas teroris.
- **Narkotika**: Perdagangan narkoba dan kejahatan terkait.
- **Penipuan**: Berbagai jenis penipuan dan praktik curang.
- **Pelanggaran Regulasi**: Pelanggaran terhadap persyaratan kepatuhan regulasi.### 6. Parameter Skrining yang Dapat Disesuaikan- **Sensitivitas yang Dapat Disesuaikan**: Konfigurasikan sensitivitas skrining berdasarkan selera risiko organisasi Anda.
- **Daftar Pantauan yang Dapat Disesuaikan**: Pilih daftar pantauan dan kategori mana yang akan disertakan dalam proses skrining untuk memenuhi persyaratan spesifik.### Ambang Batas yang Dapat DikonfigurasiAnda dapat menyesuaikan tingkat keamanan dengan menetapkan ambang batas yang berbeda:**Konfigurasi Skor Kecocokan:**| Pengaturan | Bawaan | Deskripsi |
| - | - | - |
| Ambang Batas Skor Kecocokan | 93 | Kecocokan di bawah ini adalah Positif Palsu, pada atau di atasnya adalah Belum ditinjau |
| Bobot Nama | 60 | Bobot untuk nama dalam skor kecocokan |
| Bobot Tanggal Lahir | 25 | Bobot untuk tanggal lahir dalam skor kecocokan |
| Bobot Negara | 15 | Bobot untuk negara dalam skor kecocokan |**Ambang Batas Skor Risiko (Status Akhir):**| Pengaturan | Bawaan | Deskripsi |
| - | - | - |
| Ambang Batas Persetujuan | 80 | Skor risiko di bawah = Disetujui |
| Ambang Batas Peninjauan | 100 | Skor risiko di atas = Ditolak; di antaranya = Dalam Peninjauan |![Ambang batas skor risiko AML Didit untuk status Disetujui, Dalam Peninjauan, dan Ditolak](https://mintcdn.com/didit-0f962782/z6T2GHM4Zh-iSj-K/images/aml-risk-score.png?fit=max\&auto=format\&n=z6T2GHM4Zh-iSj-K\&q=85\&s=297acc5d98dcd0f038597c4f2d953f46)> [!NOTE]
>
> Ambang batas ini dapat disesuaikan berdasarkan toleransi risiko dan persyaratan keamanan Anda.## Cara KerjaProses Skrining AML kami secara efisien mengidentifikasi potensi risiko sekaligus meminimalkan keterlambatan bagi pengguna yang sah.**1. Ekstraksi Data**Sistem mengekstrak informasi yang relevan baik dari data yang diberikan pengguna maupun dari dokumen identitas yang diunggah.| Masukan | Metode |
| - | - |
| **Dokumen identitas** | Teknologi OCR canggih untuk ekstraksi data yang akurat |
| **Data yang diberikan pengguna** | Input langsung (nama, tanggal lahir, kewarganegaraan, nomor dokumen) |
| **Logika fuzzy** | Memperhitungkan variasi nama dan kesalahan ejaan |**2. Skrining Daftar Pantauan**Data yang diekstrak dicocokkan silang dengan **1,300+ daftar pantauan global** dan database secara waktu nyata:- **Daftar Sanksi** — Lembaga pemerintah dan internasional (OFAC, UE, PBB, dll.)
- **Politically Exposed Person (PEP)** — Individu dengan fungsi publik terkemuka
- **Catatan Kriminal** — Database kriminal global dan lokal
- **Media Negatif** — Artikel berita dan laporan mengenai kejahatan keuangan
- **Daftar Pantauan Kustom** — Dapat dikonfigurasi berdasarkan kebutuhan Anda**3. Perhitungan Skor Kecocokan**Untuk setiap potensi kecocokan, sistem menghitung **skor keyakinan identitas** — seberapa besar kemungkinan bahwa itu adalah orang yang sama.| Faktor | Bobot Bawaan | Deskripsi |
| - | :-: | - |
| **Kemiripan nama** | 60% | Pencocokan fuzzy yang memperhitungkan variasi |
| **Tanggal Lahir** | 25% | Perbandingan tanggal lahir persis atau sebagian |
| **Negara/Kewarganegaraan** | 15% | Perbandingan negara asal |- Skor Kecocokan **di bawah ambang batas** (bawaan: 93) → diklasifikasikan sebagai **Positif Palsu**
- Skor Kecocokan **pada atau di atas ambang batas** → diklasifikasikan sebagai **Belum Ditinjau** (kemungkinan cocok)
- **Golden Key**: Kecocokan nomor dokumen dapat menetapkan skor menjadi 100% untuk identifikasi definitif**4. Perhitungan Skor Risiko**Untuk kecocokan yang bukan positif palsu, sistem menghitung **tingkat risiko** entitas:| Faktor | Bobot | Deskripsi |
| - | :-: | - |
| **Kategori** | 50% | Tingkat PEP, jenis sanksi, tingkat keparahan kriminal |
| **Risiko negara** | 30% | Peringkat risiko dari negara terkait |
| **Catatan Kriminal** | 20% | Adanya dan tingkat keparahan riwayat kriminal |**5. Penentuan Status Akhir**Berdasarkan **skor risiko tertinggi** di antara semua kecocokan yang bukan positif palsu:| Skor Risiko | Status | Tindakan |
| :-: | - | - |
| Di bawah ambang batas persetujuan | **Disetujui** | Lolos otomatis, tidak ada risiko yang kredibel |
| Di antara kedua ambang batas | **Dalam Peninjauan** | Ditandai untuk peninjauan kepatuhan manual |
| Di atas ambang batas peninjauan | **Ditolak** | Risiko tinggi, penolakan otomatis |Jika **semua** kecocokan adalah positif palsu, hasilnya adalah **Disetujui** (tidak ditemukan kecocokan yang kredibel).**6. Pembuatan Hasil**Laporan mendetail dibuat dengan transparansi penuh:- **Skor kecocokan** dan **skor risiko** dari masing-masing kecocokan beserta rinciannya
- Klasifikasi kecocokan (Positif Palsu vs. Belum Ditinjau vs. Dikonfirmasi)
- Database sumber dan detail kategori untuk setiap temuan
- Hasil dikirimkan melalui **respons API**, **webhook**, atau **Business Console**
- Pengambilan keputusan otomatis berdasarkan ambang batas skor risiko yang Anda konfigurasikan## Referensi Data Temuan AMLSetiap temuan AML yang dikembalikan dalam respons API berisi informasi mendalam tentang entitas yang cocok. Berikut adalah kolom-kolom utama dan nilai yang mungkin.### Kategori DatasetKolom `datasets` pada setiap temuan menunjukkan kategori database kepatuhan tempat entitas tersebut ditemukan. Nilai yang memungkinkan:| Nilai | Deskripsi |
| - | - |
| `PEP` | Politically Exposed Person (PEP) (umum) |
| `PEP Level 1` | Kepala negara, politisi senior, hakim mahkamah agung |
| `PEP Level 2` | Anggota parlemen, duta besar, pemimpin militer |
| `PEP Level 3` | Pejabat pemerintah daerah, pegawai negeri sipil tingkat menengah |
| `PEP Level 4` | RCA (Relatives and Close Associates / Kerabat dan Kolega Dekat) dari individu PEP |
| `Sanctions` | Daftar sanksi internasional dan nasional (OFAC, Uni Eropa, PBB, dll.) |
| `Adverse Media` | Artikel dan laporan media negatif terkait kejahatan finansial |
| `Warnings and Regulatory Enforcement` | Peringatan regulator, tindakan penegakan hukum, dan alert kepatuhan |
| `Fitness and Probity` | Registri kelayakan dan kepatutan dari regulator keuangan |
| `SIP` | Daftar Orang Berkepentingan Khusus |
| `SIE` | Daftar Entitas Berkepentingan Khusus |
| `Insolvency` | Registri insolvensi dan kebangkrutan |### Kecocokan SanksiArray `sanction_matches` berisi rincian untuk setiap daftar sanksi tempat entitas ditemukan. Kolom utama:| Kolom | Tipe | Deskripsi |
| - | - | - |
| `list_name` | `string[]` | Nama-nama daftar sanksi |
| `matched_name` | `string` | Nama sebagaimana yang tertera pada daftar sanksi |
| `description` | `string` | Deskripsi entri sanksi |
| `reason` | `string` | Alasan teks bebas mengapa entitas tersebut dijatuhi sanksi. Ini bukan enum — nilai berasal langsung dari otoritas pemberi sanksi dan menjelaskan dasar spesifik pencantuman (misalnya, "Executive Order 13224 (Terrorism)", "Support for actions undermining Ukraine's sovereignty"). |
| `legal_basis` | `string[]` | Dasar hukum sanksi |
| `sanction_program` | `string[]` | Program-program sanksi tempat entitas dicantumkan |
| `sanctioning_authority` | `string[]` | Otoritas yang memberlakukan sanksi |
| `listed_on` | `string[]` | Tanggal ketika entitas dicantumkan |
| `source_url` | `string` | URL ke sumber |### Kecocokan PeringatanArray `warning_matches` berisi rincian untuk kecocokan dari peringatan, penegakan regulasi, dan daftar terkait. Kolom `additional_data` dapat menyertakan array `data.case_details` dengan informasi kasus terstruktur.#### Tipe Kasus PeringatanKolom `case_type` di dalam `additional_data.data.case_details[]` menjelaskan sifat kasus peringatan tersebut. Nilai yang diketahui:| Nilai | Deskripsi |
| - | - |
| `Accusation` | Tuduhan atau dakwaan resmi |
| `Arrest` | Catatan penangkapan |
| `Bribery` | Kasus terkait penyuapan |
| `Criminal` | Kasus pidana umum |
| `Fraud` | Kasus terkait penipuan |
| `Illegal Fundraising` | Aktivitas penggalangan dana ilegal |
| `Non-conviction Terror` | Pencantuman terkait terorisme tanpa vonis hukum |
| `Proclaimed Offender` | Pelaku yang dinyatakan secara resmi |
| `Regulatory Enforcement` | Tindakan penegakan regulasi |
| `Terrorism` | Kasus terkait terorisme |
| `Terrorism-related` | Terkait dengan aktivitas terorisme |
| `Terrorism-related listing` | Dicantumkan sehubungan dengan terorisme |


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