Velocity-limitlar va anti-abyuz
1) Velocity nima va nima uchun kerak
Velocity limitlari - bu belgilangan vaqt oynalari uchun operatsiyalarning chastotasi va hajmiga cheklovlar. Maqsad:- bonuslar/promolarning frodini va ulardan foydalanishni kamaytirish,
- to’lov infratuzilmasini retraylarning «bo’ronlari» dan himoya qilish,
- mumkin bo’lgan joyda «qattiq rad etish» o’rniga shubhali urinishlarni challenjga (3DS/SCA) o’tkazib, sog’lom konversiyani ushlab turish.
Velocity-nazoratlarni skoring, AVS/CVV, 3DS2/SCA va smart-routing to’ldiradi.
2) Qanday mohiyatlarni cheklash (scopes)
Bir vaqtning o’zida bir nechta darajadagi limitlarni loyihalashtiring:- To’lov mohiyati:’card _ token’(vault/network),’bin’,’issuer’,’psp _ route’.
- Foydalanuvchi:’account _ id’,’kyc _ level’,’email/phone’.
- Texnik:’device _ id’(fingerprint/SDK),’ip’,’asn’,’session _ id’.
- Biznes kontekst:’bonus _ id’,’campaign _ id’,’country’,’mcc 7995’kichik turi (depozit/chiqarish).
- Moliyaviy:’amount _ bucket’(mikro/o’rta/yirik),’currency’,’payment _ method’.
3) Derazalar va hisoblagichlar
Fixed window (T = 15m/1h/24h) - oddiy, lekin chegaralarga sezgir.
Sliding window - aniqrog’i, «siljish» oralig’i bo’yicha hisoblaydi.
Leaky bucket/Token bucket - portlashlarni tekislash, barqaror o’tkazish qobiliyatini berish.
Kombinatsiyalangan: burst (qisqa portlash) + sustained (uzoq oqim).
- ’device _ id’: ≤ 15 daqiqada 3 ta avtorizatsiya urinishi; 24 soat ichida 10 ta ≤.
- ’card _ token’: ≤ 2 decline ketma-ket 3DSsiz; uchinchisi - majburiy 3DS.
- ’ip’: ≤ 1 soat ichida 5 noyob’card _ token’(aks holda - kapcha/blok).
- ’account _ id’: ≤ ketma-ket bekor qilingan 2 ta depozit; keyingi o’rinlarda kuldaun deb ataladi 1 soat.
4) Cheklashlar algoritmlari (qisqacha)
Token Bucket (ruxsat beradi):- ’capacity’ va’refill _ rate’ni ishga tushiring.
- Har bir urinishdan oldin 1 ta tokenni olib tashlang; agar tokenlar boʻlmasa - challenge/decline.
- Navbat doimiy tezlikda oqadi; kelayotgan voqealar - throttle.
- 1-takrorlash: 2-5 daqiqa → 2-o’rin: 10-20 daqiqa → 3-o’rin: 1-2 soat → to’xtash yoki muqobil usulga o’tkazish.
5) Qarorlar siyosati (decisioning)
Velocity tekshirish natijalarini tasniflang:- Allow: past xavf, chegaralar doirasida.
- Challenge: yumshoq chegaradan oshib ketdi → 3DS/SCA/kapcha/KBA (savollar).
- Throttle: shaffof UX bilan vaqtincha cheklash.
- Decline: qo’pol qoidabuzarliklar (kartalarni ommaviy ravishda tortib olish, bot-pullar, bonus-abyuz).
- Reroute: PSP/usulni (masalan, A2A) emitentning’91/96’i ko’tarilganda almashtirish.
Namunalarning mini-matritsasi
’device _ id’ ≥ 3 daqiqada 15 urinishlar va’cvv = N’≥ 2 → Decline + kapcha.
’card _ token’ 2 soft-decline ketma-ket → 3DS-challenge (majburiy).
’ip’ ≥ 5 noyob’account _ id’30 daqiqada → Throttle 30 min + KYC-tekshirish.
’account _ id’ depozit-jo’nash-depozit 10 min (karusel) → Challenge yoki summa bo’yicha limit.
6) Depozitlar, retraylar va xulosalar uchun Velocity
Depozitlar:- Mikro-to’ldirishni himoya qiling (ko’plab kichik tranzaksiyalar): T. uchun miqdor va umumiy aylanma limiti.
- ’05 ’/’ 14 ’/’ 54’ qatorida - rekvizitlarni «ortiqcha» to’xtatib, 3DSga o’tkazing.
- CIT va MIT navbatlarini tarqating. MIT uchun yumshoq T + 1/T + 24h oynalaridan foydalaning.
- Soft-decline’SCA required’→ darhol 3DS, urinishlarni yoqmang.
- Summa/chastota uchun alohida limitlar: masalan, 2 ≤/24h va summa/hafta bo’yicha N ≤.
- KYC «zinapoyasi»: tekshirish qanchalik yuqori boʻlsa, chegaralar shunchalik yuqori boʻladi.
- «circling» detekti: tezkor depozit va tezkor hisobdan chiqarish - manual review/hold.
7) Anti-abyuz promo va bonuslar
Per-campaign caps:’bonus _ id’≤’device _ id ’/’ ip ’/’ payment _ fingerprint’.
«Vilkalar» (hisoblar o’rtasida pul o’tkazish): umumiy xaritalar/IP/qurilmalarning grafik-tahlili.
Cool-off windows: bonus-depozitdan so’ng - ToS-da bir zumda chiqarib yuborishni taqiqlash, shaffof qoidalar.
Darajalar bo’yicha sanksiyalar: vaqtinchalik blokirovkalardan «abadiy» gacha, sabablar jurnali bilan.
8) Arxitektura: velocity-qoidalar bilan qayerda yashash kerak
Real-time shlyuz (orkestratorda): yechim ≤ 50-100 ms.
Hisoblagichlar ombori: in-memory (Redis/KeyDB) + uzoq muddatli «maʼlumotlar» (DWH).
Fichestor: yagona oynalar/agregatlar (15m/1h/24h/7d).
Rule engine + ML skoring: «safety-net» model ustidagi qoidalar.
bayroqlari: «3DS yoqish», «X mintaqasida qattiqroq», «PSP-A pauza».
Idempotentlik: takrorlash/taymautlarda dublikatlardan himoya qilish.
9) Qoidalarning soxta hujjati (eskiz)
pseudo on payment_attempt(ctx):
s = features(ctx) // device/ip/account/bin/score/avs/cvv/history if counter(device, 15m) >= 3 and cvv_fail(device, 15m) >= 2:
return DECLINE(reason="velocity_device_cvv")
if soft_declines(card_token, 1h) >= 2:
return CHALLENGE_3DS()
if uniq_accounts(ip, 30m) >= 5:
return THROTTLE(ttl=30m)
if score > T2 and velocity(account, 1h) > Vmax:
return DECLINE(reason="high_risk_burst")
return ALLOW
10) UX-patternlar (konversiyani buzmasdan)
Aniq xabarlar: "Qisqa vaqt ichida juda ko’p urinishlar bo’ldi. 15 daqiqadan keyin sinab ko’ring yoki bankda tasdiqlang".
Taymer bilan «Keyinroq takrorlash» tugmasi.
Alternativlar taklifi: A2A/trottling uchun mahalliy hamyonlar.
Avto-3DS SCA-soft da rekvizitlarni qayta kiritmasdan.
Kapcha faqat nuqtali (IP/ASN/bot-signallar bo’yicha), hamma uchun emas.
11) Komplayens va maxfiylik
GDPR/PII: minimal identifikatorlarni (xeshlar, xarita tokenlari, last4), shaffof siyosatlarni saqlang.
PCI DSS: loglarda PAN/CVV yo’q; sensorli maʼlumotlarsiz velocity hodisalari.
PSD2/SCA: ortiqchalarni to’liq rad etish o’rniga kerakli joyga challenge’ga o’tkazing.
12) Metriklar, alertlar, SLO
KPI:- Approval Rate (umumiy va qoidalar ishga tushganda).
- False Positive Rate velocity qoidalari (halol bloklar ulushi → keyinchalik qonuniyligi bo’yicha).
- «Bo’ronlar» soni va tiklanishning o’rtacha vaqti.
- Muvaffaqiyatli natijaga erishgan decline → challenge tarjimalari ulushi.
- Limitlar ishlagan segmentlarda Chargeback rate (biz kutmoqdamiz).
- Spayk’05/14/54’+ BIN/ASN klasterida 15 daqiqada urinishlarning ko’payishi> X.
- Splash’91/96’→ avto-oshirish chegarasi T1 + routing PSP-B.
- FP-rate qoidalari> maqsadli (masalan, 1. 5 × bir haftalik medianlar).
- Velocity bo’yicha yechim ≤ 100 ms p95.
- Maqsadli ≥ rad etish o’rniga 3DSga o’tkazilgan muvaffaqiyatli to’lovlar ulushi.
13) Anti-patternlar
Barcha bozorlar va mijozlar turlari uchun universal «umumiy» limit.
’AVS = U/S/G’ ni to’sib qo’yish.
CIT/MIT bilan boʻlishmaslik - obuna/takrorlashni buzadi.
Jitter va idempotentsiz - dubli va bo’ronlar.
Rad etish sabablarini yashirish - sapport va toksiklik o’sadi.
14) Joriy etish chek-varaqasi
- Mavjudotlar xaritasi (scopes) va derazalar (15m/1h/24h/7d).
- Algoritmlarni tanlash: sliding + token bucket uchun bursts.
- Retraylarni normallashtirish: backoff + jitter, CIT/MIT uchun alohida.
- 3DS/SCA bilan integratsiya: avto-challenge yumshoq ortiqcha.
- Xulosalar va bonuslar uchun alohida limitlar; aloqalarni tekshirish grafasi.
- Kuzatish darajasi: KPI dashbordlari/alertlar/qoidalar auditi.
- UX xabar namunalari va muqobil usullar.
- PCI/GDPR siyosati: tokenlar, niqoblash, PIIni minimallashtirish.
- /BIN/ASN bozorlari va mijozlar profillari bo’yicha A/B testlari.
- Hodisalar pleybuklari: emitent/PSP degradatsiyasi, botlarning ko’payishi.
15) Xulosa
Samarali velocity-limitlar - bu ko’p darajali deraza va hisoblagichlar, yumshatish algoritmlari (token/leaky bucket), aqlli retraylar va 3DS/SCA va skoring bilan yaqin bog’lanish. Bunday kontur frod va abyuzni kamaytiradi, konversiyani bo’g "imaydi va emitentlar va trafikning o’zgaruvchanligi bilan monetizatsiyani barqaror saqlashga yordam beradi.