Logo GH

GambleHub ինտեգրման ղեկավարությունը

1) Ակնարկ և փոխազդեցության մոդել

GambleHub-ը iGaming-ծառայությունների հավաքման պլատֆորմն է (խաղային պրովայդերներ, հիբրիդային դռներ, KYC/AML, բոնուսային շարժիչ, հաշվետվություններ)։ Գործընկերոջ ինտեգրումը հնարավոր է երկու ռեժիմում

API պրովայդեր 'Դուք զանգահարում եք API GambleHub (դրամապանակ, բոնուսներ, հաշվետվություններ)։

Էկստերնալ մատակարար 'մենք զանգահարում ենք ձեր webhuks/endpoints (հավասարակշռություն, գործարքներ, KYC)։

Մակարդակները

1. Edge/API (REST/gRPC, Webhooks)

2. Իրադարձությունները (event bus: տոկոսադրույքներ/վճարումներ/դրամապանակ/KUS)

3. Հաշվետվություններ (API + արտահանումը S3/SFTP)

4. Վիրահատություններ (, SLO, SLA վարկեր)

2) Միջավայր, ալյումինե և IP

ՉորեքշաբթիAPI հիմքըՈւեբհուկի (մեզանից)Մեր առաջացող IPSLA
Sandbox`https://sandbox. api. gamblehub. io`«https ://< Ձեր _ տիրույթը >/webhooks/...»`203. 0. 113. 10/31`best-effort
Staging`https://staging. api. gamblehub. io`ինչպես ավելի բարձր`198. 51. 100. 40/29`99. 5%
Production`https://api. gamblehub. io`ինչպես ավելի բարձր`192. 0. 2. 16/28`99. 9%

Պայմանագրային SLA-ն գրանցվում է պայմանագրում։ IP նորարարությունները հրապարակվում են անմիջապես։ Թույլ տվեք Allowlist-ը։

3) Վավերացում և հեղինակային իրավունք

Աջակցում են երեք մեխանիզմներ (ընտրեք պայմանագրի պահանջվող)

OAuth2 Client Credentials: սերվերը k-108 («scope 'a: wallet: read: read: wallet: write», «bet: write», «read: read»)։

JWT (issuer = GambleHub): RS256 ստորագրությունը, JWKS Endpointe-ի բանալիները։

MTSA: փոխադարձ TRC-վավերացումը ingress մակարդակում (կոմպլանսի խնդրանքով)։

Տոկենի (OAuth2) ստանալու օրինակ


POST /oauth2/token grant_type=client_credentials&scope=wallet:write bet:write
→ { "access_token": "...", "token_type": "Bearer", "expires_in": 3600 }

Scopes-ը ստուգվում է յուրաքանչյուր զանգի վրա։ Բարձր օրգանական վիրահատությունների համար (վճարումներ) օգտագործվում է step-up 'առանձին scope և, oporations, IP/ASN։

4) Տարբերակումը և համատեղելիությունը

Ճանապարհը '«/v1/... », «/v2/...» (major տարբերակը անհամատեղելի է հետ)։

Մինորային և ընդարձակող փոփոխությունները 'սխեմայի ընդլայնման միջոցով (նոր oporational դաշտեր)։

Դեպրեսիաները 90 օրվա ընթացքում են։

Webhuks-ը տարբերակվում է «X-GH-Event-Version: 1» վերնագրով։

5) Լիմիտներ, քվոտաներ և կուռքեր

Rate limits-ը տրվում է վերնագրերով

`X-RateLimit-Limit`, `X-RateLimit-Remaining`, `X-RateLimit-Reset`.

429 վերադառնում է «Retry-After» (վայրկյան)։

Բոլոր անապահով մեթոդները պահանջում են «Idempotency-Key» (TTL 24-72 ժամ)։ Նույնական հարցման խոհարարը վերադարձնում է աղբյուրի արդյունքը («409 IDEMP _ REPLAY» հակամարտության ժամանակ)։

6) Սխալների ստանդարտները

RFC 78.1 («applations/problem + json») միասնական ձևաչափը

json
{
"type": "https://docs. gamblehub. io/errors/validation_failed",
"title": "Validation failed",
"status": 422,
"error_code": "VAL_001",
"trace_id": "a1b2c3...",
"retriable": false,
"errors": [{"field":"amount","code":"min","message":"Must be >= 1"}]
}

Retriable: 5xx/503/504/429 (с `Retry-After`). Non-retriable: 400/401/403/404/409/422/410/415/412.

7) Տվյալների սխեմաները (միջուկը)

7. 1 Խաղացող

