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

# Skor Kecocokan AML: Formula Keyakinan Identitas

> Skor kecocokan AML Didit mengukur keyakinan identitas via nama, tanggal lahir, dan negara. Atur ambang batas untuk memangkas positif palsu.

**Skor Kecocokan** adalah metrik keyakinan berbobot yang menentukan **seberapa cocok kecocokan AML potensial dengan individu yang menjalani skrining**. Skor ini digunakan untuk mengklasifikasikan kecocokan individual sebagai **Positif Palsu** atau **Kecocokan yang Mungkin** yang memerlukan peninjauan lebih lanjut.

![Konfigurasi skor kecocokan AML Didit yang menampilkan ambang batas berbobot untuk nama, tanggal lahir, dan negara](https://mintcdn.com/didit-0f962782/z6T2GHM4Zh-iSj-K/images/aml-match-score-config.jpg?fit=max\&auto=format\&n=z6T2GHM4Zh-iSj-K\&q=85\&s=76d3124f99349a81e16e711f3d2816e6)

> ⚠️ **Penting:** Skor Kecocokan menentukan **klasifikasi kecocokan individual**, BUKAN status AML akhir. Status AML akhir (Disetujui/Dalam Peninjauan/Ditolak) ditentukan oleh [Skor Risiko](https://docs.didit.me/id/core-technology/aml-screening/aml-risk-score.md) dari kecocokan yang bukan positif palsu.

## Gambaran Umum

Saat melakukan skrining seseorang terhadap daftar pantauan AML, setiap potensi kecocokan menerima **skor kecocokan dari 0-100**. Skor ini menjawab pertanyaan: **"Apakah kecocokan ini benar-benar merujuk pada orang yang sama dengan yang kita skrining?"**

### Skor Kecocokan vs Skor Risiko

| Aspek | Skor Kecocokan | Skor Risiko |
| - | - | - |
| **Pertanyaan** | Apakah ini orang yang sama? | Seberapa berisiko entitas ini? |
| **Tujuan** | Klasifikasikan kecocokan sebagai Positif Palsu vs Kecocokan yang Mungkin | Tentukan status AML akhir |
| **Faktor** | Nama, Tanggal Lahir, Negara, Nomor Dokumen | Negara, Kategori, Catatan Kriminal |
| **Ambang batas** | Ambang Batas Skor Kecocokan (default: 93) | Ambang Batas Disetujui / Ambang Batas Peninjauan |

***

## Cara Skor Kecocokan Menentukan Status Peninjauan

Setiap kecocokan diklasifikasikan berdasarkan skor kecocokannya:

| Skor Kecocokan | Status Peninjauan | Arti |
| - | - | - |
| Skor di bawah Ambang Batas Skor Kecocokan | **Positif Palsu** | Kecocokan kemungkinan BUKAN orang yang sama |
| Skor pada atau di atas Ambang Batas Skor Kecocokan | **Belum ditinjau** | Kecocokan memerlukan peninjauan manual |

> **Ambang batas default:** 93%

**Contoh:** Dengan ambang batas 93:

* Kecocokan dengan skor 85 → **Positif Palsu** (diabaikan otomatis)
* Kecocokan dengan skor 95 → **Belum ditinjau** (perlu ditinjau, skor risiko menentukan urgensi)

### Penjelasan Status Peninjauan

Semua kecocokan AML dimulai dengan salah satu dari dua status awal berdasarkan skor kecocokannya:

| Status | Deskripsi | Kapan Ditetapkan |
| - | - | - |
| **Positif Palsu** | Kecocokan kemungkinan besar BUKAN orang yang sama dengan individu yang menjalani skrining. Dikecualikan dari penilaian risiko. | Skor kecocokan \< ambang batas |
| **Belum ditinjau** | Kecocokan merupakan kemungkinan kecocokan yang memerlukan peninjauan manual untuk mengonfirmasi atau mengabaikan. | Skor kecocokan ≥ ambang batas |

Setelah peninjauan manual, petugas kepatuhan dapat memperbarui status menjadi:

| Status | Deskripsi |
| - | - |
| **Kecocokan Dikonfirmasi** | Kecocokan telah diverifikasi sebagai orang yang sama. |
| **Tidak konklusif** | Tidak dapat menentukan apakah kecocokan tersebut adalah orang yang sama. |

> [!NOTE]
>
> ### **Tip:** Anda dapat mengubah status peninjauan kecocokan di Console dengan melihat gambaran umum AML atau mengklik kecocokan tertentu untuk melihat detailnya.

***

## Cara Skor Kecocokan Dihitung

### Langkah 1: Perhitungan Skor Dasar

Skor dasar dihitung menggunakan tiga komponen dengan bobot yang dapat dikonfigurasi:

```
Base Score = (Name Score × Name Weight) + (DOB Score × DOB Weight) + (Country Score × Country Weight)
```

| Komponen | Bobot Default | Deskripsi |
| - | - | - |
| **Nama** | 60% | Kemiripan string secara fuzzy antara nama individu yang diskrining dan nama pada kecocokan |
| **Tanggal Lahir** | 25% | Penilaian kecocokan persis, sebagian (hanya tahun), atau tidak cocok |
| **Negara/Kewarganegaraan** | 15% | Perbandingan antara kewarganegaraan yang diskrining dan negara kecocokan |

> **Catatan:** Total bobot harus selalu berjumlah 100%.

### Langkah 2: Logika "Golden Key" Nomor Dokumen

Setelah menghitung skor dasar, nomor dokumen dievaluasi secara terpisah menggunakan logika penggantian khusus:

| Skenario | Efek | Contoh |
| - | - | - |
| **Cocok** | Ganti skor menjadi **100** | Nomor paspor sama persis |
| **Netral** | Pertahankan skor dasar tanpa perubahan | Jenis dokumen berbeda, atau salah satu nomor dokumen tidak ada |
| **Ketidakcocokan Keras** | Terapkan penalti (-50 poin) | Jenis dokumen sama tetapi nilainya berbeda |

Pendekatan ini mengakui bahwa nomor dokumen yang cocok adalah bukti identitas definitif ("Golden Key"), sedangkan jenis dokumen yang tidak cocok tidak boleh mengurangi skor.

***

## Detail Penilaian Komponen

### Kemiripan Nama (0-100)

Pencocokan nama menggunakan **algoritma WRatio** dari RapidFuzz, yang tangguh terhadap:

* Salah ketik dan kesalahan ejaan
* Perbedaan urutan kata ("John Smith" vs "Smith, John")
* Variasi nama tengah ("Robert J. Smith" vs "Robert James Smith")
* Perbedaan panjang nama

### Penilaian Tanggal Lahir

| Skenario | Skor | Contoh |
| - | - | - |
| **Pencocokan Persis** | 100% | "1985-03-15" cocok dengan "1985-03-15" |
| **Kecocokan Tahun (data hanya tahun)** | 100% | "1985-03-15" cocok dengan "1985" — kecocokan penuh karena data hanya menyediakan presisi tingkat tahun |
| **Kecocokan Tahun (beda hari/bulan)** | 50% | "1985-03-15" cocok dengan "1985-06-20" — tahun sama tetapi tanggal berbeda |
| **Tahun Tidak Cocok** | -100% (penalti) | "1985-03-15" tidak cocok dengan "1990-03-15" |
| **Tidak Ada Data** | 0% (netral) | Salah satu pihak tidak memiliki tanggal lahir |

> **Penting:** Jika data kecocokan hanya menyediakan tahun (misalnya, "1974"), mencocokkan tahun tersebut dihitung sebagai **kecocokan penuh** karena hanya informasi itu yang tersedia untuk diverifikasi.

### Penilaian Negara/Kewarganegaraan

| Skenario | Skor | Contoh |
| - | - | - |
| **Pencocokan Persis** | 100% | "ES" cocok dengan "Spain" atau "ESP" |
| **Tidak Ada Data pada Kecocokan** | 0% (netral) | Data kecocokan tidak memiliki informasi negara |
| **Tidak Cocok** | -50% (penalti) | "ES" tidak cocok dengan "France" |

Sistem secara otomatis mengonversi antara:

* Kode ISO alpha-2 (ES)
* Kode ISO alpha-3 (ESP)
* Nama lengkap negara (Spain)

Sistem juga memeriksa kolom `citizenship` selain `countries`.

***

## Normalisasi Skor (Pembobotan Ulang)

Ketika data tidak tersedia untuk orang yang menjalani skrining atau kecocokan, sistem menggunakan **normalisasi skor** untuk menghindari penalti akibat informasi yang tidak tersedia.

### Contoh: Skrining Hanya Nama

Jika Anda melakukan skrining hanya dengan nama (tanpa tanggal lahir atau negara):

| Bobot Asli | Bobot Dinormalisasi |
| - | - |
| Nama: 60% | Nama: **100%** |
| Tanggal Lahir: 25% | Tanggal Lahir: 0% (tidak dapat dibandingkan) |
| Negara: 15% | Negara: 0% (tidak dapat dibandingkan) |

**Hasil:** Skor nama menjadi keseluruhan skor kecocokan.

### Contoh: Negara Tidak Ada pada Kecocokan

Jika data kecocokan tidak memiliki data negara tetapi memiliki tanggal lahir:

| Bobot Asli | Bobot Dinormalisasi |
| - | - |
| Nama: 60% | Nama: **70.6%** |
| Tanggal Lahir: 25% | Tanggal Lahir: **29.4%** |
| Negara: 15% | Negara: 0% (tidak dapat dibandingkan) |

Hal ini memastikan penilaian yang adil terlepas dari ketersediaan data.

***

## Opsi Konfigurasi

Anda dapat menyesuaikan perhitungan skor kecocokan melalui API atau pengaturan alur kerja:

### Ambang Batas Skor Kecocokan

| Pengaturan | Default | Deskripsi |
| - | - | - |
| Ambang Batas Skor Kecocokan | 93 | Kecocokan di bawah ambang batas ini diklasifikasikan sebagai **Positif Palsu**. Kecocokan yang mencapai atau melebihi ambang batas ini berstatus **Belum ditinjau** (Kemungkinan Kecocokan) dan memerlukan peninjauan. |

### Bobot (total harus 100)

| Pengaturan | Default | Deskripsi |
| - | - | - |
| Bobot Nama | 60 | Bobot untuk kemiripan nama (0-100) |
| Bobot Tanggal Lahir | 25 | Bobot untuk tanggal lahir (0-100) |
| Bobot Negara | 15 | Bobot untuk negara/kewarganegaraan (0-100) |

***

## Contoh Permintaan API

```json theme={null}
{
  "full_name": "John Doe",
  "date_of_birth": "1990-01-01",
  "nationality": "USA",
  "document_number": "SAMPLE-DOC-12345",
  "aml_name_weight": 60,
  "aml_dob_weight": 25,
  "aml_country_weight": 15,
  "aml_match_score_threshold": 93
}
```

***

## Respons: Rincian Skor

Setiap kecocokan dalam respons menyertakan:

* `match_score` — Skor kecocokan yang dihitung (0-100)
* `risk_score` — Skor risiko yang dihitung (0-100) - lihat [Skor Risiko](https://docs.didit.me/id/core-technology/aml-screening/aml-risk-score.md)
* `review_status` — "Positif Palsu" atau "Belum ditinjau" berdasarkan ambang batas skor kecocokan
* `score_breakdown` — Rincian mendalam dari perhitungan skor kecocokan

```json theme={null}
{
  "caption": "David Sanchez",
  "match_score": 95,
  "risk_score": 65.5,
  "review_status": "Unreviewed",
  "score_breakdown": {
    "name_score": 95,
    "name_weight": 60,
    "name_weight_normalized": 70.59,
    "name_contribution": 67.06,
    "dob_score": 100,
    "dob_weight": 25,
    "dob_weight_normalized": 29.41,
    "dob_contribution": 29.41,
    "country_score": 0,
    "country_weight": 15,
    "country_weight_normalized": 0,
    "country_contribution": 0,
    "document_number_match_type": "NEUTRAL",
    "document_number_effect": "No document number provided for screening",
    "total_score": 95
  }
}
```

***

## Alur Lengkap: Dari Skor Kecocokan ke Status AML Akhir

```
┌─────────────────────────────────────────────────────────────────────────────┐
│                           AML SCREENING FLOW                                 │
├─────────────────────────────────────────────────────────────────────────────┤
│                                                                             │
│  1. RETRIEVE MATCHES FROM WATCHLISTS                                        │
│     └── All matches with score ≥ 75% are included                           │
│                                                                             │
│  2. CALCULATE MATCH SCORE FOR EACH MATCH                                    │
│     Match Score = (Name × W1) + (DOB × W2) + (Country × W3)                │
│     + Golden Key document number logic                                      │
│                                                                             │
│  3. CLASSIFY MATCHES BY MATCH SCORE (Match Score Threshold = 93)           │
│     ├── Match Score < 93 → FALSE POSITIVE (excluded from risk assessment)  │
│     └── Match Score ≥ 93 → UNREVIEWED (included in risk assessment)        │
│                                                                             │
│  4. CALCULATE RISK SCORE FOR NON-FALSE-POSITIVE MATCHES                     │
│     Risk Score = (Country × 30%) + (Category × 50%) + (Criminal × 20%)     │
│                                                                             │
│  5. DETERMINE FINAL AML STATUS (based on highest risk score)               │
│     ├── Highest Risk Score < approve_threshold → APPROVED                   │
│     ├── Highest Risk Score ≤ review_threshold → IN REVIEW                   │
│     └── Highest Risk Score > review_threshold → DECLINED                    │
│                                                                             │
└─────────────────────────────────────────────────────────────────────────────┘
```

***

## Contoh Perhitungan

### Contoh 1: Kecocokan Kuat → Belum ditinjau

**Data yang Diskrining:**

* Nama: "Robert J. Smith"
* DOB: "1985-03-15"
* Negara: "US"

**Data Kecocokan:**

* Nama: "Robert James Smith"
* DOB: "1985"
* Negara: "United States"

**Perhitungan:**

1. Skor Nama: 90% (pencocokan fuzzy)
2. Skor DOB: 100% (data kecocokan hanya memiliki tahun, dan tahunnya cocok)
3. Skor Negara: 100% (kecocokan persis)

```
Match Score = (90 × 0.60) + (100 × 0.25) + (100 × 0.15)
            = 54 + 25 + 15
            = 94
```

**Hasil:** Skor Kecocokan (94) ≥ ambang batas (93) → **Belum ditinjau**
→ Skor risiko akan dihitung dan digunakan untuk status AML akhir

### Contoh 2: Kecocokan Lemah → Positif Palsu

**Data yang Diskrining:**

* Nama: "John Smith"
* DOB: "1990-05-20"
* Negara: "US"

**Data Kecocokan:**

* Nama: "Johnny Smithson"
* DOB: "1975"
* Negara: "Canada"

**Perhitungan:**

1. Skor Nama: 72% (pencocokan fuzzy yang lemah)
2. Skor DOB: -100% (penalti ketidakcocokan tahun)
3. Skor Negara: -50% (penalti ketidakcocokan negara)

```
Match Score = (72 × 0.60) + (-100 × 0.25) + (-50 × 0.15)
            = 43.2 - 25 - 7.5
            = 10.7 → 11
```

**Hasil:** Skor Kecocokan (11) \< ambang batas (93) → **Positif Palsu**
→ Kecocokan ini dikecualikan dari penilaian risiko

### Contoh 3: Override Golden Key

**Data yang Diskrining:**

* Nama: "John D. Smith"
* Nomor Dokumen: "A12345678"

**Data Kecocokan:**

* Nama: "Jonathan David Smith"
* Nomor Dokumen: "A12345678"

**Perhitungan:**

1. Skor Dasar: \~70 (pencocokan fuzzy nama)
2. Nomor Dokumen: **COCOK** (kecocokan persis)

**Hasil:** Skor ditimpa menjadi **100** (kecocokan Golden Key) → **Belum ditinjau**

***

## Mengelola Status Peninjauan

Setelah klasifikasi awal, Anda dapat memperbarui status peninjauan setiap kecocokan secara manual:

### Di Console

1. Buka ringkasan AML sesi
2. Klik kecocokan tertentu untuk melihat detailnya
3. Gunakan menu tarik-turun status untuk mengubah status peninjauan:
   * **Kecocokan Dikonfirmasi** — Pastikan bahwa kecocokan tersebut merujuk pada orang yang sama
   * **Positif Palsu** — Tandai kecocokan sebagai tidak cocok
   * **Tidak dapat disimpulkan** — Tidak dapat ditentukan

***

## Praktik Terbaik

1. **Mulai dengan ambang batas default (93)** — Hal ini memberikan keseimbangan yang baik antara menemukan kecocokan yang benar dan memfilter positif palsu.

2. **Turunkan ambang batas untuk skenario berisiko tinggi** — Jika Anda perlu lebih berhati-hati, turunkan Ambang Batas Skor Kecocokan untuk mendeteksi lebih banyak potensi kecocokan.

3. **Gunakan nomor dokumen jika tersedia** — Nomor dokumen memberikan konfirmasi identitas terkuat dan dapat menimpa skor kecocokan yang rendah.

4. **Tinjau bobot yang dinormalisasi** — Periksa kolom bobot yang dinormalisasi pada rincian skor untuk memahami bagaimana data yang hilang memengaruhi skor.

5. **Pantau tingkat positif palsu** — Jika terlalu banyak kecocokan yang sah ditandai sebagai positif palsu, turunkan ambang batas.


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