GH GambleHub

Köp walýutaly kitaplar we kurslar

1) "Multivalýut kitaplar" näme

Kitap (ledger) - bir wagtyň özünde birnäçe walýutada geçirilýän goşa ýazgyly (iki taraplaýyn geçiriş) geleşik ledjeri:
  • Wallet-kitap: oýunçynyň hasaby (oýun/walýuta).
  • Settlement-kitap: PSP/ekwaýer bilen hasaplaşyklar (settlementiň walýutasy).
  • Treasury-kitap: bank hasaplary, konwersiýalar, hej-geleşikler.
  • Hasabat kitaby: azyk ölçeglerine retrospektiv gaýtadan baha bermezden hasabat pulundaky (mysal üçin, EUR) jemleme.

Her kitap ykrar edilen pursadynda amalyň walýutasyny, tabşyrmagyň walýutasyny we hümmetini bellär.

2) Walýuta iýerarhiýasy we syýasatçylar

1. Base/Reporting Currency - ýeke-täk hasabat walýutasy (mysal üçin, EUR).
2. Wallet Currencies - gapjyklaryň walýutalary (USD/EUR/TRY/UAH we ş.m.).
3. Settlement Currencies - PSP tarapyndan iberilýän zat (mysal üçin, USD).
4. Bank Currencies - söwda/gazna hasabynyň walýutasy.

Düzgünler:
  • Önüm metrikleri (ND/NGR/ARPPU) - wakanyň taryhy hümmeti boýunça (adatça 'settled _ at').
  • Maliýe/buhgalterler - 'funded _ at' we 'payout _ at' -daky hümmeti goşmaça belleýärler.
  • Azyk penjirelerinde "gizlin" gaýtadan bahalandyrmak gadagandyr.

3) Kurslar we olaryň çeşmeleri

Intraday reference (tick/minute): Refinitiv/ECB/banklar - wakalary kadalaşdyrmak üçin.
EOD (günüň ahyry): galyndylary gaýtadan bahalandyrmak üçin (unrealized FX).
Effective FX: PSP/bank faýlyndan (konwersiýa hakykaty).
Triangulation: gönüden-göni sitata ýok bolsa, labyryň üsti bilen (EUR ýa-da USD).
Quote policy: `mid` либо `bid/ask` → `mid ± spread_bps`. Spred aýratyn saklanylýar.

Saklaň: 'fx _ source', 'fx _ pair', 'fx _ rate', 'fx _ timestamp', 'quote _ type', 'spread _ bps', we triangulation ugry.

4) Ykrar ediş nokatlary we kurslaryň gatlaklary

'authorize _ at' - kursy düzetmeýäris (tutulmazdan ykrar edilmez).
'captured/settled _ at' - önüm gatlagy we ND üçin taryhy kurs.
'funded _ at' - banka girmegiň hümmeti (FI/treasury üçin realized FX).
'payout _ at' - oýunçy üçin töleg kursy.
'eod' - galyndylary gaýtadan bahalandyrmak üçin günüň gutarýan hümmeti (unrealized FX).

5) Takyklyk, tegelek, iň az birlikler

Pul - walýuta gollanmasynda tutuş minor units (int) + 'scale'.
Kurslar - vergülden soň azyndan 8-10 belgi.
Tegeleklemek: hasabat bermek üçin bank (half-even); UI - ýerli düzgünler.
Bölmek: 'amount _ original', 'amount _ wallet', 'amount _ reporting', 'amount _ effective'.

6) Goşa ýazgy we GL-kart (ýönekeýleşdirilen)

Simleriň mysallary:

6. 1. DEPOSIT_CAPTURED (GBP, hasabat - EUR)

Dt: AR: PSP (GBP)

Kt: Player Balance (gapjyk boýunça GBP/EUR)

Şol bir wagtyň özünde 'fx _ rate _ settle (GBP → EUR)' we 'amount _ reporting' belleýäris.

6. 2. FUNDING_RECEIVED (banka USD)

Dt: Bank USD

Kt: AR: PSP GBP (ekwiwalent boýunça ýapýarys; tapawut → Realized FX).

6. 3. WITHDRAWAL_PAID (TRY)

Дт: Liability: Player (TRY)

Kt: Bank TRY (ýa-da Bank EUR + konwersiýa; tapawut - realized FX).

7) Maglumatlaryň arhitekturasy (iň pes model)


ref. currencies (
code PK, scale, symbol, is_crypto, is_active
)

ref. fx_rates_intraday (
pair PK, ts PK, rate, quote_type, source, spread_bps, triangulation_meta
)

