Xəzinədarlıq: likvidlik və ehtiyatlar
TL; DR
iGaming-də xəzinədarlıq - giriş/çıxış üçün müxtəlif SLA-lara malik idarəolunan likvidlik «cibləri» şəbəkəsidir (banklar, PSP, pul kisələri, kriptovalyutalar, ticarət hesabları). Məqsəd - minimum xərclə sıfır kassa boşluqları: dəqiq axın proqnozu, qarşı tərəflər və valyutalar üzrə limitlər, ehtiyat siyasəti (əməliyyat buferləri + tənzimləyici safeguarding + stress ehtiyatı), prefunding və sweep qaydaları intizamı, Time-to-Payout SLO və Time-to-Fund
1) Likvidlik kartı: səviyyələr, ciblər, axınlar
1. 1 Likvidlik səviyyələri (əlçatanlığa görə)
L0 (T0) - ani likvidlik: alış-veriş hesablarındakı əməliyyat qalıqları, instant A2A/RTP, pul kisələri, stable ehtiyatları, payout T0 üçün nağd buferlər.
L1 (T + 1... T + 3) - qısa üfüqün likvidliyi: PSP/ekvayerlərin hesablaşma hesabları, gündəlik limitləri olan bank cari hesabları.
L2 (T + 5... T + 10) - orta üfüqün likvidliyi: depozit/əmanət hesabları, xəzinə alətlərinə sviplər (T-bills, MMF), sürətli off-ramp ilə kastodidə stabillərin «dayanacağı».
L3 (T + 10 +) - strateji likvidlik/kapital: uzun depozitlər, istiqrazlar, ayrılmış kapital.
1. 2 Likvidlik cibləri (nümunə)
Bank_OPS (əməliyyat bankı): fiat giriş/çıxış, əmək haqqı, vergilər.
PSP_MERCHANT: metodlara görə ticarət hesabları (Card, A2A, Wallet).
PSP_SETTLEMENT: hesablaşma/akkumulyasiya hesabları (T + N).
CRYPTO_CUSTODY: on-chain/kastodi, stabillər və əsas aktivlər.
PAYOUT_POOLS: ani ödənişlər üçün ayrı hovuzlar.
SAFEGUARD_ACCOUNTS: tənzimləyici/lisenziya tələblərinə görə bölünmüş hesablar.
1. 3 Əsas axınlar
`Deposits → PSP_MERCHANT → Settlement → Bank_OPS`
`Bank_OPS → Payout_Pools/PSP → Withdrawals`
`On/Off-ramp ↔ Crypto_Custody`
'Sweeps: L0, L1, L2' cədvəli və tetik.
2) Likvidlik və ehtiyatlar siyasəti
2. 1 Məqsədlər
Kritik ödəniş relslərində sıfır kassa boşluqları.
Likvidliyə sahib olmağın minimum dəyəri (komissiyalar, FX, itirilmiş gəlir).
Tənzimləyiciyə uyğunluq: safeguarding, müştəri vəsaitlərinin bölünməsi (harada tətbiq olunur).
Şəffaflıq: SLO ilə gündəlik yoxlama və daşbordlar.
2. 2 Ehtiyat sinfi
1. Əməliyyat ehtiyatı (OpRes) - payout-pik və settlement dəyişkənliyini əhatə edir (məsələn, p99 günlük net çıxış + bufer 20-30%).
2. Tənzimləyici ehtiyat (RegRes) - lisenziyanın tələb etdiyi məbləğlər (segregated, safeguarding, ring-fencing).
3. Stress-ehtiyat (StressRes) - nadir şokları əhatə edir: «ikiqat» pik çıxış, açar PSP-də T + N gecikməsi, FX-şok.
4. Texniki ehtiyat (TechRes) - feylover/insidentlər üçün (saytın/birjanın/bankın dondurulması).
2. 3 Cibinizə görə hədəf qalıq formulu
Target_Balance = OpRes(p99 horizon H) + RegRes + StressRes - Incoming_Settlement(T_window)
Horizon H və T_window pəncərə relsdən asılıdır (məsələn, RTP H = 1d, Card H = 3d).
3) Kassa axınlarının proqnozlaşdırılması
3. 1 Giriş sıraları
Deposits by method/provider (p7/p30 mövsümlük, həftənin günləri, promosyonlar).
Withdrawals & Payouts (depozitlərin sürəti və payı, VIP/cekpotlar).
Settlement schedules (PSP/ekvayerlər üzrə T + N).
FX təqvimi (yenidən qiymətləndirmə, böyük konvertasiya).
Əməliyyat ödənişləri (vergilər, komissiyalar, maaşlar).
3. 2 Model (minimum)
Depo/nəticələr üçün lokal balanslı və ya SARIMA/Prophet.
Tətbiqi əmsallar: «Cash-out Rate», «Jackpot Probability», «Promo Lift».
Net cib mövqeyi: 'Inflow _ psp _ settlement − Outflow_payouts ± Sweeps'.
3. 3 Proqnoz keyfiyyətinin göstəriciləri
MAPE/WAPE daily net.
Coverage: faktiki pik planlı OpRes ≤ gün payı.
Stockout Incidents: zaman L0 getdi <minimum eşik.
4) Prefunding, sweeps və doldurma qaydaları
4. 1 Prefunding (relslərin əvvəlcədən ödənilməsi)
Ani payout relslər və bəzi APM balans tələb edir.
Qayda: rolling-eşik saxlamaq (məsələn, p95 son həftənin gündəlik ödənişlər) + bufer 20%.
Avtomatik doldurma triggerləri: 'Balance <LowWatermark' → 'TopUp to Target_Balance'.
4. 2 Sweeps (svip tərcümələri)
Gündəlik: PSP_MERCHANT → Bank_OPS sonra settlement pəncərə.
Intradey: Hədəf dəhlizlərindən kənara çıxdıqda L0 L1.
L2 tərəfə: MMF/T-Bills/stablesdəki artıq qalıqların gecə swipi (L0 ≤ T + 1-ə qayıt siyasəti).
4. 3 Xərcləmə prioritetləri (waterfall)
1. Payout_Pools (T0 öhdəlikləri)
2. Sabit müddətli xəzinə ödənişləri (vergilər/əmək haqqı)
3. Çevirmə/rebalans FX
4. Investisiyalar L2/L3
5) Valyutalar, FX və faiz mühiti
FX-ekspozisiya: valyutalara daxil olan/gedən balans; natural hedge (eyni valyutada ödənişləri dəstəkləmək).
Konvertasiya siyasəti: Böyük məbləğlər üçün TWAP/POV-algo, bps slip limitləri, idempotent exec-id.
L2 faiz gəliri: MMF/qısa T-bills; kontragentlər üzrə məhdudiyyətlər və minimum likvidlik (T + 0/T + 1).
SLO FX konvertasiyaları: həlldən icraya qədər olan vaxt (p95 ≤ X dəqiqə), kotirovkaların jurnallaşdırılması.
6) Kontragent risk və limitlər
Kontragent üzrə limitlər: bank, PSP, kriptovalyuta, birja/OTS.
Reytinq matrisi: kapital/lisenziya/insidentlər/əlçatanlıq/Proof-of-Reserves (kripto üçün).
Diversifikasiya: kritik relsdə ən azı 2-3 provayder, klasterlər üzrə qalıqların paylanması.
Xüsusi siyasət: multisiq/HSM, çıxarış limitləri, ünvan allow vərəqələri, gündəlik yoxlamalar.
7) Tənzimləmə və uyğunlaşma aspektləri
Safeguarding/segregation: müştəri vəsaitləri üçün ayrı hesablar (lazım olduqda), balans izləmə, qarışdırma qadağası.
Hesabat: balans və ehtiyatlar üzrə tənzimləyiciyə/auditə gündəlik hesabatlar.
KYC/AML: on/off-ramp kontragentlər, sanksiya skrininqi, böyük köçürmələr üçün SoF/SoW.
DSAR/retention: ödəniş izlərinin və köçürmə jurnallarının saxlanması.
8) Metriklər, SLO və alertlər
8. 1 KPI
Time-to-Payout (TtP) p95 metodları ilə.
Pulların doldurulması üçün Time-to-Fund (TtF) p95.
Stockout Rate L0 (ani likvidlik çatışmazlığı hadisələri).
Cash Utilization = L0/ Target_Balance ödənişlər.
Idle Cash% = (Balans − Target_Balance )/Balans.
Counterparty Concentration = max (provayder payı).
FX Slippage bps, FX Cost/GGR.
Safeguard Coverage = min (ayrılmış hesabların balansı/tələb olunan məbləğ).
8. 2 Alertlər
'Balance <LowWatermark' → P1 (avtomatik doldurma).
'Stockout Incident' → P0 (ani ödənişlər bloku/alternativlərin daxil edilməsi).
'Counterparty Concentration> limit' → P2 (rebalance).
`Safeguard Coverage < 100%` → P0.
'TtF p95> SLO' → P1 (bank/PSP hadisəsi).
9) Məlumat modeli (xəzinə «qat»)
json
{
"as_of": "2025-11-03T12:00:00Z",
"pocket_id": "PSP_MERCHANT_CARD_A",
"currency": "EUR",
"balance": 425000. 00,
"target_balance": 380000. 00,
"low_watermark": 300000. 00,
"inflows_t0": 52000. 00,
"outflows_t0": 61000. 00,
"expected_settlement_t1": 210000. 00,
"safeguard_required": 150000. 00,
"safeguard_balance": 160000. 00,
"counterparty": "Acquirer_A",
"limits": {
"counterparty_limit": 1200000. 00,
"fx_slippage_bps_limit": 5
},
"alerts": ["BALANCE_BELOW_TARGET"],
"notes": "Expect promo cash-out spike tonight"
}
Düz faktiki qat (BI üçün):
date, pocket_id, counterparty, currency,
balance, target_balance, low_watermark,
inflows_t0, outflows_t0, expected_settlement_t1,
safeguard_required, safeguard_balance,
payout_slo_p95_sec, fund_slo_p95_sec
10) SQL dilimləri
10. 1 Qalıqların hərəkəti və dəhlizlərə düşməsi
sql
SELECT date,
pocket_id,
currency,
balance,
target_balance,
low_watermark,
CASE WHEN balance < low_watermark THEN 1 ELSE 0 END AS stockout_flag,
GREATEST(0, balance - target_balance) AS idle_cash
FROM treasury_balances_daily
ORDER BY date DESC, pocket_id;
10. 2 Kontragentlər üzrə konsentrasiya
sql
SELECT date,
counterparty,
SUM(balance) AS bal,
SUM(SUM(balance)) OVER (PARTITION BY date) AS bal_total,
(SUM(balance) / NULLIF(SUM(SUM(balance)) OVER (PARTITION BY date),0)) AS share
FROM treasury_balances_daily
GROUP BY 1,2
ORDER BY date DESC, share DESC;
10. 3 Safeguarding əhatə
sql
SELECT date, pocket_id, currency,
safeguard_balance, safeguard_required,
safeguard_balance / NULLIF(safeguard_required,0) AS coverage_ratio
FROM treasury_balances_daily
WHERE safeguard_required > 0;
11) Daşbord (minimum widget)
1. Heatmap cib: 'balance vs target vs low_watermark'.
2. Kassa hunisi: 'inflows/outflows/settlements' gün.
3. TtP/TtF p50/p95 metodları/provayderləri.
4. Counterparty concentration və alertlər.
5. Safeguard coverage: 100% xətt, pozuntular.
6. FX panel: slippage/dəyəri, böyük konvertasiya.
12) Playbook
Nəticələrin artması (cash-out wave)
Tədbirlər: Payout_Pools Target_Balance artırmaq, PSP → Bank _ OPS svipini sürətləndirmək, yüksək risk üçün çıxarış limitlərini müvəqqəti azaltmaq, ikinci instant ödəniş provayderini daxil etmək.
PSP-də gecikmə
Fəaliyyət: StressRes aktivləşdirmək, kredit xətti/overdraft açmaq, müvəqqəti olaraq alternativ relsdə ödənişləri yenidən bölüşdürmək, PSP-də eskalasiya.
Bankın/birjanın/kastodinin dondurulması
Hərəkətlər: kill-switch köçürmələri, alternativ kontragentlərə qalıqların köçürülməsi, DR planının işə salınması, açarların/girişlərin geri çağırılması, tənzimləyici ilə ünsiyyət.
FX-şok/valyuta tələbi
Fəaliyyət: Natural Hedge daxil (eyni valyutada ödənişlər), sürətləndirilmiş TWAP, «ev» valyutasında səhmləri/bonusları yenidən bölüşdürün.
Safeguard-örtük çatışmazlığı
Tədbirlər: ayrılmış hesaba dərhal vəsait köçürülməsi, məcburi ödənişlərin bloklanması, hesabat və tənzimləyiciyə təsdiq.
13) Test-cases (UAT/Prod-hazırlıq)
1. Stockout drill: p99 → hovuz L0 ödənişlərin pik simulyasiya ≥ low_watermark qalır.
2. PSP settlement delay: + 2 gün T + N → StressRes örtür, TtP SLO-dan kənara çıxmır.
3. FX TWAP idempotentlik: təkrarlanan vebhuk quotes → 1 icra.
4. Safeguard breach: avtomatik swip və qeyri-kritik ödənişlərin bloklanması.
5. Counterparty cap: provayder limitini aşmaq → alert + auto-rebalance.
6. Intraday sweep: balans> Target_Balance + δ → L2-də swip və eşik dönüş.
14) Tez-tez səhvlər və onlardan necə qaçmaq olar
Kritik relsdə bir provayder → feylover yoxdur. Ən azı iki saxlayın.
OpRes-də p-səviyyəsinin olmaması → gözə ehtiyat və tez-tez stockout. p95/p99 tətbiq edin.
Etiketsiz safeguard hesabları → vasitələrin qarışdırılması. Ciddi seqreqasiya və hesabat daxil edin.
İqnor settlement-təqvim → səhv hədəf qalıqları. PSP cədvəli ingestionunu avtomatlaşdırın.
L0/L1 sadə cache → yüksək dəyəri itirilmiş gəlir. L2-də swipləri konfiqurasiya edin.
Vahid «cib reyestri» yoxdur → qalıqların xaosu. Pocket Registry daxil edin.
15) Cib reyestri (Pocket Registry, API eskiz)
json
{
"pocket_id": "PAYOUT_POOL_EUR",
"type": "L0",
"counterparty": "Bank_X",
"currency": "EUR",
"segregated": false,
"prefund_required": true,
"slo": { "ttp_p95_sec": 60, "ttf_p95_min": 30 },
"limits": {
"low_watermark": 200000,
"target_balance": 350000,
"counterparty_limit": 1000000
},
"sweep_policy": {
"to_l2_when_idle_cash_over": 100000,
"intraday": true
}
}
Xülasə
Davamlı xəzinədarlıq hesablar toplusu deyil, sistemdir: təbəqələşmiş likvidlik səviyyələri (L0-L3), idarə olunan ehtiyatlar (OpRes/RegRes/StressRes), sərt limitlər və SLO, axın proqnozlaşdırılması və avtomatik prefunding/sweep-mexanika. Beləliklə, siz biznesə minimum TtP verirsiniz, kassa boşluqlarından çəkinirsiniz, kapitalın dəyərini aşağı salırsınız və eyni zamanda tənzimləyici və audit tələblərinə cavab verirsiniz.