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

# Metode Verifikasi Bank: Sign-in atau Account Check

> Pelajari metode Verifikasi Bank Didit: apa yang dibuktikan dan dikembalikan, serta cara memilih dan mengurutkannya per negara.

Verifikasi Bank mengonfirmasi bahwa rekening bank adalah milik orang atau perusahaan yang telah diverifikasi oleh langkah alur kerja sebelumnya. Ini adalah satu langkah alur kerja dengan dua metode: pengguna masuk ke bank mereka, atau mengetikkan detail rekening mereka dan bank mengonfirmasi nama pada rekening tersebut. Anda memilih metode mana yang ditawarkan setiap negara dan metode mana yang didahulukan.

> [!NOTE]
>
> Di lingkungan produksi, proses masuk ke bank berjalan di Nigeria dan Selandia Baru, dan pemeriksaan rekening berjalan di Nigeria, Ghana, serta Kenya.
> Negara lainnya akan dibuka seiring waktu, dan [harga Verifikasi Bank](https://docs.didit.me/id/getting-started/bank-verification-pricing.md) selalu menampilkan apa yang ditawarkan setiap negara saat ini.

> [!NOTE]
>
> Verifikasi Bank membandingkan pemilik rekening dengan identitas yang telah ditetapkan oleh **langkah lain**, sehingga fitur ini bukanlah bukti identitas yang berdiri sendiri. Tempatkan Verifikasi Identitas, Validasi Database, kuesioner, atau `expected_details` sebelum langkah ini. Pengguna tidak pernah mengetikkan nama yang diperiksa: Didit selalu membandingkan nama yang telah diverifikasi oleh sesi.

## Dua metode

| | Masuk ke bank | Pemeriksaan rekening |
| - | - | - |
| Nilai metode | `open_banking` | `account_lookup` |
| Yang dilakukan pengguna | Masuk ke bank mereka dan membagikan rekening tersebut. | Mengetikkan detail rekening: IBAN, kode sortir dan nomor rekening, CLABE, dan sebagainya. Tanpa perlu masuk ke bank. |
| Yang dibuktikan | Kendali atas rekening, ditambah pemilik yang dikembalikan oleh bank. | Nama pemilik dari bank untuk rekening tersebut cocok dengan nama yang terverifikasi. |
| Data yang ditambahkan | Saldo, transaksi, dan pendapatan, jika langkah tersebut memintanya. | Tidak ada: hanya kepemilikan. |
| Penggunaan umum | Onboarding, pinjaman, keterjangkauan, pelanggan berisiko tinggi. | Pencairan dan penarikan, onboarding minim hambatan, negara tanpa metode masuk ke bank. |

Kedua metode memberikan jenis hasil yang sama: apakah pemiliknya cocok, nama pemilik yang dikembalikan oleh bank, dan rekening yang disamarkan. Metode berbeda-beda berdasarkan negara, dan suatu negara dapat menawarkan salah satunya, keduanya, atau keduanya dalam urutan mana pun. Lihat [pemeriksaan rekening](https://docs.didit.me/id/core-technology/bank-verification/account-check.md) untuk format rekening, hasil, dan nilai sandbox-nya.

Unggahan rekening koran dan setoran mikro tetap menjadi cadangan setelah kedua metode tersebut (`bank_statement_enabled`, `bank_microdeposits_enabled`), dan pengguna selalu dapat melanjutkan tanpa bank. Setoran mikro hanya ditawarkan setelah proses masuk ke bank atau pemeriksaan rekening yang dikenai biaya dalam sesi yang sama, tanpa biaya tambahan. Unggahan rekening koran juga disertakan setelah salah satunya, dan juga dapat dilakukan tanpa upaya verifikasi bank sebelumnya, di negara mana pun. Lihat [Saat pengguna tidak dapat memverifikasi bank mereka](https://docs.didit.me/id/core-technology/bank-verification/fallbacks.md).

## Yang dilihat pengguna

Di setiap negara, pengguna memulai pada metode pertama yang ditawarkan negara tersebut. Metode kedua berfungsi sebagai cadangannya:

* **Masuk ke bank terlebih dahulu:** pemilih bank ditampilkan. Baris terakhirnya, **Masukkan detail rekening Anda**, memulai pemeriksaan rekening. Jika proses masuk ke bank gagal, baris yang sama akan muncul kembali di bawah **Cara lain untuk verifikasi**.
* **Pemeriksaan rekening terlebih dahulu:** formulir rekening terbuka, dengan tautan **Masuk ke bank Anda sebagai gantinya** di bawahnya.
* **Hanya satu metode:** pengguna hanya melihat metode tersebut.

Jika suatu negara menawarkan pemeriksaan rekening, metode ini juga menjadi cadangan bagi bank yang saat ini tidak dapat dijangkau oleh proses masuk ke bank, karena bank tersebut sedang mengalami gangguan atau tidak tersedia: pengguna diarahkan ke formulir rekening sebelum persetujuan apa pun diminta, selama mereka masih memiliki kuota pemeriksaan rekening. Metode yang tidak dilayani oleh rute mana pun di suatu negara akan dihilangkan di sana, sehingga pengguna tidak akan pernah melihat metode yang tidak dapat dijalankan. Negara yang sama sekali tidak dilayani oleh rute mana pun hanya menawarkan cadangannya dan opsi **Lanjutkan tanpa bank Anda**.

## Memilih metode per negara

### Urutan langkah

`bank_method_order` menentukan metode mana yang ditawarkan oleh langkah tersebut, dan dalam urutan apa, untuk setiap negara yang tidak menetapkan pengaturannya sendiri. Parameter ini mencantumkan `open_banking`, `account_lookup`, atau keduanya, dengan yang pertama berada di awal.

```json theme={null}
{
  "bank_method_order": ["open_banking", "account_lookup"]
}
```

Jika permintaan penyimpanan tidak menyertakan `bank_method_order`, nilainya menjadi `["open_banking", "account_lookup"]`: masuk ke bank terlebih dahulu, lalu pemeriksaan rekening sebagai cadangannya. Daftar kosong akan ditolak dengan pesan `Choose a method: bank sign-in, account check, or both.`

Urutan langkah adalah nilai default. Di negara tempat tidak ada rute yang melayani salah satu metodenya, metode tersebut akan dihilangkan, dan negara tersebut menawarkan sisanya. Negara yang dilayani oleh suatu rute tetapi dibiarkan tanpa metode oleh urutan tersebut akan ditolak saat disimpan, misalnya `Choose a method: bank sign-in, account check, or both. ARE offers account check.` Negara yang sama sekali tidak dilayani oleh rute mana pun akan tetap disimpan, hanya dengan cadangannya: lihat [Negara yang tidak dilayani oleh rute bank mana pun](https://docs.didit.me/id/core-technology/bank-verification/fallbacks.md#negara-yang-tidak-dilayani-oleh-rute-bank).

### Urutan khusus negara

`methods` pada suatu negara di dalam `bank_countries` akan menimpa urutan langkah untuk negara tersebut. Pengguna memulai pada metode pertama dan ditawari metode kedua sebagai cadangannya.

```json theme={null}
{
  "bank_method_order": ["open_banking", "account_lookup"],
  "bank_countries": {
    "GBR": { "enabled": true, "institutions": "all" },
    "NOR": {
      "enabled": true,
      "institutions": "all",
      "methods": ["open_banking"]
    },
    "MEX": {
      "enabled": true,
      "institutions": "all",
      "methods": ["account_lookup", "open_banking"]
    }
  }
}
```

Di sini, Inggris Raya mengikuti urutan langkah, Norwegia hanya menawarkan proses masuk ke bank, dan Meksiko memulai dengan pemeriksaan rekening dengan proses masuk ke bank sebagai cadangannya. Negara dengan `methods` yang disetel ke `null`, atau tanpa kunci tersebut, akan mengikuti urutan langkah. Penyimpanan akan ditolak, di bawah `bank_countries.<ISO3>`, ketika negara yang diaktifkan:

* menyetel `methods` ke daftar kosong, bahkan di negara yang tidak dilayani rute mana pun, atau
* menyebutkan metode yang tidak dilayani oleh rute mana pun di sana, misalnya `Account check is not available in NOR.`

Negara yang sama sekali tidak dilayani oleh rute mana pun tidak menyertakan `methods`, atau menyetelnya ke `null`, dan hanya menawarkan cadangannya: lihat [Negara yang tidak dilayani oleh rute bank mana pun](https://docs.didit.me/id/core-technology/bank-verification/fallbacks.md#negara-yang-tidak-dilayani-oleh-rute-bank).

### Di konsol

Pada langkah Verifikasi Bank, **Negara dan metode** mencantumkan setiap negara beserta apa yang ditawarkan oleh opsi masuk ke bank dan pemeriksaan rekening di sana, serta metode mana yang didahulukan. Prasetelnya akan mengisi setiap negara sekaligus:

| Prasetel | Urutan |
| - | - |
| Masuk ke bank, pemeriksaan rekening sebagai cadangan (bawaan) | `["open_banking", "account_lookup"]` |
| Hanya masuk ke bank | `["open_banking"]` |
| Hanya pemeriksaan rekening | `["account_lookup"]` |
| Pemeriksaan rekening, masuk ke bank sebagai cadangan | `["account_lookup", "open_banking"]` |

Prasetel tidak pernah membiarkan suatu negara tanpa metode apa pun: jika suatu negara hanya memiliki satu dari dua metode tersebut, metode itu akan tetap aktif.

## Data keuangan memerlukan login bank

Hanya proses masuk ke bank yang dapat membaca saldo, transaksi, dan pendapatan. Ketika langkah meminta data tersebut dalam `bank_scopes` dan suatu negara menawarkan pemeriksaan rekening, seseorang yang melakukan verifikasi dengan pemeriksaan rekening akan lolos tanpa data tersebut. Langkah ini tidak gagal: hasilnya mencantumkan apa saja yang tidak dikumpulkan di `financial_data.not_collected`.

```json theme={null}
"financial_data": {
  "balances": null,
  "transactions": null,
  "income": null,
  "categorization": null,
  "not_collected": ["balances", "transactions"]
}
```

`not_collected` berupa daftar kosong setiap kali metode tersebut berhasil mengumpulkan semua yang diminta oleh langkah verifikasi. Untuk mewajibkan data tersebut, tawarkan hanya opsi masuk ke bank di negara-negara tempat Anda membutuhkannya.

## Pengaturan pemeriksaan rekening

Kunci-kunci ini hanya mengatur pemeriksaan rekening. Opsi masuk ke bank menggunakan pengaturannya sendiri.

| Kolom konfigurasi | Efek |
| - | - |
| `bank_account_check_accept_close_match` | Aktif (default): nama yang dinilai bank antara `bank_partial_match_floor` dan `bank_name_match_threshold` dianggap sebagai kecocokan dekat. Pengguna mengonfirmasi nama yang tercatat di bank ketika `bank_suggest_holder_name` aktif, dan `bank_partial_match_action` yang menentukan keputusannya. Nonaktif: kecocokan dekat tersebut dianggap tidak cocok (`OWNER_NAME_MISMATCH`), diputuskan oleh `bank_no_match_action`, dan percobaan tersebut terpakai. |
| `bank_account_check_max_attempts` | Jumlah pemeriksaan rekening yang dapat dilakukan pengguna, dari `1` hingga `5`, dengan nilai `3` jika tidak disetel: berapa kali mereka dapat mengetik detail rekening untuk pemeriksaan yang dijawab oleh bank. Detail rekening yang ditolak berdasarkan data yang dimasukkan, atau pemeriksaan yang tidak dapat dijawab oleh bank, tidak menghabiskan kesempatan. |

Percobaan dihitung per metode. `bank_max_attempts` menghitung percobaan masuk ke bank, dan micro-deposit atau unggahan rekening koran juga menghabiskan salah satu dari percobaan tersebut. `bank_account_check_max_attempts` menghitung pemeriksaan rekening. Langkah ini berakhir pada `bank_attempts_exhausted_action` setelah setiap cara verifikasi yang masih ditawarkan kepada pengguna, termasuk unggahan rekening koran, telah menghabiskan seluruh percobaannya tanpa koneksi yang berhasil: lihat [Unggahan rekening koran](https://docs.didit.me/id/core-technology/bank-verification/fallbacks.md#unggahan-rekening-koran).

## Membaca metode dalam hasil

### Keputusan dan webhook

Setiap langkah Verifikasi Bank merupakan item dari `bank_verifications[]` dalam [keputusan sesi](https://docs.didit.me/id/sessions-api/retrieve-session.md#verifikasi-bank) dan di dalam objek `decision` pada [webhook `status.updated`](https://docs.didit.me/id/integration/webhooks#array-jamak-v3-penting). Nilai `method`-nya menunjukkan cara rekening diverifikasi:

| `method` | Ditampilkan sebagai |
| - | - |
| `open_banking` | Bank sign-in |
| `account_lookup` | Account check |
| `microdeposits` | Micro-deposits |
| `statement` | Statement upload |
| `none` | Continued without a bank |

`method` bernilai `null` sampai suatu rekening dievaluasi, dan bernilai `none` saat pengguna melanjutkan tanpa bank sebelum ada percobaan yang dievaluasi: lihat [Membacanya dalam hasil](https://docs.didit.me/id/core-technology/bank-verification/fallbacks.md#baca-di-hasil). Baca `method`, dan bukan `ownership.method`, untuk membedakan metode-metode tersebut: `ownership.method` merupakan perbandingan nama yang menghasilkan skor, seperti `exact` atau `fuzzy`.

```json theme={null}
{
  "bank_verifications": [
    {
      "node_id": "feature_bank_verification",
      "status": "Approved",
      "method": "account_lookup",
      "ownership": {
        "result": "match",
        "method": "exact"
      },
      "financial_data": {
        "balances": null,
        "transactions": null,
        "income": null,
        "categorization": null,
        "not_collected": []
      }
    }
  ]
}
```

Contoh ini hanya menampilkan kolom-kolom yang dibahas pada halaman ini. Setiap kolom tersedia dalam skema `SessionDecision` pada [referensi API](https://docs.didit.me/id/sessions-api/retrieve-session.md).

### Aturan alur kerja

Cabang dan aturan status kustom membaca nilai yang sama sebagai `bank.method`, yang berlabel **Bank Verification Method** di pembuat aturan, dengan nilai **Bank Sign-in**, **Account Check**, **Micro-deposits**, **Statement Upload**, dan **Continued Without a Bank**. Sebuah aturan membandingkan nilai metode tersebut, misalnya cabang setelah langkah Skrining AML yang mengirim pemeriksaan rekening dengan skor risiko tinggi ke peninjauan:

```json theme={null}
{
  "id": "account_check_high_risk",
  "rules": [
    {
      "field": "bank.method",
      "operator": "equals",
      "value": "account_lookup"
    },
    {
      "field": "aml.risk_score",
      "operator": "greater_than",
      "value": 70
    }
  ],
  "logic": "and",
  "goto": "status_in_review"
}
```

### Laporan sesi

Laporan PDF sesi mencantumkan nama metode tersebut pada baris **Metode verifikasi** miliknya.

## Node yang disimpan sebelum adanya metode

`bank_open_banking_enabled` dan `bank_account_lookup_enabled` telah dipensiunkan. Node yang disimpan sebelum `bank_method_order` ada kini berjalan dengan urutan yang ditentukan oleh kedua sakelar tersebut:

| `bank_open_banking_enabled` | `bank_account_lookup_enabled` | Node berjalan dengan |
| - | - | - |
| Aktif atau belum disetel | Nonaktif atau belum disetel | `["open_banking"]` |
| Aktif atau belum disetel | Aktif | `["open_banking", "account_lookup"]` |
| Nonaktif | Aktif | `["account_lookup"]` |

Jika pemeriksaan rekening aktif berdampingan dengan masuk ke bank, pengguna kini melihatnya sebagai cadangan di pemilih bank, **Masukkan detail rekening Anda**, tidak hanya ketika bank mereka sedang mengalami gangguan. Node dengan kedua sakelar nonaktif, yang hanya menawarkan micro-deposit atau unggahan rekening koran, dibiarkan apa adanya; penyimpanan di kemudian hari harus mengaktifkan setidaknya salah satu dari kedua metode tersebut.

Selama satu rilis, penyimpanan yang tidak mengirimkan `bank_method_order` tetapi mengirimkan salah satu sakelar tetap akan menetapkan urutan dari sakelar tersebut. Setiap penyimpanan menulis kembali kedua sakelar untuk menunjukkan apakah ada negara yang menawarkan masuk ke bank dan apakah ada negara yang menawarkan pemeriksaan rekening. Gunakan `bank_method_order` dan `bank_countries.<ISO3>.methods` pada integrasi baru.

## Harga

Setiap metode ditagihkan dengan harganya masing-masing, per negara. Lihat [harga Verifikasi Bank](https://docs.didit.me/id/getting-started/bank-verification-pricing.md) untuk harga di setiap negara.

* **Masuk ke bank** memiliki harganya sendiri, dan add-on saldo serta transaksi masing-masing menambahkan biayanya sendiri.
* **Pemeriksaan rekening** ditagihkan satu kali per pemeriksaan yang dijawab oleh bank: cocok, kecocokan dekat, tidak cocok, rekening yang tidak dapat diverifikasi, dan rekening yang tidak ditemukan. Detail rekening yang ditolak berdasarkan data yang dimasukkan tidak pernah ditagihkan.

Jika suatu negara menawarkan kedua metode tersebut, sebuah sesi dapat dikenakan salah satu harga, bergantung pada metode yang digunakan oleh pengguna. Unggahan rekening koran dan micro-deposit sudah termasuk tanpa biaya tambahan setelah percobaan yang dikenakan biaya. Unggahan rekening koran tanpa percobaan bank sebelumnya dikenakan biaya \$0.20, dan melanjutkan tanpa bank tidak pernah ditagihkan: lihat [Harga](https://docs.didit.me/id/core-technology/bank-verification/fallbacks.md#harga). [API pemeriksaan rekening](https://docs.didit.me/id/standalone-apis/bank-account-check.md) menjalankan pemeriksaan yang sama dari backend Anda, tanpa sesi, dengan harga pemeriksaan rekening yang sama.

## Uji coba di sandbox

Aplikasi sandbox melayani kedua metode di setiap negara, sesuai urutan yang ditentukan oleh langkah verifikasi, dan tidak membebankan biaya apa pun. Dengan urutan default, pengguna memulai dari proses masuk ke bank dan memilih **Masukkan detail rekening Anda** untuk menjalankan pemeriksaan rekening. Untuk memulai langsung dari pemeriksaan rekening, atur `bank_method_order` ke `["account_lookup", "open_banking"]`. Empat karakter terakhir dari nomor rekening menentukan jawaban pemeriksaan rekening: lihat [Uji coba di sandbox](https://docs.didit.me/id/core-technology/bank-verification/account-check.md#uji-di-sandbox).

## Terkait

* [Pemeriksaan rekening](https://docs.didit.me/id/core-technology/bank-verification/account-check.md): format rekening, hasil, dan nilai sandbox.
* [Ketika pengguna tidak dapat memverifikasi bank mereka](https://docs.didit.me/id/core-technology/bank-verification/fallbacks.md): opsi cadangan, Lanjutkan tanpa bank Anda, dan hasilnya.
* [API pemeriksaan rekening](https://docs.didit.me/id/standalone-apis/bank-account-check.md): periksa rekening pembayaran dari backend Anda, tanpa sesi.
* [Kunci konfigurasi Verifikasi Bank](https://docs.didit.me/id/management-api/workflows/feature-configs.md#verifikasi-bank): setiap kunci untuk langkah ini.
* [Pengujian sandbox](https://docs.didit.me/id/integration/sandbox-testing.md).


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