Подтвержденное место жительства по любому подтверждающему документу.
Счета за коммунальные услуги, выписки из банка, государственные письма — считываются, анализируются, перепроверяются по удостоверению личности, валидируются по реестру адресов страны. $0.20 за проверку. 500 бесплатных проверок каждый месяц.
Не доверяйте введенному адресу. Прочитайте счет, проверьте реестр.
Введенный вручную адрес не проходит аудит. Отсканированный счет за коммунальные услуги, который не
перепроверен по удостоверению личности, не проходит аудит. Didit предоставляет полный рецепт подтверждения
адреса — захват, OCR, сопоставление имени и адреса с удостоверением личности, а также
валидацию по национальному реестру в более чем 18 юрисдикциях — в виде одного подписанного пакета доказательств
за $0.20 за проверку.
Как это работает
От регистрации до верифицированного пользователя за четыре шага.
Шаг 01
Создайте рабочий процесс
Выберите необходимые проверки — удостоверение личности, проверка активности, сопоставление лиц, санкции, адрес, возраст, телефон, электронная почта, пользовательские вопросы. Перетащите их в рабочий процесс на панели управления или отправьте тот же рабочий процесс в наш API. Разветвляйте по условиям, проводите A/B-тесты, код не требуется.
Шаг 02
Интегрировать
Встраивайте нативно с помощью наших SDK для Web, iOS, Android, React Native или Flutter. Перенаправляйте на размещенную страницу. Или просто отправьте пользователю ссылку — по электронной почте, SMS, WhatsApp, где угодно. Выберите то, что подходит вашему стеку.
Шаг 03
Пользователь проходит процесс
Didit обеспечивает работу камеры, подсказки по освещению, передачу данных с мобильных устройств и доступность. Пока пользователь находится в процессе, мы оцениваем более 200 сигналов мошенничества в реальном времени и проверяем каждое поле по авторитетным источникам данных. Результат менее чем за две секунды.
Шаг 04
Вы получаете результаты
Подписанные веб-хуки в реальном времени поддерживают синхронизацию вашей базы данных в момент одобрения, отклонения или отправки пользователя на проверку. Опрашивайте API по запросу. Или откройте консоль, чтобы проверить каждую сессию, каждый сигнал и управлять случаями по-своему.
Создано для соответствия · Цена как у инфраструктуры
Шесть проверок. $0.20 за подтверждение адреса.
Подтверждение адреса регуляторного уровня — это не просто OCR, это рецепт захвата, анализа, перекрестной проверки, валидации реестра и аудиторского конверта. Переключайте каждый модуль для каждого рабочего процесса.
Счет за коммунальные услуги, выписка из банка, государственное письмо, договор аренды, ипотека, договор на мобильную связь / интернет — все в течение 90 дней. Хостируемый поток направляет пользователя через захват; SDK предоставляет тот же поток внутри вашего нативного приложения.
OCR извлекает адрес в канонические поля — строка 1, строка 2, город, почтовый индекс, страна, дата выдачи — и нормализует его для английского счета за коммунальные услуги, испанской банковской выписки, немецкой Anmeldung. В то же время мы проверяем подлинность: манипуляции на уровне пикселей, артефакты копирования-вставки, подделка шрифта / шаблона, перепечатки низкого разрешения и несоответствия EXIF. Поддельный или измененный документ не проходит проверку, прежде чем попасть в ваш журнал аудита.
Дата документа автоматически проверяется на соответствие 90-дневному окну.
03 · Перекрестная проверка удостоверения личности
Сопоставьте с основным удостоверением личности.
Разобранный адрес перепроверяется с адресом на основном удостоверении личности, а имя на подтверждении перепроверяется с именем на удостоверении личности. Выявляет поддельные счета, несовпадающие имена, просроченные загрузки и счета, принадлежащие кому-то другому по тому же адресу.
Там, где страна поддерживает это — UK Royal Mail PAF, Испания Catastro / Padrón, Франция BAN, Германия муниципальная Anmeldung, США USPS и другие — разобранный адрес проверяется непосредственно по авторитетному реестру.
Автоматически маршрутизируется по разобранному коду страны.
05 · Глобальное покрытие
220+ стран, 48+ языков.
Приемлемые документы по регионам — Европа предпочитает счета за коммунальные услуги / банковские выписки / письма от совета, Латинская Америка предпочитает налоговые реестры, США предпочитают банковские выписки / счета за коммунальные услуги / договоры аренды, Азиатско-Тихоокеанский регион предпочитает государственные письма. Конструктор рабочих процессов позволяет ограничивать приемлемые документы по сегментам стран.
ЕвропаКоммунальные услуги · банк · письмо из совета
Латинская АмерикаНалоговый реестр · коммунальные услуги · CFE / CFE-EQ
Северная АмерикаБанк · коммунальные услуги · аренда
АТР + Ближний Восток и АфрикаГосударственное письмо · коммунальные услуги · банк
220+ стран · 48+ языков
06 · Аудиторский пакет
Аудиторский пакет регуляторного уровня.
Каждое решение о подтверждении адреса подписывается и имеет отметку времени — исходное изображение документа, разобранные данные адреса, результаты перекрестной проверки и результат проверки реестра. Экспортируется по запросу через Business Console или API. Центры обработки данных ЕС по умолчанию.
Вставьте в Claude Code, Cursor, Codex, Devin, Aider или Replit Agent. Заполните свой стек. Агент создает рабочий процесс, запускает сессию, анализирует адрес на канонические поля, выполняет проверку реестра и подключает веб-хук.
didit-integration-prompt.md
You are integrating Didit's Proof of Address into a regulated onboarding flow (bank, fintech, lender, crypto exchange, EU payment institution). Regulators want a current address on every customer file; the legacy "ask the user to type it" approach fails audit because the typed address is unverified.
Four obligations on every Proof of Address:
1. Capture an acceptable document — utility bill, bank statement, government letter, lease, mortgage, mobile / internet contract — dated within the last 90 days.
2. Read the address fields with Optical Character Recognition (OCR) and parse them into the canonical address envelope (line 1, line 2, city, postal code, country).
3. Cross-check the address against the address on the underlying ID document AND against the name on both — a mismatched address or a mismatched name fails the check.
4. Where the country supports it, validate the parsed address against the authoritative address registry (UK Royal Mail PAF, Spain Catastro / Padrón, France BAN, Germany DATEV, US USPS).
Pricing (verified live):
- Proof of Address: $0.20 per check
- ID Verification (required as the cross-check anchor): $0.15 per check
- Database Validation (per-country registry validation, optional): variable per service
- Combined bundle (ID + Liveness + Face Match + Proof of Address): $0.55 per user
- 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.
- A workflow_id from the Workflow Builder bundling ID Verification + Passive Liveness + Face Match 1:1 + Proof of Address. Add a Database Validation node for the country-specific address registry where available.
STEP 1 — Create the session
POST https://verification.didit.me/v3/session/
Headers:
x-api-key: <your api key>
Content-Type: application/json
Body:
{
"workflow_id": "<your proof-of-address workflow id>",
"vendor_data": "<your user id, max 256 chars>",
"callback_url": "https://<your-app>/onboarding/poa/callback",
"expected_country": "ES",
"metadata": {
"purpose": "regulatory_address_capture",
"user_id": "<your internal id>"
}
}
Response: 201 Created with the hosted session URL. SMS or email the URL to the user; they complete ID capture + selfie + Proof of Address upload on their phone in under five minutes.
STEP 2 — Read the signed webhook on completion
Didit POSTs to your callback. Session statuses are Title Case With Spaces:
Body (excerpted):
{
"session_id": "<uuid>",
"vendor_data": "<your user id>",
"status": "Approved",
"id_verification": { "status": "Approved", "document_type": "passport", "country_code": "ES" },
"liveness": { "status": "Approved" },
"face": { "status": "Approved", "similarity_score": 0.94 },
"proof_of_address": {
"status": "Approved",
"document_type": "utility_bill",
"issuer": "Iberdrola",
"issued_at": "2026-04-12",
"address": {
"line1": "C. Diagonal 612",
"line2": "3a",
"city": "Barcelona",
"postal_code": "08021",
"country": "ES"
},
"cross_check": {
"name_match": true,
"address_match_with_id": true,
"within_90_day_window": true
}
},
"database_validation": {
"status": "Approved",
"service": "es_catastro_address",
"result": { "registry_match": true }
}
}
Session 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.
STEP 3 — Decide
Branch logic:
Approved → file the canonical address payload on the customer record.
In Review → hold the onboarding, wait for analyst webhook update.
Declined → refuse onboarding, log the decline reason (typically: document over 90 days old, name mismatch, address mismatch with the ID).
Resubmitted → user updated the upload; re-read the decision.
The Proof of Address sub-result is independent of the parent session — even if the parent session is Approved, the proof_of_address.status might be In Review if the cross-check flagged a different city. Switch on proof_of_address.status when you persist the address.
STEP 4 — Persist the canonical address envelope
When proof_of_address.status === "Approved", save the entire address object to your customer record as the regulatory current address. Use the canonical fields (line1, line2, city, postal_code, country) — Didit normalises across document layouts so the same shape works for an English utility bill, a Spanish bank statement, and a German Anmeldung.
Keep the issuer + issued_at fields for your audit log — they prove the document type and the recency window the regulator audited.
STEP 5 — Registry validation result
When the workflow includes a Database Validation node, the database_validation block returns the per-country registry-validation outcome:
- es_catastro_address — Spanish Catastro property registry
- uk_royal_mail_paf — UK Postcode Address File
- fr_ban — France Base Adresse Nationale
- de_anmeldung — German municipal registration check
- us_usps — US Postal Service address validation
A registry-match-false result on a country that supports validation is a signal worth manual review even if the OCR pass succeeded — most fake addresses fail registry validation immediately.
STEP 6 — Refresh on a cadence (optional)
Most regulators ask for the address on file to be re-confirmed every 1-3 years (longer for low-risk customers, shorter for high-risk). Add a periodic Proof of Address session to your account-refresh cadence — same workflow, same hosted URL flow.
WEBHOOK EVENT NAMES
- status.updated — session status changed.
- data.updated — session data changed (resubmission, document re-upload).
Verify X-Signature-V2 on every payload. The webhook secret is per-environment — sandbox key is separate from production.
CONSTRAINTS
- Session statuses use Title Case With Spaces (Approved, In Review).
- Acceptable documents must be dated within the last 90 days by default; some workflows extend to 180 days for low-risk customer segments.
- The address on the Proof of Address document MUST cross-check against the address on the underlying ID OR against a previously-Approved address on file. If neither match, the proof flips to In Review automatically.
- Default record retention is 5 years post-relationship per the EU AML package.
Read the docs:
- https://docs.didit.me/sessions-api/create-session
- https://docs.didit.me/sessions-api/retrieve-session
- https://docs.didit.me/core-technology/proof-of-address/overview
- https://docs.didit.me/core-technology/database-validation/overview
- https://docs.didit.me/integration/webhooks
Start free at https://business.didit.me — sandbox key in 60 seconds, 500 verifications free every month, no credit card.
Нужен дополнительный контекст? Смотрите полную документацию модуля.docs.didit.me →
Соответствие по умолчанию
Откройте новую страну в один клик. Мы делаем сложную работу.
Мы открываем местные дочерние компании, получаем лицензии, проводим тесты на проникновение, получаем сертификаты и соблюдаем все новые правила. Чтобы запустить верификацию в новой стране, просто переключите тумблер. Более 220 стран в работе, аудит и пентесты проводятся ежеквартально — единственный поставщик идентификационных данных, который правительство страны-члена ЕС официально назвало более безопасным, чем личная верификация.
Страны со встроенной авторитетной проверкой адресного реестра.
0+
Всего поддерживаемых стран, с приемлемыми документами для каждого региона.
0
Бесплатные проверки каждый месяц, на каждом аккаунте.
Три уровня, один прайс-лист
Начните бесплатно. Платите за использование. Масштабируйтесь до Enterprise.
500 бесплатных проверок каждый месяц, навсегда. Оплата по мере использования для продакшена. Индивидуальные контракты, хранение данных и SLA (соглашения об уровне обслуживания) для Enterprise.
Бесплатно
Бесплатно
$0 / месяц. Кредитная карта не требуется.
Бесплатный пакет KYC (проверка личности + пассивная проверка живости + сопоставление лиц + анализ устройства и IP) — 500 / месяц, каждый месяц