Dipercaya oleh 2.000+ organisasi di seluruh dunia.
Apa yang harus dipenuhi oleh ritel tanpa staf
Tanpa petugas. Tanpa staf. Tetap patuh pada setiap entri.
Toko serba ada tanpa staf, pod penjual otomatis, lemari es pintar, bahan bakar otonom —
semuanya memiliki kewajiban kepatuhan yang sama dengan toko berstaf: ID asli, usia asli, jejak audit asli.
Didit mengirimkannya sebagai satu alur kerja: $0.33 kunjungan pertama, $0.10 setiap
pengembalian, putusan median di bawah 2 detik, 14.000+ dokumen di 220+ negara.
Cara kerjanya
Dari pendaftaran hingga pengguna terverifikasi dalam empat langkah.
Langkah 01
Buat alur kerja
Pilih pemeriksaan yang Anda inginkan — ID, keaktifan, pencocokan wajah, sanksi, alamat, usia, telepon, email, pertanyaan khusus. Seret ke dalam alur di dasbor, atau kirim alur yang sama ke API kami. Cabang berdasarkan kondisi, jalankan tes A/B, tidak diperlukan kode.
Langkah 02
Integrasikan
Sematkan secara native dengan SDK Web, iOS, Android, React Native, atau Flutter kami. Arahkan ke halaman yang dihosting. Atau cukup kirim tautan kepada pengguna Anda — melalui email, SMS, WhatsApp, di mana saja. Pilih yang sesuai dengan tumpukan Anda.
Langkah 03
Pengguna melalui alur
Didit meng-host kamera, isyarat pencahayaan, serah terima seluler, dan aksesibilitas. Saat pengguna dalam alur, kami menilai 200+ sinyal penipuan secara real time dan memverifikasi setiap bidang terhadap sumber data otoritatif. Hasil dalam waktu kurang dari dua detik.
Langkah 04
Anda menerima hasilnya
Webhook yang ditandatangani secara real-time menjaga database Anda tetap sinkron saat pengguna disetujui, ditolak, atau dikirim untuk ditinjau. Lakukan polling API sesuai permintaan. Atau buka konsol untuk memeriksa setiap sesi, setiap sinyal, dan mengelola kasus sesuai keinginan Anda.
Dibangun untuk ritel otonom · Harga seperti infrastruktur
Enam primitif. $0.33 kunjungan pertama, $0.10 setiap pengembalian.
Kepatuhan ritel otonom bukanlah satu pemeriksaan — ini adalah resep. KYC kunjungan pertama, kenali wajah pada setiap pengembalian, terapkan usia per SKU per wilayah, tandatangani setiap upaya.
Paket kunjungan pertama — Verifikasi ID, Liveness Pasif, Pencocokan Wajah 1:1, ditambah usia yang dihitung dari tanggal lahir yang diverifikasi. Bersertifikat anti-spoof iBeta Level 1, 14.000+ dokumen di 220+ negara.
Alkohol 18 UE / 21 AS, tembakau per negara bagian, vape 18 / 21, minuman energi 16 di beberapa negara UE, alat tajam 18, resep obat diserahkan di apotek. Diberlakukan di sisi server, tidak pernah di kios.
Makanan ringan · minuman ringanUsia berapa punLulus
Minuman energi≥ 16Lulus
Bir · anggur · sari buah apel≥ 18 UE · ≥ 21 ASTinjau
Tembakau · vape≥ 18 / 21 per negara bagianTinjau
Minuman beralkohol · resep≥ 21 ASBlokir
Edit aturan per wilayah di Workflow Builder.
03 · Pembeli kembali
Wajah di pintu. Tanpa telepon.
Autentikasi Biometrik seharga $0.10 per entri — pembeli menghadapkan wajah mereka ke kamera pintu, pintu terbuka. Waktu rata-rata 1,4 detik. Identitas yang sama di setiap toko dalam armada Anda.
Keranjang dimulaiKartu yang tersimpan ditagih saat keluar
Identitas yang sama di setiap toko dalam armada Anda.
04 · Log upaya yang ditandatangani
Setiap entri ditandatangani dan dicatat.
Stempel waktu, ID toko, PID pembeli (Pengidentifikasi Pseudonim), keputusan usia, X-Signature-V2 HMAC SHA-256 — satu catatan per upaya, dapat diekspor ke dasbor pencegahan kerugian Anda atau portal regulator negara bagian. Retensi default 5 tahun.
Salurkan ke dasbor pencegahan kerugian Anda. Retensi 5 tahun.
05 · Kategori × wilayah · waktu
Aturan lokal tanpa menyebarkan ulang OS toko.
Blokir alkohol di wilayah kering, batasi penjualan setelah jam kerja, perlukan lisensi negara bagian untuk SKU vape, arahkan resep ke backend apotek mitra. Edit per toko di Pembuat Alur Kerja tanpa kode.
Sesuaikan aturan per toko di Pembuat Alur Kerja tanpa kode.
06 · Ekosistem
Sambungkan ke OS toko, POS, tumpukan pembayaran.
Webhook masuk ke OS toko Anda, POS memblokir SKU yang dibatasi saat pemindaian, mesin penjual otomatis pintar hanya membuka slot setelah pemeriksaan usia, dasbor pencegahan kerugian menerima setiap upaya yang ditandatangani.
201DibuatAutentikasi Biometrik seharga $0.10 · pintu terbuka dalam ~1.4 d.
API Sesi yang sama. Hanya alur kerja Autentikasi Biometrik saja.dokumen →
Integrasi siap agen
Kirim entri toko otonom dalam satu perintah.
Tempelkan ke Claude Code, Cursor, Codex, Devin, Aider, atau Replit Agent. Isi tumpukan Anda. Agen membangun kedua alur kerja, menghubungkan webhook pengontrol pintu, dan menegakkan aturan SKU saat checkout.
didit-integration-prompt.md
You are integrating Didit into an autonomous-retail surface — an unstaffed convenience store, an age-gated vending machine, a smart fridge, an autonomous fuel station, or a self-checkout that handles restricted SKUs. The recipe verifies identity + age at entry and authenticates returning shoppers via face only.
Three pillars:
1. First visit — verify the shopper's identity and age with one POST /v3/session/ ($0.33 bundle).
2. Returning visit — Biometric Authentication at $0.10 per entry. Shopper holds their face to the door camera; door unlocks.
3. Per-SKU enforcement — block restricted categories (alcohol, tobacco, vapes, energy drinks, RX) at scan or checkout based on the verified age and the store's local rules.
Cost:
- First visit KYC bundle: $0.33 per shopper (Sessions API)
- Returning visit Biometric Auth: $0.10 per entry
- First 500 verifications free every month, forever
PRE-REQUISITES
- Production API key from https://business.didit.me (sandbox key in 60s, no card).
- Webhook endpoint with HMAC SHA-256 verification using the X-Signature-V2 header and your webhook secret.
- Two workflows in the Workflow Builder:
wf_store_entry_kyc — ID Verification + Passive Liveness + Face Match 1:1 + age rules (first visit)
wf_store_entry_biometric — Biometric Auth-only (returning visit)
- A store-id + local-rule lookup so age thresholds vary per region (EU 18 vs US 21 for alcohol; state-by-state tobacco; dry counties; etc.).
STEP 1 — First visit: verify the shopper
POST https://verification.didit.me/v3/session/
Headers:
x-api-key: <your api key>
Content-Type: application/json
Body:
{
"workflow_id": "<wf_store_entry_kyc>",
"vendor_data": "<your shopper id, max 256 chars>",
"callback": "https://<your-app>/store/entry/callback",
"metadata": {
"purpose": "autonomous_store_entry",
"store_id": "<your store id>",
"region": "<US-CA | EU-ES | etc.>"
}
}
Response: 201 Created with the hosted session URL. Encode that URL in the QR sticker on the door (or push it to the shopper's phone via SMS / WhatsApp). Sub-2-second median verdict on completion.
STEP 2 — Read the signed webhook on entry-flow completion
Didit POSTs to your callback. Session statuses are Title Case With Spaces:
Body (excerpted):
{
"session_id": "<uuid>",
"vendor_data": "<your shopper id>",
"status": "Approved",
"id_verification": {
"status": "Approved",
"date_of_birth": "1991-04-22",
"country": "US"
},
"liveness": { "status": "Approved" },
"face": { "status": "Approved", "similarity_score": 0.94 }
}
Status enum (exact case): Approved | Declined | In Review | Resubmitted | Expired | Not Finished | Kyc Expired | Abandoned.
Verify the X-Signature-V2 header BEFORE reading the body — HMAC SHA-256 of the raw bytes with your webhook secret.
Compute the age from date_of_birth, look up the region's age thresholds (per category), and store the (shopper_id, age_band, region, kyc_status) tuple in your data layer.
STEP 3 — Open the door
When status is Approved, signal your store-OS / door-controller to unlock. Median wall-clock from QR scan to door open is around 1.4 seconds on entry-level Android, sub-2 seconds end to end.
Failure modes to handle:
Declined / In Review / Resubmitted — show a friendly UI on the kiosk and offer staff hand-off.
Expired / Abandoned — shopper walked away; do nothing, the session expires.
STEP 4 — Returning visit: Biometric Authentication
POST https://verification.didit.me/v3/session/
Body:
{
"workflow_id": "<wf_store_entry_biometric>",
"vendor_data": "<your shopper id>",
"metadata": {
"purpose": "autonomous_store_entry_return",
"store_id": "<your store id>"
}
}
The shopper just holds their face to the door camera. Cost is $0.10 per entry. Same webhook flow.
STEP 5 — Read the decision on demand
GET https://verification.didit.me/v3/session/{sessionId}/decision/
Headers:
x-api-key: <your api key>
Returns the full decision JSON. Use this from the POS / self-checkout when the shopper picks up a restricted SKU — confirm age + region match the SKU's rules before letting the basket close.
STEP 6 — Per-SKU enforcement at checkout
Inside your POS / store-OS, every restricted SKU carries a category tag (alcohol, tobacco, vape, energy-drink, sharp-tool, RX). Look up the shopper's verified age band + the store's region rules. Examples:
Alcohol US-21 / EU-18, blocked in dry counties, time-of-day windows
Tobacco / vapes US-21 (state by state) / EU-18, store-licence flag required
Energy drinks EU-16 in some regions, no restriction elsewhere
Sharp tools ≥ 18 in most regions
Prescription Pharmacy hand-off only (DEA Schedule II–V)
Tune the policy in the no-code Workflow Builder — no redeploy of your store-OS.
WEBHOOK EVENT NAMES
- Sessions: status changes flow through the standard session webhook.
- Verify X-Signature-V2 on every payload.
CONSTRAINTS
- Session statuses use Title Case With Spaces (Approved, In Review). Don't transform them.
- Don't store the raw document image in your store-OS — Didit holds it, the store-OS holds the shopper PID + age band only.
- Compute the age band server-side, not in the kiosk — kiosks can be tampered with.
- Log every entry attempt (Approved + Declined) signed with X-Signature-V2 for the loss-prevention dashboard. Default retention 5 years.
Read the docs:
- https://docs.didit.me/sessions-api/create-session
- https://docs.didit.me/sessions-api/retrieve-session
- https://docs.didit.me/integration/webhooks
- https://docs.didit.me/console/workflows
Start free at https://business.didit.me — sandbox key in 60 seconds, 500 verifications free every month, no credit card.
Butuh lebih banyak konteks? Lihat dokumen modul lengkapnya.docs.didit.me →
Sesuai dengan desain
Buka negara baru dalam satu klik. Kami melakukan pekerjaan sulit.
Kami membuka anak perusahaan lokal, mengamankan lisensi, menjalankan tes penetrasi, mendapatkan sertifikasi, dan menyelaraskan dengan setiap peraturan baru. Untuk mengirim verifikasi di negara baru, cukup aktifkan tombol. 220+ negara aktif, diaudit dan diuji penetrasi setiap kuartal — satu-satunya penyedia identitas yang secara resmi disebut oleh pemerintah negara anggota UE lebih aman daripada verifikasi langsung.
Paket KYC kunjungan pertama. Kemudian $0.10 per pengembalian melalui Autentikasi Biometrik.
~1.4s
Waktu nyata median dari wajah di pintu hingga pintu terbuka.
0+
Jenis dokumen di 220+ negara — berfungsi untuk seluruh pengunjung toko mana pun.
0
Verifikasi gratis setiap bulan, di setiap akun.
Tiga tingkatan, satu daftar harga
Mulai gratis. Bayar sesuai penggunaan. Skala ke Enterprise.
500 verifikasi gratis setiap bulan, selamanya. Bayar sesuai penggunaan untuk produksi. Kontrak khusus, residensi data, dan SLA (Service Level Agreements) di Enterprise.
Gratis
Gratis
$0 / bulan. Tidak perlu kartu kredit.
Paket KYC gratis (Verifikasi ID + Keaktifan Pasif + Pencocokan Wajah + Analisis Perangkat & IP) — 500 / bulan, setiap bulan
Pengguna yang Diblokir
Deteksi Duplikat
200+ sinyal penipuan di setiap sesi
KYC yang dapat digunakan kembali di seluruh jaringan Didit
Platform Manajemen Kasus
Pembuat Alur Kerja
Dokumen publik, sandbox, SDK, server MCP (Model Context Protocol)