GH GambleHub

KYC-UX: снижение трения

1) Принципы KYC-UX

Risk-based by design: чем ниже риск — тем меньше трения; эскалация только по сигналам.
Progressive disclosure: показываем ровно то, что нужно сейчас (минимум полей/экранов).
One-tap re-entry: сохранение контекста, резюмируем незаконченные проверки.
Многоисточниковость сигналов: документы + liveness + поведенческие/сетевые признаки.
Разделение целей: KYC (кто вы) ≠ SoF/SoW (откуда деньги) ≠ AML/санкции (доп. фильтры).
Explainability: короткие причины, понятные действия пользователя, предсказуемые сроки.


2) Риск-базовые уровни (примерная матрица)

УровеньКогдаЧто запрашиваемSLA авто-проверкиUX-заметки
L0 (лайт)регистрация/низкие суммыИмя, дата рождения, страна KYCмгновенноавтозаполнение, маски, подсказки
L1 (базовый)первый депозит/малые лимитыСелфи-liveness + документ (паспорт/ID) через OCR/NFC≤ 1–2 минкамера/галерея, авто-крап, quality hints
L2 (усиленный)крупные лимиты/сигналы рискаProof of Address, повторная liveness + валидация MRZ/NFC≤ 5–10 минпрогресс-бар, «вернуться позже»
L3 (расширенный)SoF/SoW/санк-хитыБанковская выписка/пейслипы/декларациидо 24–72 чзагрузка файлов, чек-лист форматов
💡 Эскалация по событию: превышение лимита, конфликт гео-сигналов (IP≠KYC), санкционные/PEP-сигналы, фрод-паттерны, риск-скор.

3) Эталонный KYC-флоу (mobile-first)

1. Пороговый триггер (например, первый вывод) → экран с краткой причиной и выгодой: «Проверим личность, чтобы открыть выводы и поднять лимиты».
2. Выбор документа (паспорт/ID/водит.) с советом «что лучше» для страны.
3. Съемка: авто-крап, размытие фона, подсветка бликов/контраста, контроль резкости.
4. OCR/MRZ/NFC: мгновенный прогресс, не блокируем UI; при NFC — анимированная «поднесите документ к телефону».
5. Liveness: 3–4 простых действия (поворот головы/мигание) или пассивная liveness 2–3 кадра.
6. Авто-валидация (фоново) + видимый таймер SLA (например, «до 2 минут»).
7. Результат: + одобрено → лимиты/статус;нужно дополнить → ровно один пункт и примеры; - отказ → понятная причина и путь на апелляцию.


4) «Мягкие» шаг-апы (step-ups) и контекст

Geo-conflict (IP≠KYC) → запрос GPS/SIM или proof of address (L2).
High-risk BIN/эмитент → принудительная liveness при попытке депозита.
Velocity/мультиаккаунтинг → повторное селфи + SoF при выводе.
PEP/санкции (fuzzy) → L3 с SoF/SoW и ручной проверкой.


5) Микро-UX: как снижать трение

До шага: «Что приготовьте? ~2 минуты, паспорт/ID и хорошее освещение».
Захват документа: рамка-маска, детект бликов, зеленые чек-марки «фото читаемо/угол ровный».
Локальный OCR-preview: подсветить считанные поля для визуальной проверки.
NFC-подсказки: инфо по местоположению чипа для конкретной страны/бланка.
Liveness-навигация: простые задания без текста — пиктограммы + короткая фраза.
Retry без боли: повторить шаг, не теряя прогресс; лимит попыток с таймером.
Сторожок приватности: «Фото хранится зашифровано. Никаких данных в EXIF/логах UI».


6) Локализация и доступность

Полный перевод инструкций, примеров документов и допустимых форматов.
Поддержка RTL, крупных шрифтов, `aria-labels`, клавиатурной навигации.
Валидации по стране (формат адреса, ID-маски), для телефонов — E.164.
Примеры на местном языке: «Пример: ул. Пушкина, д. 10, кв. 5».


