GH GambleHub

1) Maksady we gurşawy

Ähli ygtyýarnamalar we bazarlar boýunça kadalaşdyryjy hasabatlary ýygnamagy, düzmegi we tabşyrmagy standartlaşdyrmak. Resminama:
  • hasabatlaryň katalogy we tertibi;
  • maglumatlaryň formatlary we shemalary;
  • walidasiýa we hil gözegçiligi düzgünleri;
  • geçiriş kanallary we kabul edilendigini tassyklamak;
  • rollary we RACI, artefaktlar we retensiýa magazineurnaly.
💡 Diskleýmer: anyk meýdanlar/möhletler ygtyýarnamanyň şertlerine baglydyr. Gutarnykly görnüşler Legal/Compliance tarapyndan tassyklanylýar.

2) Rollar we RACI

Owner: Head of Compliance - wersiýalary, ileri tutulýan ugurlary tassyklaýar (A).
Schema Steward (DWH Lead): shemalary we mappingleri goldamak (R).
Producers: AML/RG/Payments/Game Ops - maglumat çeşmeleri (R).
QA/DQ: Data Quality Team - tassyklamalar, synag toplumlary (R).
Legal: kadalary düşündirmek, üýtgetmeleri utgaşdyrmak (C).
Howpsuzlyk/DPO: PII/lakamlaşdyrma, eltiş kanallary (C).
Hasabat Ops: düşürmek, gol çekmek, ibermek, tassyklamak (R).

3) Hasabatlaryň katalogy (synplar)

1. Oýun hasabatlary - jedeller/ýeňişler/balanslar/sessiýalar, RTP, dogruçyllyk.
2. Maliýe - goýum/aýyrmak, aýyrmak, salgytlar, GGR/NGR, chargebacks.
3. AML/CFT - şübheli amallar, RER/sanksiýalar, töwekgelçilik agregatlary.
4. Jogapkär oýun (RG) - öz-özüni aýyrmak, çäklendirmeler, gatyşmalar.
5. Hadysalar - elýeterlilik, syzmak, habarnamalar we möhletler.
6. Marketing/affiliates - traffigiň, mahabaty çäklendirmegiň çeşmeleri (eger ygtyýarnama bilen talap edilse).
7. Tehniki - aptaým, RNG wersiýalary, bild/konfigurasiýa heşleri, audit ýazgysy.

Her hasabat kartoçka bilen beýan edilýär (§ 4).

4) Hasabat kartoçkasy (şablon)


ID: REP- <code >/Version: v <MAJOR. MINOR >/Owner: <role>
Jurisdiction/License: <e.g. MT/MGA B2C, GB/UKGC, SE/Spelinspektionen>

5) Data formats: standards

5. 1 CSV/TSV

Encoding: UTF-8 without BOM.
Delimiter: ',' (CSV), or '\t '(TSV).
Escape '' around delimited/line feed fields.
Decimal separator: '.'; Date/Time - ISO-8601 'YYYY-MM-DDThh: mm: ssZ'.

Example (CSV, rates):

report_date,player_id_hash,game_code,currency,stake,win,round_id,session_id,geo,ts_utc

2025-10-31,4b1c...a9,EGT_40SUPERC,EUR,1. 00,0. 00,rd_789,ss_123,DE,2025-10-31T15: 02:11Z


5. 2 XML

Namespace fixed; XSD validation.
Null values as empty element with'nil = "true" 'attribute.

5. 3 JSON

JSON Lines for large offloads; JSON Schema v2020-12.
Timezones - UTC; sums - decimal with string representation.

5. 4 XLSX

Used only if prescribed by the regulator. The sheet template and column names are fixed.

6) Core dictionaries

6. 1 Common fields

'report _ date '(DATE, UTC) - key date (aggregation window).
'operator _ id '(STRING) - ID of the license/operator.
'player _ id _ hash '(STRING) - hashed player ID (salt per jurisdiction).
'geo '(STRING, ISO-3166-1 alpha-2) is the country of the player/session.
`currency` (STRING, ISO-4217).
'ts _ utc '(TIMESTAMP) is the moment of the event.

6. 2 Gaming

`game_code`, `provider_code`, `round_id`, `session_id`, `stake`, `win`, `bonus_flag`, `rtn_balance_before/after`, `rake`.

6. 3 Payments

`txn_id`, `method_code`, `psp_id`, `amount`, `fee`, `status`, `decline_reason`, `kya_level`, `chargeback_flag`.

6. 4 AML/RG

`risk_score`, `peps_hit`, `sanctions_hit`, `sar_id`, `rg_limit_type`, `rg_breach`, `self_exclusion`.

7) Jurisdictional features (examples)

