Ikhtisar
Peringatan pada laporan verifikasi identitas menandai setiap kondisi yang ditemukan Didit saat membaca dan memvalidasi dokumen. Peringatan tersebut masuk ke arraywarnings[] pada setiap item id_verifications[] (lihat Laporan verifikasi identitas), dengan struktur yang dijelaskan dalam Model data: objek Peringatan: feature, risk, additional_data, log_type, short_description, long_description, node_id.
Setiap peringatan memiliki tiga lapisan:
- Kode
risk: pengenal yang stabil dan dapat Anda cocokkan dalam kode Anda. log_type: diturunkan dari tindakan yang dikonfigurasi untuk risiko tersebut saat evaluasi. Tolak →error, Tinjau →warning, selain itu →information.- Dampak keputusan: ditetapkan oleh grup risiko yang dapat dikonfigurasi pada alur kerja. Kode
riskyang sama dapat diarahkan ke Setujui, Tinjau, atau Tolak tergantung pada cara aplikasi Anda dikonfigurasi.
Kondisi penolakan otomatis
Dalam alur kerja, risiko berikut selalu memaksa laporan verifikasi identitas (dan sesi) menjadiDeclined. Risiko ini tidak dapat dikonfigurasi:
Untuk API OCR mandiri, kumpulan penolakan tanpa syarat adalah
DOCUMENT_EXPIRED, MINIMUM_AGE_NOT_MET, PORTRAIT_IMAGE_NOT_DETECTED, SCREEN_CAPTURE_DETECTED, PRINTED_COPY_DETECTED, PORTRAIT_MANIPULATION_DETECTED, dan PUBLIC_DOCUMENT_IMAGE_DETECTED. Dalam alur kerja, usia minimum dapat dikonfigurasi (default Tolak), dan ketiga risiko liveness dokumen ditentukan berdasarkan ambang batas (lihat di bawah).
Risiko yang dapat dikonfigurasi pada API tersebut menggunakan DECLINE atau NO_ACTION, bukan hasil Tinjauan, sebagai parameter permintaan. Satu-satunya hasil Tinjauan yang dapat dikembalikan API ini tidak dapat dikonfigurasi: ketika pemeriksaan liveness dokumen yang diminta tidak menghasilkan skor yang dapat digunakan, responsnya adalah In Review dengan peringatan DOCUMENT_LIVENESS_NOT_COMPUTED (lihat Liveness dokumen).
Pengaturan verifikasi yang dapat dikonfigurasi
Di konsol Didit, sisa risiko ID dikelompokkan ke dalam pengaturan yang memungkinkan Anda menetapkan tindakan ke Setujui, Tinjau, atau Tolak (per alur kerja, dan per node pada alur kerja graf):
Risiko duplikat Tangkapan senyap dan risiko daftar blokir berasal dari Pencarian Wajah pada swafoto yang diambil saat pengambilan dokumen. Pencarian berjalan selama Pencarian wajah Tangkapan senyap (
document_selfie_face_search_enabled) aktif, yang merupakan default, dan Pencarian Wajah tidak dimatikan pada langkah Liveness. Jika tidak, keenam risiko ini tidak akan dimunculkan.
Dua keluarga risiko ID bersifat berbasis ambang batas, bukan sakelar Setujui/Tinjau/Tolak:
- Liveness dokumen:
SCREEN_CAPTURE_DETECTED,PRINTED_COPY_DETECTED,PORTRAIT_MANIPULATION_DETECTED. Setiap jenis penipuan memiliki ambang batas tolak dan peninjauan sendiri: skor di bawah ambang tolak →error+ Ditolak; di bawah ambang peninjauan →warning+ Dalam peninjauan; selain ituinformation. - Pencocokan wajah lintas kamera:
LOW_FRONT_CAMERA_FACE_MATCH_SIMILARITY, diatur olehdocument_selfie_portrait_match_decline_threshold/document_selfie_portrait_match_review_threshold.
Mengonfigurasi ambang batas liveness dokumen
Di editor alur kerja, ambang batas ini berada pada tab Pemalsuan pada langkah Verifikasi Identitas, dengan satu kartu untuk setiap jenis penipuan: Penggantian potret, Salinan cetak, dan Tangkapan layar. Setiap pemeriksaan memberi dokumen skor dari0 sampai 100 yang menunjukkan seberapa asli tampilannya. Skor yang lebih tinggi berarti dokumen lebih mungkin asli. Dua nilai pada sebuah kartu membagi skala ini menjadi tiga rentang:
Menaikkan salah satu nilai membuat pemeriksaan lebih ketat: lebih banyak sesi masuk ke rentang di atasnya. Menurunkan nilai membiarkan lebih banyak sesi lolos. Di editor, nilai Tolak tidak dapat melewati nilai Tinjauan. Melalui API, nilai Tolak yang lebih tinggi dari nilai Tinjauan menghapus rentang Dalam peninjauan.
Default platform, yang digunakan saat alur kerja tidak menetapkan nilai:
Mulailah dari default dan ubah satu nilai setiap kali. Setiap kartu menampilkan default-nya dan tombol Atur ulang ke default, jadi Anda selalu dapat kembali ke nilai tersebut. Editor juga memperingatkan Anda tentang konfigurasi berikut:
- Peninjauan di
100. Hanya skor sempurna yang lolos, sehingga hampir setiap sesi masuk dalam peninjauan atau ditolak. - Tolak di
100. Hanya skor sempurna yang terhindar dari penolakan, sehingga hampir setiap sesi ditolak. - Kedua nilai di
0. Tidak ada skor yang akan ditandai, sehingga pemeriksaan secara efektif nonaktif.
SCREEN_CAPTURE_DETECTED yang dilaporkan.
Pencocokan wajah lintas kamera menggunakan gagasan yang sama dengan satu perbedaan pada batas: skor yang sama dengan ambang batas peninjauannya tetap masuk ke Dalam peninjauan.
Empat risiko ID tidak dapat dikonfigurasi dan tidak bergantung pada ambang batas. POSSIBLE_FRONT_CAMERA_FACE_IN_BLOCKLIST selalu diarahkan ke Tinjauan: swafoto yang mirip dengan wajah dalam daftar blokir, tanpa menjadi kecocokan yang terkonfirmasi, harus dinilai oleh manusia, tidak pernah ditolak secara otomatis dan tidak pernah diabaikan. BARCODE_SIGNATURE_INVALID selalu diarahkan ke Tinjauan. Peringatan ini hanya muncul ketika barcode memuat tanda tangan otoritas penerbit yang gagal verifikasi kriptografis, sehingga tidak ada konfigurasi yang dapat mengabaikan pemalsuan yang terbukti. DOCUMENT_BACK_SIDE_NOT_AVAILABLE selalu berupa informasi dan tidak pernah memengaruhi keputusan: peringatan ini menunjukkan keterbatasan katalog dokumen Didit, bukan karakteristik dokumen yang diserahkan, sehingga tidak ada konfigurasi yang dapat menolak atau meninjau pemegang dokumen yang sah.
FRONT_CAMERA_CAPTURED_DOCUMENT selalu diarahkan ke Tinjauan.
Peringatan ini hanya muncul ketika bingkai kamera depan yang diambil saat dokumen dipindai menampilkan dokumen identitas dan tidak ada orang, sehingga pengambilan yang tidak menunjukkan siapa pemegang dokumen selalu ditinjau oleh manusia.
Peringatan ini diperiksa setiap kali pencocokan swafoto dengan foto dokumen (is_document_selfie_portrait_match_enabled) aktif.
Peringatan yang dihasilkan
Diverifikasi terhadapcollect_ocr_logs, alur pengambilan dokumen, dan process_ocr_logs_and_get_status. Deskripsi singkat di bawah adalah string short_description persis yang dikembalikan oleh API.
Pengenalan dan kualitas dokumen
Alur pengambilan juga dapat menolak unggahan dengan kode umpan balik
IMAGE_RESOLUTION_TOO_LOW, DOCUMENT_NOT_FULLY_VISIBLE, IMAGE_QUALITY_TOO_LOW, dan DOCUMENT_OCCLUSION_DETECTED (jari atau objek dinilai menutupi teks cetak secara fisik). Setiap kode memicu permintaan pengambilan ulang di SDK dan dicatat pada laporan sebagai risiko tersendiri, yang diarahkan oleh pengaturan Image Quality. DOCUMENT_OCCLUSION_DETECTED dan IMAGE_QUALITY_TOO_LOW berbagi satu tindakan. Kode-kode ini menggambarkan pengambilan: pengambilan ulang yang berhasil akan menghapus peringatan. Apakah kolom yang tertutup seharusnya memengaruhi keputusan adalah hal yang terpisah, yaitu CRITICAL_FIELD_OCCLUSION_DETECTED di sisi integritas yang dijelaskan di bawah. Kode itu muncul saat keputusan dibuat dan secara default diarahkan ke Review.Ekstraksi kolom
MRZ, QR, barcode
Ketiga risiko MRZ dilewati untuk jenis dokumen yang MRZ-nya diketahui tidak andal.Verifikasi tanda tangan barcode saat ini mencakup kartu identitas nasional Prancis, yang barcode ANTS 2D-Doc-nya ditandatangani oleh otoritas penerbit.
BARCODE_SIGNATURE_INVALID hanya dimunculkan ketika pemeriksaan tanda tangan itu sendiri menolak payload. Barcode tanpa tanda tangan, barcode yang ditandatangani otoritas yang belum ada di repositori kepercayaan Didit, atau barcode yang tanda tangannya tidak dapat didekode diperlakukan sebagai data yang tidak terautentikasi dan divalidasi terhadap MRZ serta teks tercetak seperti biasa, tanpa memunculkan risiko ini.Barcode lisensi mengemudi AS dan Kanada (AAMVA) tidak diverifikasi secara kriptografis: penandatanganan digital di sana bersifat opsional dan spesifik per yurisdiksi, dan tidak ada yurisdiksi yang mempublikasikan kunci verifikasi, sehingga Didit hanya mendeteksi dan mencatat apakah payload membawa tanda tangan; tanda tangannya sendiri tidak pernah diperiksa. Kegagalan tanda tangan AAMVA saat ini bukan sinyal risiko. Payload AAMVA yang dimanipulasi hanya memunculkan BARCODE_VALIDATION_FAILED, dan itu pun hanya jika manipulasi juga membuat barcode tidak sesuai dengan data MRZ atau data tercetak/OCR. Tanda tangan palsu pada payload yang secara internal konsisten lolos tanpa sinyal apa pun.Pengguna tidak pernah diminta mengambil ulang gambar saat BARCODE_SIGNATURE_INVALID: tanda tangan yang tidak cocok dengan payload tidak dapat diperbaiki dengan mengambil foto yang lebih baik.Pencocokan Identitas
Liveness dokumen (manipulasi)
Bergantung pada ambang batas per jenis penipuan dalam alur kerja. Pada API OCR mandiri, ketiga risiko ini selalu menolak, dan pemeriksaan yang diminta tetapi tidak menghasilkan skor yang dapat dipakai akan mengembalikanIn Review, bukan menyetujui.
Skor itu sendiri tercantum di setiap laporan V3 sebagai document_liveness, termasuk ketika tidak ada peringatan yang muncul, sehingga dokumen yang disetujui tetap dapat diaudit.
Integritas saluran pengambilan
Nilai
log_type mengikuti tindakan yang dikonfigurasi: error untuk Tolak, warning untuk Tinjau, dan information untuk Tanpa tindakan.
Tindakan yang direkomendasikan: perlakukan sesi yang ditolak sebagai hasil tangkapan yang diinjeksi dan minta pengguna mencoba lagi dengan perangkat fisik menggunakan kamera bawaannya.
Sinyal yang dapat dihasilkan oleh orang sungguhan tidak pernah memicu INJECTION_ATTACK_DETECTED dan tetap bersifat informasional.
Aplikasi yang meneruskan kamera asli, misalnya ponsel yang digunakan sebagai webcam atau lapisan efek di atas webcam asli, tidak dilaporkan sebagai serangan injeksi.
Ini adalah deteksi serangan injeksi, yang terpisah dari deteksi serangan presentasi (objek palsu yang ditampilkan ke kamera asli).
Gambar dokumen publik yang diketahui
Ketidakcocokan detail yang diharapkan
Saat Anda meneruskanexpected_details ke sesi, Didit memunculkan peringatan ketidakcocokan untuk setiap kolom yang tidak cocok. Satu pengaturan (expected_details_mismatch_action, default Tinjau) mengatur perutean semua peringatan ini:
Setiap peringatan ketidakcocokan memuat nilai yang diharapkan dan nilai yang diekstrak di
additional_data.
Usia
Alamat
Kecocokan dokumen lintas sesi
Selain peringatan di atas, laporan ID V3 menyertakan larikmatches[]: hingga 5 dokumen lain di aplikasi Anda dengan tanggal lahir yang sama, negara penerbit yang sama, dan nama lengkap yang sangat mirip (dokumen dalam daftar blokir juga memerlukan kecocokan persis nomor dokumen). Sesi milik pengguna yang sama tidak disertakan. Dokumen yang Anda tambahkan ke daftar blokir muncul dengan is_blocklisted: true. Dokumen dalam daftar izin tetap muncul dalam kecocokan, tetapi tindakan untuk pengguna duplikat dilewati.
Setiap kecocokan menyertakan session_id, session_number, vendor_data, verification_date, user_details (name, document_type, document_number), status, is_blocklisted, api_service, dan front_image_url yang ditandatangani.
Contoh
Peringatan yang dapat dikonfigurasi pada perutean default (informasional)
Penolakan otomatis pada dokumen kedaluwarsa
Ketidakcocokan detail yang diharapkan beserta payload
Jenis peringatan
Setiap risiko diberi tingkat keparahan berdasarkan konfigurasi aplikasi Anda. Tiga tingkat keparahan tersebut adalah:Terkait
- Laporan Verifikasi Identitas: skema laporan lengkap dan statusnya.
- Pemantauan dokumen: cara Didit mendeteksi manipulasi dan duplikasi lintas sesi.
- Webhook:
session.status.updatedmembawa peringatan segera setelah langkah verifikasi identitas selesai. - Model data: Verifikasi Identitas: skema kolom demi kolom yang kanonik.
- Model data: Objek peringatan: bentuk setiap entri di
warnings[].