json
{
"player_id": "p_123",
"country": "CA",
"currency": "CAD",
"rg_flags": {"self_excluded": false, "limits": {"daily_loss": 100}},
"kyc_status": "verified    pending    failed"
}

7. 2 Նստաշրջան

json
{
"session_id": "s_789",
"player_id": "p_123",
"started_at": "2025-11-03T17:55:00Z",
"ip": "203. 0. 113. 5",
"device": {"ua":"...", "os":"Android", "model":"..."}
}

7. 3 Դրամապանակ/գործարքներ

json
{
"txn_id": "t_001",
"player_id": "p_123",
"type": "deposit    withdrawal    bet    win    bonus    adjustment",
"amount": "12. 34",
"currency": "EUR",
"balance_after": "123. 45",
"metadata": {"provider":"psp_x","request_id":"r_456"}
}

7. 4 Տոկոսադրույք/վճարում

json
{
"bet_id": "b_456",
"player_id": "p_123",
"game_id": "g_777",
"stake": "1. 50",
"currency": "EUR",
"placed_at": "2025-11-03T17:58:10Z",
"round_id": "rnd_aa1",
"provider": "StudioX"
}
json
{
"settlement_id": "st_456",
"bet_id": "b_456",
"win_amount": "3. 75",
"settled_at": "2025-11-03T17:59:02Z",
"outcome": "win    lose    void"
}

7. 5 Բոնուս

json
{
"bonus_id": "bo_900",
"player_id": "p_123",
"type": "freespin    cash    wagered",
"state": "issued    active    expired    consumed",
"wagering": {"target": "100. 00","progress":"45. 20","currency":"EUR"}
}

8) REST API (OpenAPI բեկորներ)

yaml paths:
/v1/wallet/balance/{player_id}:
get:
summary: Get wallet balance security: [{ oauth2: [wallet:read] }]
responses:
'200': { description: OK }
'401': { $ref: '#/components/responses/Problem' }
'404': { $ref: '#/components/responses/Problem' }

/v1/wallet/transactions:
post:
summary: Create wallet transaction security: [{ oauth2: [wallet:write] }]
parameters:
- name: Idempotency-Key in: header required: true schema: { type: string }
responses:
'201': { description: Created }
'409': { $ref: '#/components/responses/Problem' }
'422': { $ref: '#/components/responses/Problem' }

/v1/bets:
post:
summary: Register bet security: [{ oauth2: [bet:write] }]
responses:
'201': { description: Created }
'422': { $ref: '#/components/responses/Problem' }

9) Webhuki (GambleHub-ից մինչև ամբիոն)

Իրադարձությունները գնում են հերթականությամբ, «Engent-Type: Application/json», վերնագրերը

`X-GH-Event`: `player. created|session. started|bet. placed|bet. settled|wallet. changed|kyc. updated|rg. flagged`

"X-GH-Event-Id ': յուրահատուկ UUID

`X-GH-Signature`: `sha256=`

«X-GH-Retry» 'փորձարկումը ռուսական

`X-GH-Event-Version`: `1`

Օրինակ 'bet. settled`:
json
{
"event": "bet. settled",
"occurred_at": "2025-11-03T18:00:12Z",
"data": {
"settlement_id": "st_456",
"bet_id": "b_456",
"player_id": "p_123",
"win_amount": "3. 75",
"currency": "EUR",
"outcome": "win"
}
}

Ռուսական կողմի պատասխանը միայն 2xx-ն է։ Հակառակ դեպքում 'retrai: էքսպոնենցիալ backoff (1s, 3s, 10s, 30s, 2m, 10m, 30m; առավելագույնը 24 ժամ)։ Դեդուպլյացիայի համար օգտագործեք «X-GH-Event-Id»։

Ստորագրության վերիֆիկացումը (կեղծ)

text expected = base64(hmac_sha256(request_body, SHARED_SECRET))
header  = split(X-GH-Signature, '=')[1]
assert header == expected

10) Դրամական հոսքի կարգը (Wallet flow)

1. deposit (PSP → wallet. credit)

2. bet (hold/authorize или direct debit)

3. settlement (release hold; `win`/`lose`/`void`)

4. withdrawal (wallet. debit → PSP)

Աջակցվում են hold-հավասարակշռությունները և մուլտֆիլմի դրամապանակները (իրական/բոնուսային)։

11) Ավազը և թեստային սցենարները

Թեստային խաղացողները ՝ «p _ sbx _», «CORR 'USD' III»։

Խաղային պրովայդերները էմուալացնում են 'win/lose/void, դիսկոնեկտներ, ուշացումներ։