MT (MGA): monthly gaming aggregates: bets/winnings/RTP by title and provider; CSV/XLSX format currency code, split into "cash/bonus."
GB (UKGC): reports on RG (self-exclusion), marketing (channel compliance), incident notifications; CSV/XML preference, portal.
NL (KSA): detailed game events (often JSON/XML), strict time synchronization and fields for CRUKS (self-exclusion register).
SE (Spelinspektionen): Spelpaus integration, reports on RG interventions; CSV format, SFTP.
DE (GlüStV): rate/deposit limits and compliance, RG events; locale DE, but the numbers are '.'.
ES/PT/IT: monthly GGR aggregates/taxes/active players, XLSX/CSV; separate report on bonuses and advertising.

> The register for all markets is kept in Git/Confluence; any changes are recorded by the changelog.

8) Transmission channels and security

Regulator portals: downloading a file, obtaining a registry ID.
API: OAuth2/MTLS, quota, retray with idempotency.
SFTP: encryption in transit, PGP file signature, atomic calculation ('.part' → '.csv').
Mail (secure): only on demand, encrypted/signed.

Artifacts: receipts/receipt ID, checksums (SHA256), send logs.

9) Data quality control (DQ) and validation

9. 1 Check layers

1. Schema validation: types, mandatory, value domains.
2. Business rules: balanced identities ('opening + deposit − within − bet + win = closing ± adj'), valid RTP ranges.
3. Cross-source reconciliation: PSP vs. wallet vs. GL (general ledger).
4. Freshness: SLA window display updates; late events are marked and loaded.
5. Uniqueness: 'txn _ id', 'round _ id' are unique within the window.

9. 2 Model rules

`stake ≥ 0`, `win ≥ 0`; when 'bonus _ flag = 1' - a separate bucket.
`currency ∈ ISO-4217`; `geo ∈ ISO-3166-1`.
'ts _ utc'inside the report window; time zone - UTC only.
For returns, separate records with'amount <0'and'status = REFUND'.

10) Liniage and circuit versioning

Lineage: for each field - source (table/column), transformation (SQL/udf), owner.
Semantic Versioning:
MAJOR - incompatible changes (deleting/renaming fields).
MINOR - Add optional fields.
PATCH - Description/Validation Corrections.
Deviation Policy: double unloading period (old + new format) ≥ 1 reporting cycle.
Change Log: date, author, reason, jurisdictions affected.

11) Aliasing and PII

Hashing 'player _ id' with salt on jurisdiction; salt is stored in a secret storage.
Masking e-mail/phone, if required.
Access Profiles: PII only sees DPOs/Commissioners; export to portals - already with hashes.

12) Mapping Examples (DWH → Report)

Game unit (day, title, currency):

sql

SELECT

DATE_TRUNC('day', ts_utc) AS report_date,

game_code,

currency,

SUM(stake) AS stake_sum,

SUM(win) AS win_sum,

SAFE_DIVIDE(SUM(win), NULLIF(SUM(stake),0)) AS rtp

FROM fact_game_rounds

WHERE ts_utc >=: from AND ts_utc <:to

GROUP BY 1,2,3;


Payments (deposits/withdrawals/fees):

sql

SELECT

DATE_TRUNC('day', ts_utc) AS report_date,

method_code, psp_id, currency,

SUM(CASE WHEN type='DEPOSIT' THEN amount ELSE 0 END) AS deposits,

SUM(CASE WHEN type='WITHDRAWAL' THEN amount ELSE 0 END) AS withdrawals,

SUM(fee) AS fees

FROM fact_payments

WHERE ts_utc BETWEEN: from AND:to

GROUP BY 1,2,3,4;


13) Sample files

13. 1 Gaming Unit (CSV)

report_date,operator_id,game_code,currency,stake_sum,win_sum,rtp

2025-10-31,OP123,NET_STARBURST,EUR,125000. 50,119800. 00,0. 9585


13. 2 RG Events (JSON Lines)

{"report_date": "2025-10-31","player_id_hash":"b93e...","rg_event":"SELF_EXCLUSION","duration_days":180,"ts_utc":"2025-10-31T09:11:02Z"}

{"report_date": "2025-10-31","player_id_hash":"c01a...","rg_event":"LIMIT_BREACH","limit_type":"LOSS_DAILY","amount":"200. 00","ts_utc":"2025-10-31T13:45:22Z"}


13. 3 AML aggregate (XML, fragment)

xml

🚨 amlReport date="2025-10-31" operatorId="OP123" xmlns="urn:operator:aml:v1">
segment riskTier="HIGH" turnover="98500. 00" currency="EUR"/>
pepsMatches count="2"/>
sanctionsMatches count="0"/>
/amlReport>

14) Tabşyrmagyň amal prosesi

