Ringkasan
Iframe UniLink (Tanpa Backend)
Cara tercepat untuk memulai: cukup salin dan tempel URL UniLink Anda.Yang Anda Perlukan
- Alur kerja Didit (dibuat di Didit Console)
- URL UniLink Anda (klik Copy Link pada alur kerja Anda)
Implementasi
⚠️ Wajib: Atribut allow wajib ada agar kamera dapat diakses selama deteksi liveness.
Manfaat Utama
- Pengaturan kurang dari 1 menit: Tanpa backend, tanpa kunci API
- Tanpa konfigurasi tambahan: URL callback diatur di pengaturan alur kerja
- Ideal untuk MVP: Langsung bisa digunakan
Iframe Sesi API (Dengan Backend)
Untuk integrasi lanjutan yang memerlukan kustomisasi per sesi.Kapan Menggunakannya
- Mengirim
vendor_dataataumetadatakustom per sesi - Mengatur URL callback yang berbeda per sesi
- Melacak sesi di sisi server sebelum verifikasi dimulai
- Mengaitkan sesi dengan ID pengguna Anda
Implementasi
Langkah 1: Buat sesi (backend) Respons pembuatan sesi menggunakan kolom bernamaurl. Gunakan nilai tersebut sebagai src iframe.
Mendengarkan Event (postMessage)
Halaman verifikasi mengirim event ke jendela induk. Setiap pesan memiliki struktur berikut:event.data.data.sessionId, bukan event.data.sessionId:
didit:ready ({ sessionId }), didit:started, didit:step_started / didit:step_completed / didit:step_changed ({ step, ... }), didit:status_updated ({ status }), didit:completed ({ sessionId, status }), didit:cancelled, didit:error ({ error, step? }), didit:close_request, dan didit:layout ({ contentHeight, colorScheme, dir }, lihat di bawah). Referensi event JavaScript SDK mencantumkan event verifikasi yang tersedia sebagai callback bertipe. Mulai versi 0.5.0, SDK menangani pesan tata letak secara internal dan tidak meneruskannya ke onEvent.
Atur ukuran iframe dari didit:layout
Halaman verifikasi memberi tahu seberapa besar ruang yang dibutuhkannya melalui pesan didit:layout. Pesan ini dikirim saat halaman dimuat dan setiap kali tinggi konten, tema, atau arah teks berubah:
Untuk menerima
didit:layout di iframe Anda sendiri, tambahkan sdk_presentation=embedded ke URL verifikasinya. Mulai versi 0.5.0, JavaScript SDK mengatur presentasi ini secara otomatis. Tanpa parameter presentasi, halaman menggunakan tata letak mandiri dan tidak mengirim pesan tata letak.colorScheme dan dir untuk menyesuaikan kontrol apa pun di sekitar iframe dengan tema dan arah teks halaman.
Jika koneksi pengguna terputus, halaman menampilkan layar “Tidak ada koneksi internet” yang akan tertutup sendiri begitu koneksi kembali. Jika pengguna memilih Exit Verification di layar tersebut, halaman mengirim didit:error dengan error: "network_error", lalu didit:cancelled. Tutup iframe saat menerima didit:cancelled.
Implementasi Modal
Untuk pengalaman modal yang rapi di atas halaman Anda:HTML/CSS/JS
Komponen React
Komponen React yang dapat digunakan ulang untuk verifikasi berbasis modal:Penggunaan
Komponen Vue
Konfigurasi
Izin yang Diperlukan
Gunakan daftar izin lengkap ini untuk pengambilan gambar, lokasi, penyalinan, dan kompatibilitas media:
Atribut
allow memberikan izin ke iframe; atribut ini tidak menggantikan pilihan pengguna atau header Permissions-Policy yang lebih ketat pada halaman host Anda.
Ukuran iframe
Alur verifikasi menyesuaikan tata letaknya dengan ukuran iframe-nya. Sesuaikan ukuran iframe dengan jendela tempat iframe ditampilkan:
Untuk rentang tengah, mulailah dari 500px kali 700px sampai pesan
didit:layout pertama tiba, dengan batas tinggi yang sama. Contoh didit:layout menerapkan ketiga ukuran, termasuk ukuran untuk komputer dan ponsel, sebelum pesan apa pun tiba.
Content Security Policy (CSP)
Jika Anda menggunakan CSP, tambahkan Didit ke direktifframe-src Anda:
Verifikasi Lintas Perangkat
InContext iframe secara otomatis mendukung verifikasi lintas perangkat:- Pengguna memulai verifikasi di desktop
- Jika kamera tidak tersedia, kode QR ditampilkan
- Pengguna memindai kode QR di ponsel
- Pengguna menyelesaikan verifikasi di ponsel
- Iframe di desktop otomatis diperbarui dengan hasilnya
Pemecahan Masalah
Kamera Tidak Berfungsi
- Pastikan iframe menyertakan daftar izin lengkap
- Pastikan situs Anda diakses melalui HTTPS
- Pastikan pengguna sudah memberikan izin kamera untuk domain Anda
- Coba metode Pengalihan jika akses kamera di iframe gagal
Iframe Tidak Dapat Dimuat
- Periksa masalah Content Security Policy (CSP)
- Tambahkan
https://verify.didit.meke direktifframe-srcAnda - Periksa konsol browser untuk melihat kesalahan
postMessage Tidak Diterima
- Pastikan Anda mendengarkan origin yang benar (
https://verify.didit.me, atau domain White Label Anda) - Pastikan event listener sudah ditambahkan sebelum iframe dibuka
- Periksa nama dan bentuk event: tipenya diberi awalan (
didit:completed, bukanverification_complete) dan payload-nya berada di dalamevent.data.data
Repositori Contoh
Repositori GitHub
Lihat kode sumber dan contoh di GitHub