7) Приватность, хранение и согласия

Четкие согласия: цель (KYC/AML), срок хранения, права на удаление/апелляцию.
Минимизация данных: хранить токены/хэши где возможно, прятать PAN/EXIF.
Политика удаления/ретеншн: L0–L1 короче, L2–L3 дольше по закону/лицензии.
Audit-trail: кто/когда смотрел/решил; неизменяемые логи.


8) Инженерия: события и модель данных (минимум)


kyc.sessions (
kyc_id PK, user_id, level_target, started_at, status, provider, country, risk_score, conflict_flags, sla_eta_at
)
kyc.documents (
doc_id PK, kyc_id FK, type, side, ocr_json, mrz_ok, nfc_ok, quality_score, captured_at, storage_ref
)
kyc.liveness (
kyc_id FK, type, result, confidence, frames_ref, captured_at
)
kyc.sanctions_pep (
kyc_id FK, list, match_type, score, reviewed_by, reviewed_at, decision
)
kyc.proofs (
kyc_id FK, kind -- POA      SOF      SOW,
file_ref, parsed_json, status, requested_at, received_at, reviewer
)
kyc.decisions (
kyc_id FK, level_granted, result -- APPROVED    MORE_INFO    REJECTED,
reason_code, comment, decided_at
)

9) Политики в псевдо-DSL (пример)

yaml policy: "kyc_v2_risk_based"
triggers:
- name: "first_withdrawal"  -> target_level: L1
- name: "limit_5k_month"   -> target_level: L2
- name: "sanctions_fuzzyhit" -> target_level: L3 escalations:
- if: geo_conflict_score >= 2 then step: "POA"
- if: issuer_risk in ["high","unknown"] and method == "CARD" then step: "liveness"
- if: velocity_deposits_24h > 3 then step: "liveness"
timeouts:
L1: "PT10M" # ожидание авто-проверки
L2: "PT30M"
L3: "P3D"
ux:
show_timer: true resume_link: true

10) Метрики и дашборды

Конверсия/скорость

KYC Start → Auto-Pass → Manual Review → Approved

Median/95p time-to-KYC по уровням и странам

Auto-pass % (OCR/MRZ/NFC/liveness) и доля ручных

Качество/риск

Mismatch rate (IP≠KYC/SIM) и доля эскалаций

False Reject % (апелляции → реверс)

PEP/Sanctions hit rate и TAT на решение

UX/ошибки

Abandonment на шагах (Doc Capture, Liveness, Upload, Review)

Retry-rate и причины (блик/нерезкость/NFC fail)

Mobile vs Desktop: дельта успеха и времени


11) Алерты и пороги

Abandonment spike на шаге (рост > X bps за час)

OCR quality drop (quality_score p50 < порога)

NFC fail surge по стране/бланку

Auto-pass collapse: падение > Y% d/d

Manual backlog: TAT > SLA (красная зона)

Sanctions provider down: таймауты, переключение на бэкап


12) SQL-шаблоны

12.1. Воронка KYC

sql
SELECT stage, COUNT() AS users
FROM (
SELECT user_id, 'start' AS stage FROM kyc.sessions WHERE started_at BETWEEN:from AND:to
UNION ALL
SELECT user_id, 'doc_captured' FROM kyc.documents WHERE captured_at BETWEEN:from AND:to
UNION ALL
SELECT user_id, 'liveness_done' FROM kyc.liveness WHERE captured_at BETWEEN:from AND:to
UNION ALL
SELECT user_id, 'approved' FROM kyc.decisions WHERE decided_at BETWEEN:from AND:to AND result='APPROVED'
) s
GROUP BY stage ORDER BY 1;

12.2. Время до авто-верификации