1. Penjiräni taýýarlamak: freeze, agregatlary hasaplamak, gijä galan wakalary goşmaça ýüklemek.
2. Tassyklamalar: shema + iş düzgünleri + reconciliation.
3. Faýllaryň döredilmegi: adyndaky shema görnüşi ('REP-GB-GAME-v1. 3_2025-10-31. csv`).
4. Gol/heş: PGP + SHA256.
5. Eltip bermek: portal/API/SFTP; kabul ediş ýazgysy (ID/kwitansiýa).
6. Arhiwlemek: asyl + gol + hasabatlaryň saklanylýan ýerindäki kwitansiýa.
7. Gözegçilik: "Regulatory Reporting" dashboard - "taýýar/iberilen/kabul edilen/ýalňyşlyk" statusy.
8. Retro: ýalňyşlyklary/gyşarmalary seljermek, CAPA.

15) Çek-listler

Iberilmezden öň

[] Penjiräniň we wagt zolagynyň senesi tassyklandy.
[] Ähli tassyklamalar "ýaşyl", hasabat mukdary GL/PSP bilen deňeşdirildi.
[] Shemanyň görnüşi reýestre laýyk gelýär.
[] PII gizlendi/lakamlaşdyryldy.
[] Faýl gol çekildi/barlandy, heş düzedildi.
[] Düzgünleşdirijiniň aragatnaşygy aktual (portal elýeterlidir).

Iberilenden soň

[] Kwitansiýa/ID alyndy, arhiwde saklandy.
[] Status dashbordda täzelendi.
[] Tassyklaýjy ýalňyşlyk ýüze çykan halatynda täzelenmeleriň meýilnamasy ylalaşyldy.

16) Metrikler we SLO

Timeliness: wagtynda tabşyrylan hasabatlaryň%.
First-Try Acceptance: Düzedişsiz kabul edilen%.
DQ Score: ýalňyşsyz ýazgylaryň paýy (shema/business).
Reconciliation Gap: absolut/GL/PSP bilen tapawut göterimi.
Lead Time to Report: Penjiräniň ýapylmagyndan tabşyrylýança wagt.
Change Failure Rate

17) Üýtgetmeleri dolandyrmak (governance)

Ýurisdiksiýalar boýunça talaplara çärýekleýin syn bermek; meýilleşdirilmedik - düzgünleşdirijiler täzelenende.
Shemalary üýtgetmek üçin RFC: impakt-analiz, gabat gelmek, "sandyk gutusyna" synag goýbermek.
MAJOR ≥ 1 aýlawda iki gezek düşürmek.
Pleýbuklary we SSS-leri täzelemek, goýberilende toparlary öwretmek.

18) Ýygy-ýygydan ýalňyşlyklar we olardan nädip gaça durmaly

Nädogry wagt zolagy: elmydama UTC-de jemläň, lokalyny aýratyn saklaň.
Tegeleklemek: decimal, bankda tegeleklemegiň bitewi düzgünlerini ulanmak.
Identifikatorlaryň gabat gelmezligi: 'game _ code', 'method _ code', 'psp _ id'.
Sanlaryň/seneleriň lokalizasiýasy: onluk böliji hökmünde diňe ISO-8601 we nokat.
PII açyk görnüşde: öň komita we CI-de maskalary barlamak.

19) Ekosistemada ornaşdyrmak

Bölümler bilen baglanyşyk: Dashbord complayens, Habarnamalar we möhletler, Hadysaly pleýbuklar, Krizis dolandyryşy, Audit žurnallary.
Waka-botda: '/report <jurisdiction> <report_id>' - shema we möhletleri almak.
Snapşotlaryň eksporty S1/S2 edilende artefaktlaryň bukjasyna goşulýar.

20) Durmuşa geçirmek meýilnamasy (30 gün)

1-nji hepde

1. Ygtyýarnamalar boýunça ähli kadalaşdyryjy hasabatlaryň inventarizasiýasy.
2. Kartoçkalary (§ 4) we kodlaryň sözlüklerini döretmek.
3. Geçiriş formatlaryny we kanallaryny tassyklamak.

2-nji hepde
4. DWH we lineage penjirelerini gurmak; ilkinji tassyklamalar.
5. Synag faýllaryny döretmek (bir bazar/klas boýunça).
6. Goly/hashlary we arhiwi sazlamak.

3-nji hepde
7. / API/SFTP "Sandbox" portaly bilen integrasiýa.
8. Dashbord statuslary we möhletler boýunça alertler.
9. Hasabat Ops we çek sahypalary.

4-nji hepde
10. 2-3 hasabatyň synag tabşyrylmagy; fidbek ýygnamak.
11. DQ/tassyklamalar boýunça CAPA; shemalary düzetmek.
12. Goýberiş v1. 0; barlaglaryň tertibi we möhletleriň ýeke-täk senenamasy.

Baglanyşykly bölümler:
Düzgün bozmalar hakynda habarnamalar we hasabatlylygyň möhletleri
Dashbord complayens we monitoring
Waka pleýbuklary we ssenariler
Krizis dolandyryş we aragatnaşyk
Iş dowamlylygy meýilnamasy (BCP )/DRP
Amallaryň audit žurnallary
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.