ref. fx_rates_eod (
pair PK, date PK, rate, source
)

ledger. entries (
entry_id PK, book, -- WALLET      SETTLEMENT      TREASURY      REPORTING debit_account, credit_account,
amount_original, currency_original,
amount_reporting, reporting_currency,
fx_rate_at_settle, fx_source, fx_pair, fx_timestamp,
event_type, event_id, user_id, provider, method,
occurred_at, created_at, meta
)

treasury. funding_receipts (
funding_id PK, provider, bank_account,
currency, amount, fx_to_reporting, amount_reporting,
received_at, value_date, meta
)

treasury. balances (
date PK, account PK, currency PK, amount
)

dw. transactions_flat (
tx_id PK, user_id, provider, method, type, status,
amount_original, currency_original,
amount_reporting, reporting_currency, fx_rate_at_settle,
settled_at, funded_at, conversion_owner, meta
)

8) Kadalaşma akymy (ETL/ELT)

1. Çig mal ingest → PSP statusynyň kadalaşmagy.
2. 'settled _ at' -dan 'fx _ rates _ intraday' -a taryhy kursy bellemek.
3. Goşa geçirişi islenýän kitabyna ýazmak (wallet/settlement).
4. Aýry-aýry funding we effective FX importy.
5. "fx _ rates _ eod" (treasury-kitap) boýunça galyndylaryň gündelik reval.
6. Penjireleri (ND/NGR/LTV) retro-gaýtadan bahalandyrmazdan gurmak.

9) Deňeşdirme we yzygiderlilik

Tx → File: ähli captured/settled PSP faýlyna girdi (jemi/walýuta/seneler boýunça).
File → Tx: faýldaky hemme zat kitaplarda/geçirişlerde görkezilýär.
FX Reference vs Effective: 'slippage _ bps' hasaplamak; bosagadan çykmak üçin alert.
Triangulation barlagy: 'A → B → C' ≈ 'A → C' bps toleransynyň içinde.
Idempotentlik: 'event _ id' we 'idempotency _ key' - dubllardan goramak.

10) Ýygy-ýygydan ssenariýalar we olary nädip alyp barmaly

Multi-wallet: oýunçynyň gapjygy goýumdan başga walýutada bolup biler - nyrhyňyz boýunça içerki konwersiýa ediň ('conversion _ owner =' MERCHANT 'syýasaty).
PSP-conversion: PSP marjasyny seljermek üçin 'fx _ effective', 'fx _ reference' we 'spread _ bps' saklaň.
Kripto: VWAP penjiresi boýunça baha bermek; stabllarda funding - FX-iň ikinji gatlagy.
Cross-wallet transfer: platformanyň içinde hereket etmek - FX girdejisi bolmazdan, diňe kitaplaryň arasynda geçirmek.

11) SQL şablonlary

11. 1. Taryhy hümmet boýunça hasabat puluna mukdaryň kadalaşmagy

sql
SELECT t. tx_id,
t. amount_original,
t. currency_original,
r. rate AS fx_rate_at_settle,
ROUND(t. amount_original r. rate, rep. scale) AS amount_reporting
FROM raw. transactions t
JOIN ref. fx_rates_intraday r
ON r. pair = CONCAT(t. currency_original, '/',:reporting_ccy)
AND r. ts = (
SELECT MAX(ts) FROM ref. fx_rates_intraday
WHERE pair = r. pair AND ts <= t. settled_at
)
JOIN ref. currencies rep ON rep. code =:reporting_ccy
WHERE t. settled_at BETWEEN:from AND:to;

11. 2. PSP (effective vs reference)

sql
SELECT provider, method, DATE(settled_at) AS d,
SUM(original_amount fx_reference_rate) AS ref_in_reporting,
SUM(settlement_amount_in_reporting)   AS eff_in_reporting,
10000 (SUM(settlement_amount_in_reporting) /
NULLIF(SUM(original_amount fx_reference_rate),0) - 1) AS spread_bps
FROM dw. fx_settlement_view
WHERE settled_at BETWEEN:from AND:to
GROUP BY 1,2,3;

11. 3. EOD-galyndylary gaýtadan bahalandyrmak (unrealized FX)

