So verbinden Sie Anbieter über APIs: Handshake, Zertifizierung, Sandbox
Vollständiger Artikel
1) Integrationskarte: von der Anwendung bis zur Produktion
Die Phasen sind:1. Vorverkauf und Due Diligence: Juryprüfungen, Geo/Lizenzen, Inhaltskompatibilität und RG-Richtlinien.
2. Handshake und Sicherheit: Ausgabe von Sandbox-Zugriffen, Schlüsselaustausch (mTLS/HMAC), Registrierung bei Schema Registry.
3. Techdesign: Bestätigung des Domänenmodells (sessions/bets/settlements/events), Idempotenz, Fehlercodes.
4. Sandbox-Integration: Wallet/PSP/RG-Emulatoren, Testspieler, „Rain“ -Szenarien und Takes.
5. Zertifizierung: Durchführung von obligatorischen Tests, Unterzeichnung von Protokollen, Lasten und Chaos-Fällen.
6. Staging/UAT: Kampfkonfigs ohne echtes Geld, Kanarienverkehr.
7. Go-Live: Schlüsselrotation, Aktivierung von Sicherheitsfahnen, SLO-Überwachung, Bereitschaft nach einem Vorfall.
2) Handshake: Authentifizierung, Autorisierung, Tracing
2. 1 Austausch von Geheimnissen und Scopes
mTLS (per brand/region certificates) und/oder OAuth2 Client Credentials.
Signatur des HMAC/EdDSA Request Body (fügt non-repudiation hinzu).
Скоупы: `sessions:write`, `bets:write`, `settlements:write`, `events:publish`.
2. 2 Obligatorische Überschriften
'X-Trace-Id' ist eine Ende-zu-Ende-Verfolgung.
`X-Brand-Id`, `X-Region`, `X-Provider-Id`.
'X-Idempotency-Key' - für alle Schreibvorgänge.
2. 3 Health-Check (vor dem Code)
GET /health
→ 200 {"status":"ok","version":"1. 7. 2","time":"2025-10-23T10:00:00Z"}3) Sandbox: Was es gibt und wie man es benutzt
Zusammensetzung der Umgebung: Harmonie mit der Realität:- Ähnliche Versionen von Schemas und Rate Limits wie in der Produktion.
- Time-Skew, Liefer-Takes, Out-of-Order - eingebettet mit Emulations-Buttons.
p_demo_1 (EUR), p_demo_2 (USD), p_blocked_rg (denied), p_low_balance4) Ressourcenmodell und Mindestvertrag
4. 1 Erstellen einer Sitzung
POST /v1/sessions
{
"player_id":"p_demo_1",  "game_id":"studio:slot_forge_02",  "currency":"EUR",  "locale":"de-DE"
}
→ 201 {"session_id":"s_456","expires_at":"2025-10-23T19:10:00Z"}4. 2 Wettberechtigung (halten)
POST /v1/bets/authorize
Headers: X-Idempotency-Key: bet_r_8c12_1
{
"session_id":"s_456",  "bet_id":"b_001",  "round_id":"r_8c12",  "amount":{"amount":2. 00,"currency":"EUR"}
}
→ 200 {"status":"authorized","hold_id":"h_zz1"}4. 3 Settlement (Rundenausgang)
POST /v1/bets/settle
Headers: X-Idempotency-Key: settle_r_8c12_1
{
"bet_id":"b_001",  "round_id":"r_8c12",  "win":{"amount":14. 60,"currency":"EUR"},  "bonus_state":{"in_bonus":true,"freespins_left":7}
}
→ 200 {"status":"credited","settlement_id":"st_77"}4. 4 Fehler (einzelnes Schema)
409
{"code":"DUPLICATE","message":"Bet already authorized","retryable":false,"trace_id":"tr_a1b2"}5) Ereignisse und Schemata: Ohne diese werden Sie nicht zertifiziert
Basistopics: Beispiel Avro/JSON Schema (Fragment 'bet. settled`):json
{
"event_type":"bet. settled",  "schema_version":"1. 2. 0",  "event_id":"uuid",  "occurred_at":"2025-10-23T16:21:05Z",  "tenant_id":"brand-7",  "region":"EU",  "player_id":"p_demo_1",  "trace_id":"tr_a1b2",  "payload":{
"round_id":"r_8c12",   "bet":{"amount":1. 00,"currency":"EUR"},   "win":{"amount":14. 60,"currency":"EUR"},   "in_bonus":true
},  "idempotency_key":"bet_r_8c12_1"
}Regeln: backward-kompatible Evolution, Test für „Duplikate und späte Ereignisse“, Partitionierung nach 'tenant _ id/player _ id'.
6) Integrationszertifizierung: Was genau geprüft wird
6. 1 Funktionsszenarien (Minimum)
Die Wiederholung der Abfrage' authorize/settle' mit dem gleichen 'X-Idempotency-Key' → die gleiche Antwort.
Out-of-order: kam 'settle' ohne' authorize' → korrekte Ablehnung.
Rollback-Ketten, wenn die Brieftasche/Netzwerk fällt.
RG-Stops: Selbstausschluss/Verlust-/Zeitlimit → Wetten verbieten.
Bonus/Vager: Einzahlung nach Spieltyp, max bet, Deadlines.
6. 2 Belastung
p95 „bet/settle“ in Budgets (z.B. „<200-300 ms“), keine „Stürme“ von Retrays.
Die Ereignisströme erreichen BI ≤ 5 min.
6. 3 Chaos-Fälle
Lieferdoubles, Outbox/CDC-Verzögerungen, „Depot“ der Region, teilweise Vertreibung.
6. 4 Unterlagen zu den Ergebnissen
Testprotokoll mit Zeitcodes/trace-id.
SLO-Bericht (latency/error/lag).
Zusammenfassung der Sicherheit (Schlüssel, Rotationen, Zugriffe, Vault/HSM).
7) Version und Migration
HTTP: '/v1/... 'im Pfad, Ereignisse:' schema _ version 'im Text.
SemVer: minor - optionale Felder hinzufügen; major - nur durch das neue Präfix '/v2/'.
Deprecation-Köpfe: 'Deprecation', 'Sunset', ein Spiegel der Verwendung im Dashboard.
Fichflaggen: die „doppelte Schrift“ der Ereignisse ('v1' und 'v2') in der Übergangszeit.
8) Sicherheit und Compliance
mTLS + Signaturen S2S, kurzlebige Token, limitierte Scopes.
Zero-Trust: Netzwerkrichtlinien, Per-Brand/Region-Schlüssel.
Datenresidenz & PII: Speicherung und Logs in der Region; RLS/Maskierung.
WORM-Audit: Änderungen von Limits, RTP-Profilen, Jackpot-Configs.
RG/AML: synchrone Bremsleuchten auf Wette/Auszahlung; SAR/STR Berichterstattung.
9) Einstieg in die Prod: Start-Checkliste
Bevor der Verkehr eingeschaltet wird
Die Rotation der Sandbox-Geheimnisse → Prod-Schlüssel.
Enthalten sind die Dashboards p95/p99, error-rate, queue-lag, settle-lag.
SLO Alerts: breach by latency/error/lag, splash 'DUPLICATE/IDEMPOTENCY _ MISMATCH'.
DR-Plan: RPO ≤ 5 min, RTO ≤ 30 min; „roter Knopf“ - stoppt neue Sitzungen.
Kanarienvogel
1-5% Publikum/Spiele/Geo; automatisches Rollback bei Verletzung des SLO.
Post-Überwachung 24-72 Stunden, Ledger/Berichte Abstimmungen.
10) Anti-Muster (rote Fahnen)
Publizieren von Ereignissen unter Umgehung von Outbox/CDC.
Kein 'X-Idempotency-Key' bei Schreiboperationen.
Manuelle Korrekturen von Waagen/Settlementen in der DB.
Einzelne Schlüssel für mehrere Marken/Regionen.
BI und regulatorische Berichte über OLTP-Kampfdatenbank.
Null Degradation: Der Sturz des Anbieters bringt die Geldbörse/Plattform zum Absturz.
11) Checklisten
Für den Anbieter
- Ich sende immer 'X-Trace-Id' und 'X-Idempotency-Key'.
- Ich unterstütze die Wiederholung mit dem gleichen Schlüssel ohne Nebenwirkungen.
- Ich veröffentliche Ereignisse nach Schemata aus Registry; Ich speichere' schema _ version'.
- Backoff-Retrays und Deduplizierung implementiert.
- RG-Stops und Bonuslimits werden in Echtzeit eingehalten.
- Zugriffe und Geheimnisse - per Marke/Region, Rotation eingerichtet.
Für die Plattform
- Outbox/CDC auf allen Geldwegen; Ende-zu-Ende-Verfolgung.
- SLO-Dashboards: p95/99, error-rate, queue-lag, settle-lag.
- Deprecation/Sunset-Prozess, ein doppeltes Schreiben von Ereignissen auf Migrationen.
- DR/xaoc-Übungen, Incident Management und Post-Mortems.
- Degradierungsmodi: „keine neuen Sessions“, Deaktivieren von Promo/Jackpot.
12) Beispiel für ein „minimales“ Integration-Playbook (TL; DR)
1. Unterzeichnen Sie einen NDA/Vertrag → geben Sie Sandbox-Zugänge und Schemata aus.
2. Austausch von mTLS/HMAC-Zertifikaten; Starten Sie' provider _ id'.
3. Vereinbaren Sie die Mindestendpoints: 'sessions', 'bets/authorize', 'bets/settle', 'rollback'.
4. Verbindung mit Sandbox-Bus und Registry; Funktions-/Chaos-Fälle zu vertreiben.
5. Übergeben Sie das Zertifizierungsprotokoll: Protokolle, trace-id, SLO-Bericht.
6. Schlüssel auf Prod umschalten, Kanarienvogel einschalten, SLO beobachten.
7. Post-Release-Metriken und „Lektionen“ im Changelog aufzeichnen.
Die erfolgreiche Anbindung eines Providers ist nicht nur eine API, sondern ein überschaubarer Prozess: sicherer Handshake, realistische Sandbox, strenge Zertifizierung, Beobachtbarkeit und klare Kompatibilitätsregeln. Indem Sie den beschriebenen Invarianten (Idempotenz, Outbox/CDC, RG/AML-Fuß, SLO und DR) folgen, beschleunigen Sie Integrationen, vermeiden monetäre Vorfälle und erhalten vorhersehbare Releases - ohne Überraschungen für Spieler, Regulatoren und Unternehmen.