KYC sandbox: պատասխանները անձնագրերի օրինակների վրա։

PSP sandbox: статусы `authorized|captured|declined|reversed`.

Պարտադիր թեստերի հավաքածու

Վճարման տոկոսադրույքը նվազեցնում է հավասարակշռությունը

Rapat/void of

Idempotency հիմնական տոկոսադրույքով

Bebhuck հետ գետերի և հաջորդ deduplication

429 և ճիշտ «Retry-After»

5xx էքսպոնենցիալ backoff հաճախորդի կողմում

12) Ստուգումներ և հաշվետվություններ

Reconciliation API

yaml
GET /v1/reports/reconciliation? from=...&to=...&scope=wallet    bets
→ CSV/JSON: { player_id, bet_id, stake, win, currency, balance_delta, provider }

Ամենօրյա զեկույցները 'հեղափոխություններ, GGR/NGP, պրովայդերներ, գեյո/արժույթի կտրվածք։

Էքսպորտը ՝ S3/SFTP ստորագրված մանիֆեստներով և ֆայլերի հեշերով (SHA256)։

Թայմզոնը նշում է. UTC (եթե այլ պայմանագրում չի համաձայնվում)։

13) Դիտարկումը և SLO-ն

SLI 'API 3899 հաջողությունը։ 95% (28d), p95 latency կրիտիկական մեթոդների համար, webhuks առաքման հաջողությունը։

Burn-aler.ru (fox/slow) սխալ տարբերակով։

Trace-հարաբերակցությունը '«trace _ id» պատասխաններում/logs, www.illdown ուղիների։

Կարգավիճակ-էջ 'Edge, Wallet, Bets, Webhooks, PSA, KYC բաղադրիչներ։

14) Անվտանգություն և ընկերակցություն

PII-նվազեցումը; արգելված PAN/գաղտնիքները/webhuks-ում։

Secret-international-ը և կոդավորման լուծումը։

RG (Responsible Gambling) 'ինքնության դրոշները/լիմիտները պետք է հանգեցնեն ավտոմատ մերժման տոկոսադրույքների/վճարումների մեջ։

AML/KYC 'իրադարձություններ' kyc. updated`, `aml. al.ru-ն հասանելի է բաժանորդագրությամբ; որոշումներ եք կայացնում ձեր համակարգում կամ մեր մոդուլի միջոցով։

GDPR/DSAR: Endpoints 'խաղացողի անձնական տվյալները իրավաբանական պահանջների համար։

MTSA-ը և HSTS-ը ներառված են լռելյայն միջավայրում։

15) Արտադրողականություն և քվոտաներ

Գործընկերոջ բյուջեն (լռելյայն)

RPS: 50 (burst 100)

Concurrent webhooks: 10

Մարմնի չափը ՝ 35256 KB (խաղային իրադարձություններ), 3864 KB (դրամապանակ)

Խնդրեք պլանի ապգրեյդը հաշիվ-մենեջերի միջոցով 'նշելով RPS/ծավալի կանխատեսումը։

16) Փոփոխությունների և թողարկումների կառավարումը

Change windows: Պլանավորված աշխատանք 'գրաֆիկով, ծանուցում 245 աշխատանքային օր։

Տարբերակիչ պարամետրեր ՝ dult-write/drix-read անցումային ժամանակահատվածում։

Euract թեստերը CI-ում 'JSON սխեմա, պարտադիր դաշտեր, կայուն «error _ code»։

Canary: աստիճանական ստանդարտ է նոր ֆիչի համար։

17) Մրցույթի սերտիֆիկացումը (Nok-list)

Ֆունկցիոնալ

  • Տոկոսադրույքներ/վճարումներ/void/void/void/
  • Idempotenty բոլոր write-endpointas
  • Ճիշտ բուժումը 429/5xx + backoff
  • Webhuks ստորագրության վերացումը, «X-GH-Event-Id 'deduplication»
  • Հավասարակշռությունը մի շարք իրադարձություններից հետո (win/lose)
  • Reconciliation հաշվետվությունները համընկնում են ձեր տվյալների հետ

Մոսկվան

  • Retray Webhuks-ը իրականացվում է
  • Հաճախորդների թայմաուտները 10s, ընդհանուր փորձ թիվ 30s
  • Circuit-breaker կախվածության վրա

Անվտանգություն/բաղադրիչներ

  • Գաղտնիքների պահպանումը գաղտնիքների կառավարման մեջ
  • PII խմբագրությունը լոգարաններում
  • RG/AML դրոշները հաշվարկվում են իրական ժամանակում

