KYC-UX: sürtünmegi azaltmak
1) KYC-UX ýörelgeleri
Risk-based by design: töwekgelçilik näçe pes bolsa, şonça-da az sürtülme; diňe signallar boýunça möwjemek.
Progressive disclosure: Häzirki wagtda zerur zatlary görkezýäris (iň az meýdanlar/ekranlar).
One-tap re-entry: konteksti saklamak, gutarylmadyk barlaglary jemleýäris.
Köp çeşmeli signallar: resminamalar + durmuş + özüni alyp baryş/tor alamatlary.
Maksatlary bölmek: KYC (siz kimsiňiz) ≠ SoF/SoW (puldan) ≠ AML/sanksiýalar (goşmaça süzgüçler).
Explainability: gysga sebäpler, ulanyjynyň düşnükli hereketleri, öňünden aýdyp boljak möhletler.
2) Töwekgelçilik-esasy derejeler (takmynan matrisa)
3) KYC-flow (mobile-first)
1. Bosagadaky trigger (mysal üçin, ilkinji çykyş) → gysga sebäp we peýdasy bolan ekran: "Netijeleri açmak we çäkleri ýokarlandyrmak üçin şahsyýeti barlalyň".
2. Resminamany saýlamak (pasport/ID/sürýär.) ýurt üçin "näme gowudyr" maslahaty bilen.
3. Surata düşürmek: awto-gykylyk, fon bulaşyklygy, yşyklandyryş/kontrast, ýitilige gözegçilik.
4. OCR/MRZ/NFC: derrew öňe gidişlik, UI bloklamaýarys; NFC - animasiýa "resminamany telefona getiriň".
5. Liveness: 3-4 ýönekeý hereket (kellesini öwürmek/ýalpyldawuk) ýa-da passiw liveness 2-3 çarçuwa.
6. Awto-tassyklama (fon) + görünýän SLA taýmeri (mysal üçin, "2 minuta çenli").
7. Netije: + tassyklanan → çäklendirmeler/status; → takyk bir nokady we mysallary doldurmaly; - ret etmek → düşnükli sebäp we şikaýat etmegiň ýoly.
4) "Ýumşak" ädim-ädim (step-ups) we kontekst
Geo-conflict (IP ≠ KYC) → GPS/SIM ýa-da proof address (L2) soragy.
Depozit synanyşanda High-risk BIN/emitent → mejbury durmuş.
"Velocity "/multiakkounting → çykarylanda" SoF "gaýtadan selfi.
PER/sanksiýalar (fuzzy) → SoF/SoW we el barlagy bilen L3.
5) Mikro-UX: sürtünmegi nädip azaltmaly
Ädime çenli: "Näme taýýarlaň? ~ 2 minut, pasport/ID we gowy yşyklandyryş".
Resminamany ele almak: maska çarçuwasy, parlama detekti, ýaşyl çek markalary "surat okalýar/burç tekiz".
Lokal OCR-preview: wizual barlamak üçin birnäçe meýdany yşyklandyryň.
NFC-maslahatlar: belli bir ýurt/blank üçin çipiň ýerleşýän ýeri boýunça maglumat.
Liveness-nawigasiýa: tekstsiz ýönekeý meseleler - piktogrammalar + gysga söz.
Agyrysyz retry: öňegidişligi ýitirmän ädimiňizi gaýtalaň; taýmer bilen synanyşyklaryň çäkleri.
Gizlinlik goragy: "Surat şifrlenendir. EXIF/UI ýazgylarynda maglumat ýok".
6) Lokalizasiýa we elýeterlilik
Görkezmeleriň, resminamalaryň mysallarynyň we rugsat berilýän formatlaryň doly terjimesi.
RTL, uly şriftleri, 'aria-labels', klawiatura nawigasiýasyny goldamak.
Ýurt boýunça tassyklamalar (salgynyň görnüşi, ID-maskalar), telefonlar üçin - E.164.
Ýerli dildäki mysallar: "Mysal: Puşkin köçesi, 10, 5-nji jaý".
7) Gizlinlik, saklamak we razylyk
Anyk ylalaşyklar: maksat (KYC/AML), saklanyş möhleti, aýyrmak/şikaýat etmek hukugy.
Maglumatlary azaltmak: PAN/EXIF-i gizlemek üçin bellikleri/hashlary mümkin bolan ýerlerde saklamak.
Aýyrmak/gaýtadan işlemek syýasaty: L0-L1 gysgaça, L2-L3 kanun/ygtyýarnama boýunça has uzyn.
Audit-trail: kim/haçan tomaşa etdi/karar berdi; üýtgewsiz girelgeler.
8) In engineeringenerçilik: wakalar we maglumatlaryň modeli (iň az)
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) Pseudo-DSL syýasatlary (mysal)
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) Metrikler we daşbordlar
Öwrülişik/tizlik
KYC Start → Auto-Pass → Manual Review → Approved
Median/95p we ýurtlar boýunça wagt-to-KYC
Awto-pass% (OCR/MRZ/NFC/liveness) we eliň paýy
Hili/töwekgelçiligi
Mismatch rate (IP ≠ KYC/SIM) we eskalasiýalaryň paýy
False Reject% (şikaýat → tersine)
PEP/Sanctions hit rate we TAT
UX/Ýalňyşlyklar
Abandonment на шагах (Doc Capture, Liveness, Upload, Review)
Retry-rate we sebäpler
Mobile vs Desktop: Üstünlik we wagt deltasy
11) Alertler we bosagalar
Ädimde abandonment spike (ösüş> X bps sagatda)
OCR quality drop (quality_score p50 Auto-pass collapse: güýz> Y% d/d Manual backlog: TAT> SLA (gyzyl zolak) Sanctions provider down: Wagtlar, arka tarapa geçmek 12) SQL şablonlary 12. 1. KYC hunisi 12. 2. Awto-barlagdan öň wagt 12. 3. Işgärleriň hili we retraýalaryň sebäpleri 13) Anti-frod signallary ("tigirlere taýaksyz") Device-graph we gaýtalanýan selfi/resminamalar → L2/L3 ýuwaş eskalasiýa. 14) Iň oňat amallar (gysgaça) 1. Waka üçin dizaýn: KYC ulanyjynyň gymmaty alýan ýerinde (depozit/çykarmak/çäk). 15) Girizmegiň çek-sanawy Pes sürtülýän KYC-UX töwekgelçilikli esasy güýçlenme, "akylly" tutmak tehnologiýalary (OCR/NFC/liveness), lokallaşdyrylan görkezmeler we güýçli resume tejribesi. Aç-açan möhletleri, maglumatlaryň minimallaşdyrylmagyny we öňünden aýdyp boljak ädim-ädimleri goşuň - şol bir wagtyň özünde goýumlaryň/girdejileriň öwrülişigini ýokarlandyrýarsyňyz, laýyklygy çaltlaşdyrarsyňyz we el bilen barlamak üçin amal çykdajylaryny azaldarsyňyz.NFC fail surge ýurt boýunça/blanka
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;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;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;
Geo-velocity (ýurduň üýtgemegi) → OCR-siz täzeden ýaşamak.
BIN-geo mismatch → liveness depozitde, tutuş KYC-flowy bozmak däl.
VPN/Proxy/Tor → gadagançylyga alternatiw signal (GPS/SIM) üçin ýumşak haýyş.
2. Awto-kapçer + live-maslahatlar; OCR/NFC we mümkin boldugyça passiw liveness.
3. Step-up diňe signallar (geo/conflict/velocity/sanksiýalar) we mukdar çäkleri boýunça.
4. Güýçli resume-tejribe: "Şol ädimden dowam et", habarlarda/SMS-de çuňňur baglanyşyklar.
5. Hemme ýerde SLA taýmerleri we dogruçyl statuslar.
6. Lokalizasiýa/a11u: tekstler, mysallar, formatlar, RTL.
7. Gizlinlik: minimallaşdyrmak, şifrlemek, düşnükli ylalaşyklar, retenşn-syýasatlar.
8. Telemetriýa we hil taýdan alertler (şöhle/bulaşyk/NFC).
9. A/B synaglary/gollanmalar/şowsuzlyklar boýunça guardrails bilen ädimleriň tertibi.
10. Takyk TAT bilen şikaýat we el bilen barlamagyň dok-proseduralary.
Jemleme