Branding alur verifikasi, konfigurasikan aplikasi klien, dan arahkan hasilnya melalui produk Anda. White Label menambahkan $0.20 per pemeriksaan ke modul yang digunakan.
Dipercaya oleh 2.000+ organisasi di seluruh dunia.
Platform AndaSatu integrasiSemua klien berjalan di atasnya.Bangun sekali
01client_01app_nwp_01Disetujui
Identitas + liveness
02client_02app_lkm_02Dalam Peninjauan
Identitas + liveness + bisnis
03client_03app_fwr_03Disetujui
Identitas + liveness + sanksi
Didit berjalan di baliknyaJalankan verifikasi dengan brand yang Anda konfigurasi.White labelAplikasi per klien
Satu integrasi, setiap klien
Layani pelangganmu. Gunakan brand-mu.
Konfigurasi aplikasi untuk setiap klien dan environment. Pilih pemeriksaan dan branding mereka, lalu rutekan hasilnya melalui produkmu. Pertahankan pengungkapan penyedia yang diperlukan dalam perjalanan verifikasi.
Cara kerjanya
Mulai alur klien dalam empat langkah.
Langkah 01 / 04
01
Buat workflow
Pilih pemeriksaan yang dibutuhkan setiap klien di workflow builder. Konfigurasi aturannya, buat draf, lalu publikasikan saat sudah siap. Setiap sesi baru akan menggunakan versi workflow yang sudah dipublikasikan.
Integrasikan
Integrasikan alur verifikasi di aplikasi kamu, buka halaman yang di-host, atau kirim tautan ke pengguna. Gunakan aplikasi terpisah untuk tes sandbox dan verifikasi live.
Pandu pengguna melalui alur
Terapkan warna, logo, dan tipografi kamu, lalu sajikan alur dari subdomain kamu. Aktifkan gaya kustom di setiap workflow. Pertahankan pemberitahuan wajib yang mengidentifikasi Didit sebagai penyedia verifikasi.
Terima hasilnya
Terima update yang ditandatangani saat verifikasi berubah. Referensi kamu sendiri akan menautkan hasilnya ke pengguna. Ambil hasilnya sesuai permintaan, atau tinjau di konsol.
Dibuat untuk platform · Dibuat untuk margin · Desain terbuka
Konfigurasi verifikasi untuk klienmu.
Konfigurasi branding, workflow, akses, dan pengiriman hasil untuk layanan verifikasi di dalam produkmu.
Atur warna, tipografi, logo, dan radius sudut. Ganti teks layar yang didukung dan gunakan subdomain Anda sendiri. Aktifkan gaya kustom per alur kerja, dan pertahankan pemberitahuan yang mengidentifikasi Didit sebagai penyedia verifikasi.
Verifikasi identitas AndaVerifikasi identitas AndaVerifikasi identitas Anda
DokumenSelfie
Mulai verifikasiMulai verifikasiMulai verifikasireq_8f21c0
WarnaTipografiLogoRadius sudut$0.20di atas modul yang digunakan
02 · Pemisahan yang Jelas
Pisahkan aplikasi klien dan pengujian.
Buat aplikasi terpisah untuk setiap klien, serta untuk pengujian sandbox dan pemeriksaan live. Pilih application key yang tepat untuk setiap permintaan. Kontrol akses tim Anda dengan resource permissions dan terapkan akses klien di produk Anda sendiri.
Gunakan aplikasi terpisah untuk klien dan environment. Terapkan akses klien di produk Anda.
03 · Pemeriksaan Berbeda per Klien
Buat alur yang berbeda untuk setiap klien.
Pilih pemeriksaan identitas dan liveness untuk individu, atau alur kerja bisnis untuk perusahaan. Tambahkan screening sanksi jika diperlukan. Pilih alur kerja klien yang telah dikonfigurasi saat kamu memulai setiap verifikasi.
Satu integrasi, alur kerja berbeda per klienPublikasikan alur kerja setiap klien dengan pemeriksaan yang dibutuhkan.
04 · Hasil Sesuai Keinginan Anda
Terima hasil di tempat yang dibutuhkan tim Anda.
Kirim referensi Anda sendiri saat memulai verifikasi. Pembaruan sesi akan mengembalikannya bersama hasilnya, sehingga sistem Anda dapat menemukan klien dan pengguna yang tepat. Verifikasi tanda tangan dan waktu pengiriman sebelum memproses pembaruan.
Ambil sesuai permintaanTarik keputusan kapan pun sistem Anda membutuhkannya.Ambil sesuai permintaanvendor_dataclient_01:user_42
KonsolBuka sesi lengkap, bukti, dan jejak auditnya.Tinjauan manualvendor_dataclient_01:user_42
Baca satu hasil di tiga tempat. Cocokkan referensi Anda dengan klien dan pengguna yang tepat.
05 · Seluruh Katalog
Tambahkan pemeriksaan ke alur kerja klien.
Edit draf alur kerja klien, tambahkan pemeriksaan yang mereka butuhkan, lalu publikasikan. Sesi baru akan menggunakan versi tersebut. Sesi yang sudah ada akan tetap menggunakan versi awal, dan alur kerja lainnya akan mempertahankan konfigurasinya sendiri.
Anti-pencucian uang (AML) diaktifkan untuk client_01Publikasikan draf
Aktifkan modul untuk satu klienPublikasikan perubahan untuk sesi baru. Sesi yang sudah ada akan tetap menggunakan versi sebelumnya.500 pemeriksaan alur kerja gratis
06 · Harga Anda
Tetapkan harga Anda dari biaya modul yang dipublikasikan.
Tinjau harga yang dipublikasikan dan unit penagihan untuk setiap modul yang Anda sertakan. Tentukan berapa biaya yang produk Anda bebankan kepada klien. White Label menambahkan $0.20 per pemeriksaan ke biaya modul verifikasi yang digunakan.
Salin prompt ini ke coding agent-mu dan jelaskan aplikasimu. Ini mencakup aplikasi klien, branding, alur kerja, dan routing hasil verifikasi. Konfigurasi dan tinjau pengaturan akun sebelum rilis.
didit-integration-prompt.md
# Integrate Didit for multiple clients
Integrate Didit into <my_stack> for a product serving multiple clients.
Use each client's configured application and workflow, apply their branding,
and route authenticated results through your product.
## Public module prices
- ID Verification: $0.15 per check
- Passive Liveness: $0.10 per check
- Face Match 1:1: $0.05 per check
- IP Analysis: $0.03 per check
- Full identity bundle (the four above): $0.33 per check
- AML (anti-money laundering) Screening: $0.20 per check
- Ongoing AML Monitoring: $0.07 per user per year
- Business Verification: Variable per registry check;
person screening, document checks, and linked identity checks are billed separately
- White Label: $0.20 per check on top of the modules used
- 500 free monthly workflow checks; standalone requests are outside that allowance
Use these published costs when setting your product's client pricing.
Review commercial requirements with Didit; do not infer partner rates.
## 1. Configure client applications
Create an account at https://business.didit.me. Use separate applications
for each client and environment: live and sandbox are separate applications,
not two environments inside one application. Sandbox outcomes are simulated.
Store application keys and workflow UUIDs in your server-side configuration,
indexed by client and environment. Never expose keys to end users.
Enforce client authorization in your own product. Resource permissions do
not establish a client-specific boundary, and an application is not a
promise of isolation from every organization-level resource.
## 2. Brand the verification flow
Configure colours, typography, square and rectangular logos, corner radius,
and the login-screen option in the Style Editor. The Texts tab overrides
supported strings, one locale at a time; it does not expose arbitrary text
on every screen. Choose the completion-screen mode where needed.
For a custom domain:
- Use an unused subdomain such as verify.yourbrand.com, not a root or www. domain.
- Enable White Label on the account and grant write access to Customization.
- Add both generated CNAME records: ownership/certificate verification and routing.
- Verify ownership in the console once the records resolve.
- A custom domain prevents re-enabling the Didit login screen until removed.
Enable Workflow → Settings → Options → Include custom style for every
workflow that should use the branding. Otherwise it retains default branding.
White Label changes visual branding. Retain the required provider disclosures:
identify your company as requesting verification and Didit as powering it,
link your privacy notice and applicable terms, and link Didit's Verification
Privacy Notice and End User Terms for Identity Verification. Collect affirmative
consent where required and retain the necessary proof in your own systems.
These responsibilities also apply when you build your own verification UI.
## 3. Publish each client's workflow
Build a workflow in the Console or with
POST https://verification.didit.me/v3/workflows/.
Use a KYC (know your customer) workflow for people or a KYB (know your
business) workflow for companies. Configure the relevant checks and publish
the draft. Existing sessions retain their original workflow version.
## 4. Create the session for the correct client
Resolve the application key and workflow UUID from trusted server-side
configuration for this client and environment:
curl -X POST https://verification.didit.me/v3/session/ \
-H "x-api-key: <client-application-key>" \
-H "Content-Type: application/json" \
-d '{
"workflow_id": "<client-workflow-uuid>",
"vendor_data": "<client-id>:<end-user-id>"
}'
vendor_data contains your references and is returned on session events and
decision reads. Do not assume unrelated entity or transaction events have
this same session envelope. Open the returned url or embed the hosted flow.
## 5. Receive authenticated results
Register a destination for status.updated and data.updated and store its
secret_shared_key, scoped to the client and environment in your configuration.
Verify before reading a decision or changing a client's data:
- X-Signature-V2: HMAC-SHA256 over recursively sorted, compact JSON with
Unicode preserved. This header does not sign raw bytes.
- X-Signature: supported HMAC-SHA256 over the exact raw request bytes,
captured before JSON middleware. The terminal example uses this variant.
- Check signature format and length before a constant-time comparison.
- Validate X-Timestamp and reject a difference greater than 300 seconds.
Require it to match the timestamp in the authenticated payload.
- Resolve the destination secret from trusted route configuration, not from
an unverified vendor_data value. Confirm the authenticated reference
belongs to that client before routing the result.
- Dispatch on webhook_type, handle duplicate deliveries, and durably queue
work before acknowledging. Return 2xx promptly, within the 5-second timeout.
Session statuses: Approved, Declined, In Review, In Progress, Not Started,
Abandoned, Expired, Kyc Expired, Resubmitted, Awaiting User. Entity and
transaction events have different status enums; do not feed them into the
session dispatcher.
Session events include session_id, status, webhook_type, created_at,
timestamp, workflow_id, workflow_version, vendor_data, metadata; decision
is present for Approved, Declined, In Review, and Abandoned.
Business sessions also include business_session_id and session_kind: "business".
For reconciliation read
GET https://verification.didit.me/v3/session/{sessionId}/decision/
using the same client's application key. Your authorized team can also
review results in the Console.
## 6. Control team permissions
Assign each member one role. Five built-in roles are available; organization
owners can create custom roles. Allowed actions differ by resource:
- sessions: read, list, create, write, delete
- users: read, list
- businesses: read, list, write
- workflows and questionnaires: read, write, create, delete
- customization: read, write
- api-keys: read, write
Use a dedicated custom role for support access. Do not grant access to all
applications merely because a support agent needs to review sessions.
## 7. Add checks and verify the integration
Edit and publish a draft of one client's workflow. New sessions use that
version; other workflows and existing sessions retain their configuration.
Review the published costs of the added checks.
1. Configure two example clients with distinct application keys, workflows,
and webhook secrets. Test your own authorization against cross-client access.
2. Confirm sandbox and live traffic use separate applications.
3. Check each workflow's custom-style setting, domain, and required disclosures.
4. Reject malformed or invalid signatures, stale timestamps, and a reference
that belongs to another client. Include Unicode in signature fixtures.
5. Confirm vendor_data returns unchanged on session updates and decision reads.
6. Confirm changes to one workflow affect only new sessions using that workflow.
References:
- https://docs.didit.me/console/white-label
- https://docs.didit.me/console/custom-domain
- https://docs.didit.me/console/roles-permissions
- https://docs.didit.me/console/workflows
- https://docs.didit.me/sessions-api/create-session
- https://docs.didit.me/integration/webhooks
- https://docs.didit.me/integration/sandbox-testing
Start at https://business.didit.me.
Dirancang untuk kepatuhan
Buka negara baru dengan satu klik. Kami yang mengerjakan bagian sulitnya.
Kami membuka anak perusahaan lokal, mengamankan lisensi, menjalankan pengujian penetrasi, mendapatkan sertifikasi, dan menyelaraskan dengan setiap regulasi baru. Untuk meluncurkan verifikasi di negara baru, cukup aktifkan tombol. 220+ negara sudah aktif, diaudit dan diuji penetrasi setiap kuartal, satu-satunya penyedia identitas yang secara formal disebut oleh pemerintah negara anggota Uni Eropa lebih aman daripada verifikasi langsung.
Mulai gratis. Bayar sesuai pemakaian. Skalakan ke Enterprise.
500 verifikasi gratis setiap bulan, selamanya. Setelah itu, bayar hanya saat modul berjalan. Kontrak khusus, data residency, dan service level agreement (SLA) tersedia untuk Enterprise.
Gratis
$0/ bulan · tanpa kartu
Untuk membangun, menguji, dan pengguna pertamamu.
Semua yang kamu butuhkan untuk memulai:
500 verifikasi KYC lengkap setiap bulan
ID, liveness, face match, device & IP
200+ sinyal fraud, blocklist, duplikat
KYC yang bisa digunakan kembali di seluruh jaringan Didit
Workflow builder, case management, SDK
Dukungan AIAgen AI dalam konsol, dokumentasi, dan komunitas.
Gunakanharga modul yang dipublikasikanuntukmenghitungbiayaverifikasiAnda:$0.33perpemeriksaanidentitaslengkap,$0.20perscreeninganti-moneylaundering(AML),dan$2.00perpemeriksaanregistribisnis.WhiteLabelmenambahkan$0.20perpemeriksaandiatasmodulyangdigunakan.TetapkanhargaklienprodukAndasecaraterpisah.Bicaralah dengan kamitentangkebutuhanresellerAnda.