18) Հաճախ օգտագործվող սցենարները

18. 1 Դրույքաչափերի դրույքաչափեր


POST /v1/bets
Idempotency-Key: bet-p_123-rnd_aa1-1

{ "player_id":"p_123","game_id":"g_777","stake":"1. 50","currency":"EUR","round_id":"rnd_aa1" }
→ 201 Created { "bet_id":"b_456" }

18. 2 Faile Webhuck-ը մեծ հաջողություններով

1. Ձեր սերվերը անհասանելի է www.5xx express backoff-ով։

2. Վերականգնումից հետո, նույն 'X-GH-Event-Id '-ը պետք է անտեսեք կրկնօրինակները։

18. 3 Պրովայդերի մասնակի քայքայումը

Մենք հավատում ենք 503; կրկնեք backoff-ից։

Երկար դեգրադացիայի դեպքում 'պրովայդերի և համի ստոպ մակնշումը: smart-routing (եթե պայմանագրում)։

19) DevEx-ը և աջակցությունը

Portal: բանալիներ, usage, webhuks, առաքման լոգներ, SLO dashbords, ռուսական արտահանումը։

Webhooks replay: Կրկնակի առաքում Dat/ID միջակայքում։

Միջադեպերը 'թիկետի նախկին ստեղծումը, war-room, հետմորտը 3848 ժամ SEV-1։

Հաղորդակցություն ՝ # partners-status ջրանցք/փոստ on-call 24 247 (Enterprise)։

20) Քաղցկեղի պլանը (2-4 շաբաթ)

1. Շաբաթը 1: 07-ին, sandbox-ի միացումը, հիմնական սցենարները (տոկոսադրույքը/վճարումը/դրամապանակը)։

2. Շաբաթը 2: webhuks և ծալքեր, RG/KYC դրոշներ, բեռի թեստեր, 429/5xx վարք։

3. Շաբաթը 3: Հաշվետվություններ (reconciliation, հեռացում), անվտանգություն (ստորագրություններ, գաղտնիքներ), պայմանագիր-թեստեր։

4. Շաբաթը 4: հավաստագրում, canary-2019-ը վաճառքում, բջիջներում, կոնտակտային մատրիցայում։

21) Mini-FAQ

Կարո՞ ղ եք gRPC-ն։

Այո, խնդրանքով։ HTTP-ի սխալների մապպինգը կատարվում է ճշգրտությամբ։

Ինչպե՞ ս ստանալ ռետրո տվյալները։

Զեկույցների միջոցով "reconciliation" (ամսաթվերը 'from/to ") կամ S3/SFTP արտադրությունը։

Ինչպե՞ ս բարձրացնել սահմանները։

Պորտալի/հաշիվ մենեջերի միջոցով, որը ցույց է տալիս կանխատեսելի RPS/մրցունակությունը։

Ի՞ նչ կարելի է համարել հավասարակշռության ճշմարտության աղբյուրը։

GambleHub + դրամապանակի գործարքային ամսագիր (reconciliation)։

Արդյունքը

GambleHub-ի հետ ինտեգրումը կառուցվում է հստակ պայմանագրով 'կայուն API և սխեմաներ, որոնք ստորագրվել են Webhuks, idempotenty և retray, թափանցիկ լիմիտներ և հաշվետվություններ, ինչպես նաև անվտանգության և համակարգչային պահանջներ։ Այս առաջնորդությանը և չեկի թերթերին հետևելով ՝ դուք արագ կմտնեք անցում ՝ ապահովելով հուսալի դրամական հոսքեր և հաշվետվություններ առանց տարաձայնությունների։

Contact

Կապ հաստատեք մեզ հետ

Կապ հաստատեք մեզ հետ ցանկացած հարցի կամ աջակցության համար։Մենք միշտ պատրաստ ենք օգնել։

Telegram
@Gamble_GC
Սկսել ինտեգրացիան

Email-ը՝ պարտադիր է։ Telegram կամ WhatsApp — ըստ ցանկության։

Ձեր անունը ըստ ցանկության
Email ըստ ցանկության
Թեմա ըստ ցանկության
Նամակի բովանդակություն ըստ ցանկության
Telegram ըստ ցանկության
@
Եթե նշեք Telegram — մենք կպատասխանենք նաև այնտեղ՝ Email-ի дополнение-ով։
WhatsApp ըստ ցանկության
Ձևաչափ՝ երկրի կոդ և համար (օրինակ՝ +374XXXXXXXXX)։

Սեղմելով կոճակը՝ դուք համաձայնում եք տվյալների մշակման հետ։