Net Deposits: hesablama və nəzarət
1) Net Depozitlər nədir və niyə lazımdır
Net Deposits (ND) bütün «geri» pul axınlarının hesablanmasından sonrakı dövr üçün təmiz istifadəçi əlavələridir. Metrika üçün kritikdir:- birlik iqtisadiyyatı (LTV, ARPPU, NGR ilə ND korrelyasiyası),
- məsuliyyətli oyun (limitlər, özünü nəzarət, vəsait mənbəyi),
- risk və uyğunluq (AML/sanksiyalar, anomaliyalar),
- əməliyyatlar (ödənişlərin prioritetləşdirilməsi və antiabyuz bonusları).
Əsas fikir
Oyunçu X (deposits) daxil etdi, Y (withdrawals) çıxardı. Ekosistemdə oyunçunun «həqiqətən yatırılmış pulu» kimi qalan hər şey geri qaytarmalar, çarjbeklər, ləğv etmələr və digər texniki əməliyyatlara uyğunlaşdırılmış Net Deposits-dir.
2) Uçot formulları və sərhədləri
2. 1. Əsas formula (məhsul səviyyəsi)
ND = Deposits
− Withdrawals − (successful, paid)
− Refunded Deposits
+ Chargeback Debits
− Chargeback Credits
± Reversal Adjustments
İzahat:
- Deposits - yalnız müvəffəqiyyətlə hesablanmış (captured/settled). Sonrakı capture olmadan avtorizasiya - hesab etmirik.
- Withdrawals - yalnız ödənilənləri nəzərə alın (paid/settled). Rədd edilmiş/ləğv edilmiş ND müraciətləri azalmır.
- Refunded Deposits - depozitin eyni mənbəyə qaytarılması (same-method).
- Chargeback Debits/Credits - təmiz mübahisə effekti (debet/geri qaytarma).
- Reversal Adjustments - texniki düzəlişlər (məsələn, «səhv» pul kisəsindən geri qaytarma, yüz dublikat).
2. 2. Mühasibat uçotunun genişləndirilməsi
Bonuslar və Free Bets: Deposits daxil deyil; bunlar daxili kreditlərdir. Lakin abuse ssenariləri (bonus üçün depozit → ani cash-out) ND-ni sürətli Withdrawals və/və ya antifraud korreksiyaları vasitəsilə azaltmalıdır.
PSP komissiyaları: Default ND-dən çıxılmır (ND - «mərkəzi-oyunçu» metrikası). Komissiyalar - P&L.
Internal Transfer/Cross-Wallet (idman → casino): ND dəyişmir (bu balans daxilində hərəkət edir).
Cancel Withdrawal: Ləğv ND-ni azaltmır (nəticə baş vermədi).
Promotional Cashout/Manual Credit: Operator pul kreditləri ND artırmır.
Tokenlər/kriptovalyutalar: fiat ekvivalenti ilə settle (bax multivalyutası).
Partial/Split Payments: ND həqiqətən settled olan məbləğdə artır.
2. 3. Dövrün sərhədləri
ND «kəsmə» variantları:- Activity-based ('settled _ at' əməliyyatları üzrə). Maliyyə hesabatları üçün tövsiyə olunur.
- Request-based ('created _ at '/' requested _ at'): Sürətli məhsul analitikası üçün uyğundur, lakin müqayisə üçün deyil.
3) Multivalyuta və kursların qiymətləndirilməsi
Bütün əməliyyatlar hesabat valyutasında (məsələn, EUR) settle zamanı məzənnə ilə aparılır.
Фиксируйте: `amount_original`, `currency_original`, `fx_rate_at_settle`, `amount_reporting`.
Kripto üçün: 'settled _ at' üçün seçilmiş mənbədə orta çəkili qiymətdən (VWAP) istifadə edin.
Kursları dəyişərkən tarixi ND-ləri çox qiymətləndirməyin: hadisə zamanı faktiki FX saxlayın.
4) ND rol səviyyələri
ND_user - müəyyən bir oyunçunun xalis investisiyalarıdır.
ND_segment - ölkələr, kanallar, ödəniş provayderləri, affiliatlar vasitəsilə.
ND_cohort - qeydiyyat/ilk depozit tarixlərinə görə.
ND_platform - dövr üçün ümumi ND platforması.
5) Siyasət və istisnalar
5. 1. Same-method qaydası və mənbəyə qayıdış
Depozit M metodu ilə gəldiyində, depozit vəsaitlərinin geri qaytarılması net-depozit məbləğinə qədər M vasitəsilə etmək daha yaxşıdır. Bu AML və mübahisəli cross ödəniş risklərini azaldır.
5. 2. Daxili düzəlişlər
Hər hansı bir əl düzəliş reason_code, audit trail və ilkin əməliyyat link olmalıdır.
Düzəlişlər loss-chasing/abuse maskası olmamalıdır.
5. 3. Bonus dövrləri
Bayraqla «bonus-driven ND» (bonusu aktivləşdirən depozit) qeyd edin. Bonus bağlı depozitlər ilə/olmadan ND hesabatlarını qurun.
6) Hadisə modeli və məlumat sxemi
6. 1. Əsas hadisələr
`DEPOSIT_AUTHORIZED`, `DEPOSIT_CAPTURED`, `DEPOSIT_REFUNDED`
`WITHDRAWAL_REQUESTED`, `WITHDRAWAL_PAID`, `WITHDRAWAL_REJECTED`, `WITHDRAWAL_CANCELED`
`CHARGEBACK_DEBITED`, `CHARGEBACK_CREDITED`
`ADJUSTMENT_APPLIED` (тип: REVERSAL, TECH_FIX, FRAUD_CORRECTION и т. п.)
Bütün hadisələr idempotentdir ('idempotency _ key', 'event _ id'). 'event _ id' deduplication vasitəsilə DWH-yə exactly-once çatdırılmasını dəstəkləyin.
6. 2. Mini sxem (sadələşdirilmiş)
payments. transactions (
id, user_id, provider, method, type, status,
amount_original, currency_original,
amount_reporting, reporting_currency, fx_rate_at_settle,
requested_at, settled_at, related_tx_id, reason_code, meta
)
types: DEPOSIT WITHDRAWAL REFUND CHARGEBACK_DEBIT CHARGEBACK_CREDIT ADJUSTMENT status: PENDING AUTHORIZED CAPTURED PAID REJECTED CANCELED REFUNDED SETTLED
ND üzrə nəticələr «type» və «status» filtrləri ilə «yalnız settled/paid/captured, harada tətbiq olunur» aqreqasiyası hesab olunur.
7) Data keyfiyyətinə nəzarət və yoxlama
7. 1. PSP/Acquirer ilə müqayisə
PSP hesabatlarının gündəlik yoxlanılması (settlement files) sizin 'transactions' ilə.
Matçlar 'provider _ ref', məbləğlər, tarixlər, valyutalar və fee (P&L üçün).
Ops biletlərindəki uyğunsuzluqlar: «missing capture», «double refund», «late presentment».
7. 2. Antidubl və idempotentlik
Nəzarət: unikallığı '(provider, provider_tx_id, type, settle_date)'.
Əl əməliyyatları üzrə ayrı audit log ('ADJUSTMENT _ APPLIED').
7. 3. Biznes qaydalarının bütövlüyü
Seçilmiş metodda depozit tarixi olmayan 'PAID' çıxışı qırmızı bayraqdır.
Eyni məbləğə yaxın 'DEPOSIT _ CAPTURED' → 'WITHDRAWAL _ PAID' - boz bayraq (bonus-abuse).
8) Hesabat və daşbordlar
8. 1. Əsas KPI
'ND _ total'; 'ND _ per _ user', 'ND _ median';
ND-nin ölkələr, metodlar, PSP, affiliatlar üzrə parçalanması;
'ND _ 7/30/90' qeydiyyat kohortları üzrə;
Cash Conversion Lag: mediana 'DEPOSIT _ CAPTURED' -dən 'WITHDRAWAL _ PAID' -ə qədər.
8. 2. Risk seqmentləri
'ND ≈ 0' və yüksək dövriyyəli oyunçular - vəsaitin mənbəyini yoxlamaq üçün namizədlər.
Sürətli dönüş (deposit → withdrawal) <N saat - istintaq tetikleyici.
8. 3. Analitika müstəviləri
Məhsul (idman/casino/live): harada ND ən «sağlam».
Ödəniş metodları: ND-nin xüsusi bir üsulla sərbəst trafikdə uğursuzluqları.
Kampaniyalar/bonuslar: ND-uplift və post-effekt ləğv.
9) Antifrod və məsuliyyətli oyun siyasəti
Depozit limitləri (daily/weekly/monthly) - ND hesabatlarında fərdi uyğunluq metrikası ilə.
Velocity qaydaları: n depozitlər> Y dəqiqə üçün X + sürətli cashout = blok/manual yoxlama.
Sanksiyalar/PEP/SoF: ND artımı həddindən yuxarı → Vəsaitlərin məcburi mənbəyi.
Mullokalizasiya: geo/metod/bank ölkəsini KYC ölkəsi ilə müqayisə edin.
Self-exclusion: ND istisnadan sonra ciddi 0 olmalıdır; hər hansı bir cəhd - alert.
10) Proseslər və SLO
ND dashboard hesablanması SLO: T + 1, yerli TZ hesabat zonasının 09: 00-a qədər hazırlıq.
Hadisələr: aşağıdakı hallarda P1 prioritetini aşağı salın:- PSP settlement faylları buraxılıb,
- dublikatlar səhv ND seqmentinə səbəb olur,
- FX kütləvi uyğunsuzluqlar.
- DRP: determinated sifariş ilə bir dövr üçün hadisələrin re-ingest vasitəsilə ND reprocessing.
11) SQL nümunələri (şablonlar)
11. 1. ND-nin istifadəçi və gün üzrə hesablanması
sql
WITH base AS (
SELECT user_id,
DATE(settled_at) AS d,
SUM(CASE WHEN type='DEPOSIT' AND status IN ('CAPTURED','SETTLED') THEN amount_reporting ELSE 0 END) AS dep,
SUM(CASE WHEN type='WITHDRAWAL' AND status='PAID' THEN amount_reporting ELSE 0 END) AS wd,
SUM(CASE WHEN type='REFUND' AND status='SETTLED' THEN amount_reporting ELSE 0 END) AS ref_dep,
SUM(CASE WHEN type='CHARGEBACK_DEBIT' AND status='SETTLED' THEN amount_reporting ELSE 0 END) AS cb_deb,
SUM(CASE WHEN type='CHARGEBACK_CREDIT' AND status='SETTLED' THEN amount_reporting ELSE 0 END) AS cb_cr
FROM dw. transactions_flat
WHERE settled_at >=:from AND settled_at <:to
GROUP BY 1,2
)
SELECT user_id, d,
dep - wd - ref_dep + cb_deb - cb_cr AS nd
FROM base;
11. 2. Sürətli dönüş bayrağı (sui-qəsd)
sql
SELECT t_dep. user_id, t_dep. id AS dep_id, t_wd. id AS wd_id,
EXTRACT(EPOCH FROM (t_wd. settled_at - t_dep. settled_at))/3600 AS hours_between,
t_dep. amount_reporting, t_wd. amount_reporting
FROM dw. transactions_flat t_dep
JOIN dw. transactions_flat t_wd
ON t_dep. user_id = t_wd. user_id
AND t_wd. type='WITHDRAWAL' AND t_wd. status='PAID'
AND t_wd. amount_reporting BETWEEN t_dep. amount_reporting0. 9 AND t_dep. amount_reporting1. 1
WHERE t_dep. type='DEPOSIT' AND t_dep. status IN ('CAPTURED','SETTLED')
AND t_wd. settled_at - t_dep. settled_at <= INTERVAL '24 hours';
11. 3. Metodlara görə seqmentasiya/PSP
sql
SELECT method, provider,
SUM(CASE WHEN type='DEPOSIT' AND status IN ('CAPTURED','SETTLED') THEN amount_reporting ELSE 0 END) AS dep,
SUM(CASE WHEN type='WITHDRAWAL' AND status='PAID' THEN amount_reporting ELSE 0 END) AS wd,
SUM(CASE WHEN type='REFUND' AND status='SETTLED' THEN amount_reporting ELSE 0 END) AS ref_dep,
SUM(CASE WHEN type='CHARGEBACK_DEBIT' AND status='SETTLED' THEN amount_reporting ELSE 0 END) AS cb_deb,
SUM(CASE WHEN type='CHARGEBACK_CREDIT' AND status='SETTLED' THEN amount_reporting ELSE 0 END) AS cb_cr,
SUM(CASE WHEN type='DEPOSIT' AND status IN ('CAPTURED','SETTLED') THEN amount_reporting ELSE 0 END)
- SUM(CASE WHEN type='WITHDRAWAL' AND status='PAID' THEN amount_reporting ELSE 0 END)
- SUM(CASE WHEN type='REFUND' AND status='SETTLED' THEN amount_reporting ELSE 0 END)
+ SUM(CASE WHEN type='CHARGEBACK_DEBIT' AND status='SETTLED' THEN amount_reporting ELSE 0 END)
- SUM(CASE WHEN type='CHARGEBACK_CREDIT' AND status='SETTLED' THEN amount_reporting ELSE 0 END) AS nd
FROM dw. transactions_flat
WHERE settled_at BETWEEN:from AND:to
GROUP BY 1,2
ORDER BY nd DESC;
12) Alertlər və triggerlər (əməliyyat otağı)
Spike ND ↓ metodu ilə: ND düşməsi> 30% d/d - PSP hadisələri və kilidləri yoxlamaq.
Spike ND ↑ seqment üzrə: ND artımı> 50% w/w - ehtimal ki, yeni aff. - mənbə və ya sxem qucaqladı.
ND ≈ 0 yüksək dövriyyədə - məcburi KYC/SoF-yoxlama.
ND-də anormal Refund/Chargeback payı - «depozit → oyun → çıxış» zəncirinin auditi.
13) Best practices (qısa)
1. ND-ni settle tarixləri ilə hesablayın və FX-ni settle anında qeyd edin.
2. Ciddi oyunçu pul internal transfer ayırmaq.
3. Bütün əl düzəlişləri - reason_code və auditlə.
4. Sürətli dönüşlər və çarpaz üsullar üçün antifrod qaydaları.
5. İki hesabat: əməliyyat T + 1 və maliyyə bağlayıcı (ay/rüb).
6. Məntiq versiyası: Tarixi vitrinlərin miqrasiyası ilə ND v1/v2.
14) Tez-tez suallar
S: Ləğv edilmiş nəticələr nəzərə alınırmı?
A: Yox. Yalnız 'WITHDRAWAL _ PAID' ND-ni azaldır.
S: Səlahiyyətli, lakin ələ keçirilməyən əmanətlə nə etmək lazımdır?
A: ND daxil deyil. Bunlar real gəlirlər deyil.
Q: Artıq çıxarıldıqdan sonra chargeback necə əks etdirilir?
A: 'CHARGEBACK _ DEBIT' oyunçunun mənfi töhfəsini əlavə edəcək (əslində platforma itirir), ND debet artacaq, lakin son maliyyə hesabatı da Çarjback itkisini/xərcini göstərməlidir.
Q: ND-dən PSP komissiyasını çıxmaq lazımdırmı?
A: Yox, ND - oyunçu-mərkəzi metrika. Komissiyalar - P&L.
15) Giriş çek siyahısı
- İdempotentlik və çatdırılma zəmanəti ilə hadisə şinası
- Vahid tipli/statuslu vitrin 'transactions _ flat'
- FX-normallaşdırma settle, orijinal saxlama
- PSP status mapping qaydaları → status
- PSP və Delta Alerts ilə gündəlik yoxlama
- ND daşbordları (ümumi, metodlara, seqmentlərə, kohortlara görə)
- ND əsaslı məsuliyyətli oyun siyasətləri və SoF tetikleyiciləri
- ND v1 düsturunun sənədləşdirilməsi və v2 təkamül planı
Xülasə
Net Deposits - sistemdə oyunçunun «real» pulunun mərkəzi metrikası. Düzgün ND ciddi tanınma qaydaları (settle-date), səliqəli multivalyuta, hadisə idempotentliyi, PSP və daxili antifrod tetikleyiciləri ilə müntəzəm müqayisə tələb edir. Vahid status kitabçasını və əməliyyatların tipologiyasını formalaşdırın - və ND həm maliyyə, həm də məsuliyyətli monetizasiya üçün etibarlı dayaq olacaq.