sql
SELECT level_target,
PERCENTILE_CONT(0.5) WITHIN GROUP (ORDER BY EXTRACT(EPOCH FROM (COALESCE(decided_at, now()) - started_at))) AS t_median_sec,
PERCENTILE_CONT(0.95) WITHIN GROUP (ORDER BY EXTRACT(EPOCH FROM (COALESCE(decided_at, now()) - started_at))) AS t_p95_sec
FROM kyc.sessions
LEFT JOIN kyc.decisions USING (kyc_id)
WHERE started_at BETWEEN:from AND:to
GROUP BY 1;

12.3. Качество кадров и причины ретраев

sql
SELECT reason_code, COUNT() AS cnt
FROM (
SELECT CASE
WHEN quality_score < 0.6 THEN 'low_quality'
WHEN mrz_ok = FALSE THEN 'mrz_fail'
WHEN nfc_ok = FALSE THEN 'nfc_fail'
ELSE 'other'
END AS reason_code
FROM kyc.documents
WHERE captured_at BETWEEN:from AND:to
AND doc_id IN (SELECT doc_id FROM kyc.documents GROUP BY doc_id HAVING COUNT() > 1)
) t
GROUP BY 1 ORDER BY cnt DESC;

13) Анти-фрод сигналы (без «палок в колеса»)

Device-graph и повторяющиеся селфи/документы → тихая эскалация на L2/L3.
Geo-velocity (смена страны) → повторная liveness без повторного OCR.
BIN-geo mismatch → liveness на депозите, а не ломать весь KYC-флоу.
VPN/Proxy/Tor → мягкий запрос на альтернативный сигнал (GPS/SIM) до бана.


14) Best practices (коротко)

1. Дизайн под событие: KYC именно там, где пользователь получает ценность (депозит/вывод/лимит).
2. Авто-капчер + live-подсказки; OCR/NFC и пассивная liveness, где возможно.
3. Step-up только по сигналам (geo/conflict/velocity/санкции) и порогам сумм.
4. Сильный resume-опыт: «Продолжить с того же шага», глубинные ссылки в письмах/SMS.
5. Везде таймеры SLA и честные статусы.
6. Локализация/а11y: тексты, примеры, форматы, RTL.
7. Приватность: минимизация, шифрование, понятные согласия, ретеншн-политики.
8. Телеметрия и алерты по качеству (блики/размытие/NFC).
9. A/B тесты копирайта/инструкций/порядка шагов с guardrails по отказам.
10. Док-процедуры апелляций и ручной проверки с четким TAT.


15) Чек-лист внедрения

  • Матрица уровней L0–L3, триггеры и шаг-апы.
  • Провайдеры OCR/NFC/liveness/санкции с бэкапами.
  • Экран инструкции + quality hints; авто-капчер, рамки, блик-детект.
  • Пассивная liveness по умолчанию, активная — как fallback.
  • Resume-механика, deep-links, напоминания.
  • Локализация, RTL, а11y, примеры документов по стране.
  • Приватность/согласия, ретеншн, audit-trail.
  • Дашборды: конверсия шагов, auto-pass, TAT, качества кадров.
  • Алерты: abandonment/OCR/NFC/auto-pass/backlog.
  • Процедуры апелляций и ручных решений, SLA.

Резюме

KYC-UX с низким трением — это риск-базовая эскалация, «умные» технологии захвата (OCR/NFC/liveness), локализованные инструкции и сильный resume-опыт. Добавьте прозрачные сроки, минимизацию данных и предсказуемые шаг-апы — и вы одновременно повышаете конверсию депозитов/выводов, ускоряете соответствие и снижаете операционные издержки на ручные проверки.

Contact

Свяжитесь с нами

Обращайтесь по любым вопросам или за поддержкой.Мы всегда готовы помочь!

Начать интеграцию

Email — обязателен. Telegram или WhatsApp — по желанию.

Ваше имя необязательно
Email необязательно
Тема необязательно
Сообщение необязательно
Telegram необязательно
@
Если укажете Telegram — мы ответим и там, в дополнение к Email.
WhatsApp необязательно
Формат: +код страны и номер (например, +380XXXXXXXXX).

Нажимая кнопку, вы соглашаетесь на обработку данных.