sql
INSERT INTO treasury. fx_reval_ledger (date, currency, position_amount, rate_eod, amount_reporting_eod, reval_diff, type)
SELECT
:eod AS date, b. currency, b. amount,
e. rate AS rate_eod,
b. amount e. rate AS amount_reporting_eod,
b. amount (e. rate - COALESCE(l. rate_eod, e. rate)) AS reval_diff,
'UNREALIZED'
FROM treasury. balances b
JOIN ref. fx_rates_eod e
ON e. pair = CONCAT(b. currency, '/',:reporting_ccy) AND e. date =:eod
LEFT JOIN LATERAL (
SELECT rate_eod FROM treasury. fx_reval_ledger
WHERE currency=b. currency AND date=:eod - INTERVAL '1 day'
ORDER BY date DESC LIMIT 1
) l ON TRUE;

12) KPI we daşbordlar

PSP/MID usuly boýunça FX Slippage (bps).
Realized FX P&L (funding/payout) и Unrealized FX (EOD/EOM).
Walýutalar boýunça açyk FX Pozisiýasy vs syýasat çäkleri.
Hit-rate "wagtynda alnan" kurslar (stale-rates hadysalar).
PSP-conversion vs Merchant-conversion we onuň TCO paýy.
Tegelekleriň takyklygy (summalaryň gyşarmagy ≥ 1 minor unit - baýdak).

13) Alertler we bosagalar

Stale rate: pursatda kurs ýok → fallback-çeşme/retrai.
Triangulation mismatch: tapawut> X bps.
Spread spike: 'spread _ bps' maýorlardan/mainerlerden has ýokary.
Açyk pozisiýa breach: islendik walýuta boýunça çäkden ýokary.
Reval shock: gündelik gaýtadan bahalandyrma <− X σ ýa-da> + X σ - revyu.

14) Iň oňat amallar (gysgaça)

1. Önüm gatlagyny (taryhy FX) we FI/treasury (maliýe/töleg/reval) berk bölüň.
2. Minor units ulanyň we kurslary ýokary takyklyk bilen saklaň.
3. conversion_owner logyny düzüň we PSP (effective vs reference) marjasyny ölçäň.
4. Wakalaryň idempotentligini we ikitaraplaýyn barlagy amala aşyryň (Tx → File we File → Tx).
5. Triangulation üçin anchor walýutasyny saklaň we bps-de tapawutlary tassyklaň.
6. Galyndylary aýratyn GL bilen EOD prosedurasy bilen gaýtadan bahalandyryň.
7. Settle/funding kurslaryny belläniňizde DST/wagt zolaklaryny göz öňünde tutuň.
8. Tegelekleri yzygiderli synagdan geçiriň.

15) Girizmegiň çek-sanawy

  • Hasabat walýutasy we taryhy FX syýasaty kesgitlenildi.
  • Kurslaryň çeşmeleri: intraday + EOD, fallback we SLA täzelenmeleri.
  • Modeller 'ledger. entries`, `fx_rates_`, `funding_receipts`, `balances`, витрина `transactions_flat`.
  • Triangulation mehanizmi we ugur.
  • Алерты: stale-rates, spread spike, triangulation mismatch, open position breach.
  • KPI daşbordlary we PSP/Bank bilen deňeşdirme namalary.
  • realized/unrealized FX üçin reval we aýry GL amallary.
  • Tegelek we takyklyk synag toplumlary.

Gysgaça maglumat

Köp walýutaly kitaplar gatlaklaryň bölünişiginiň düzgünidir: önüm üçin taryhy FX, trezeri üçin hakyky, balanslar üçin EOD-gaýtadan bahalandyrma. Aç-açan kurs çeşmeleri, takyk maglumat modeli, goşa ýazgy we awtomatlaşdyrylan deňeşdirme bilen, analitikadan "walýuta sesini" aýyryp, audit geçiriň we global monetizasiýa wagtynda dolandyrylýan FX töwekgelçiligini alarsyňyz.

Contact

Biziň bilen habarlaşyň

Islendik sorag ýa-da goldaw boýunça bize ýazyp bilersiňiz.Biz hemişe kömek etmäge taýýar.

Telegram
@Gamble_GC
Integrasiýany başlamak

Email — hökmany. Telegram ýa-da WhatsApp — islege görä.

Adyňyz obýýektiw däl / islege görä
Email obýýektiw däl / islege görä
Tema obýýektiw däl / islege görä
Habar obýýektiw däl / islege görä
Telegram obýýektiw däl / islege görä
@
Eger Telegram görkezen bolsaňyz — Email-den daşary şol ýerden hem jogap bereris.
WhatsApp obýýektiw däl / islege görä
Format: ýurduň kody we belgi (meselem, +993XXXXXXXX).

Düwmäni basmak bilen siz maglumatlaryňyzyň işlenmegine razylyk berýärsiňiz.