API aracılığıyla sağlayıcılar nasıl bağlanır: el sıkışma, sertifikasyon, sandbox
Tam makale
1) Entegrasyon haritası: uygulamadan üretime
Aşamalar:1. Ön Satış ve Durum Tespiti: yasal kontroller, coğrafi/lisanslar, içerik uyumluluğu ve RG politikaları.
2. El sıkışma ve güvenlik: sandbox erişimleri, anahtar değişimi (mTLS/HMAC), Schema Registry ile kayıt.
3. Teknik tasarım: Etki alanı modelini (oturumlar/bahisler/yerleşimler/etkinlikler), idempotency, hata kodlarını onaylıyoruz.
4. Sandbox entegrasyonu: cüzdan/PSP/RG emülatörleri, test oyuncuları, yağmur ve alma senaryoları.
5. Sertifikasyon: zorunlu test çalışması, protokol imzalama, yükler ve kaos durumları.
6. Evreleme/UAT: Gerçek para, kanarya trafiği olmadan savaş yapılandırmaları.
7. Go-Live: anahtar şirket, özellik bayrakları etkinleştirme, SLO izleme, olay sonrası hazırlık.
2) El sıkışma: kimlik doğrulama, yetkilendirme, izleme
2. 1 Sırları ve kapsamları paylaşma
mTLS (marka/bölge sertifikaları başına) ve/veya İstemci Kimlik Bilgileri OAuth2.
HMAC/edDSA vücut imzası talep eder (reddetmeme ekler).
Скоупы: 'sessions: write', 'bets: write', 'settlements: write', 'events: publish'.
2. 2 Zorunlu başlıklar
'X-Trace-Id' - uçtan uca izleme.
'X-Brand-Id', 'X-Region', 'X-Provider-Id'.
'X-Idempotency-Key' - tüm yazma işlemleri için.
2. 3 Sağlık kontrolü (koddan önce)
GET/sağlık
^ 200 {"durum":'tamam "," sürüm ":" 1. 7. 2, ""zaman":" 2025-10-23T10: 00: 00Z"}3) Sandbox: orada ne var ve nasıl kullanılır
Çevre kompozisyonu: Gerçeklikle uyum:- Şemaların benzer versiyonları ve satışta olduğu gibi oran limitleri.
- Zaman-gökyüzü, teslimat iki katı, sıra dışı - yerleşik emülasyon düğmeleri.
p_demo_1 (EUR), p_demo_2 (USD), p_blocked_rg (reddedildi), p_low_balance4) Kaynak modeli ve minimum sözleşme
4. 1 Oturum oluşturma
POST/v1/oturumları
{
"player_id":"p_demo_1," game_id":"studio:slot_forge_02, "para birimi": "EUR", "yerel":'de-DE "
}
^ 201 {"session _ id":'s _ 456 "," expires _ at ":" 2025-10-23T19: 10: 00Z "}4. 2 Oran yetkilendirmesi (bekletme)
POST/v1/bets/authorized
Başlıklar: X-Idempotency-Key: bet_r_8c12_1
{
"session_id":"s_456," "bet_id":"b_001," "round_id":"r_8c12," miktar ": {" miktar ": 2. 00, "para birimi":" EUR"}
}
^ 200 {"durum": "yetkili", "hold _ id":'h _ zz1 "}4. 3 Yerleşim (yuvarlak sonuç)
POST/v1/bets/settle
Başlıklar: X-Idempotency-Key: settle_r_8c12_1
{
"bet_id":"b_001," round_id":"r_8c12, "win": {"miktar": 14. 60, "para birimi":" EUR"}, "bonus_state":{"in_bonus":true,"freespins_left":7}
}
^ 200 {"status ": "credited ", "settlement _ id":" st _ 77"}4. 4 Hatalar (tek diyagram)
409
{"kod": "DUPLICATE", "mesaj": "Bet already authorized", "retryable": false, "trace _ id":'tr _ a1b2 "}5) Olaylar ve şemalar: bu olmadan sertifikasyonu geçemezsiniz
Temel konular: Örnek Avro/JSON Şeması (fragment'bet. yerleşmiş '):Json
{
"event_type":"bet. yerleşmiş," "schema_version":"1. 2. 0", "event_id":"uuid," "occurred_at":"2025-10-23T16:21:05Z," "tenant_id":"brand-7," "bölge":" AB", "player_id":"p_demo_1," "trace_id":"tr_a1b2," "yük": {
"round_id":"r_8c12," "bahis ": {"miktar": 1. 00, "currency":" EUR"}, "win ": {"amount": 14. 60, "para birimi":" EUR"}, "in_bonus":true
}, "idempotency_key":"bet_r_8c12_1"
}Kurallar: Geriye dönük uyumlu evrim, "yinelenen ve geç olaylar" için test, "tenant _ id/player _ id'tarafından katılım.
6) Entegrasyon sertifikası: tam olarak ne kontrol ediliyor
6. 1 Fonksiyonel senaryolar (minimum)
'Yetkilendir/yerleştir' isteğini aynı 'X-Idempotency-Key'ile yeniden deneyin - aynı yanıt.
Sıra dışı: 'settle', 'yetkilendirme' olmadan geldi - doğru başarısızlık.
Cüzdan/ağ düştüğünde geri alma zincirleri.
RG durakları: kendini dışlama/kayıp sınırı/süresi - bahsi yasaklar.
Bonus/vager: oyun türüne göre katkı, maksimum bahis, son tarihler.
6. 2 Yük
P95 bütçelerde 'bahis/yerleşim' (örn. '<200-300 ms'), retrays "fırtınalar" yok.
Olay akışları BI ≤ 5 dakikaya ulaşır.
6. 3 Kaos vakaları
Teslimat iki katına, giden kutu/CDC gecikmeleri, bölge "dökümü", kısmi yerleşim.
6. 4 Teslimatlar
Zaman kodları/trace-id ile test protokolü.
SLO raporu (gecikme/hata/gecikme).
Güvenlik özeti (anahtarlar, rotasyonlar, erişimler, Vault/HSM).
7) Sürüm ve geçişler
HTTP:'/v1/... 'transit, olaylar: vücutta' schema _ version '.
SemVer: minör - isteğe bağlı alanlar ekleme; major - sadece yeni önek'/v2/' aracılığıyla.
Kullanımdan kalkma başlıkları: 'Kullanımdan kalkma', 'Günbatımı', gösterge tablosu ayna kullanır.
Özellik bayrakları: Geçişte olayların "çift harfi" ("v1've" v2 ").
8) Güvenlik ve uyumluluk
mTLS + S2S imzalar, kısa ömürlü belirteçler, sınırlı kapsamlar.
Sıfır güven: ağ politikaları, marka/bölge başına anahtarlar.
Veri ikametgahı ve PII: bölgedeki depolama ve günlükler; RLS/maskeleme.
WORM denetimi: limitlerdeki değişiklikler, RTP profilleri, jackpot yapılandırmaları.
RG/AML: bahis/ödeme üzerine senkron durdurma ışıkları; SAR/STR raporlama.
9) Üretime çıkış: başlatma kontrol listesi
Trafik etkinleştirilmeden önce
Sandbox sırlarının dönüşü - ürün anahtarları.
Dahil olan panolar p95/p99, hata oranı, kuyruk gecikmesi, yerleşme gecikmesi.
Uyarı SLO: gecikme/hata/gecikme ile ihlal, dalgalanma 'DUPLICATE/IDEMPOTENCY _ MISMATCH'.
DR-planı: RPO ≤ 5 dakika, RTO ≤ 30 dakika; "kırmızı düğme" - yeni oturumları durdurun.
Kanarya
%1-5 izleyici/oyun/geo; SLO ihlali durumunda otomatik geri alma.
24-72 saat izleme sonrası, defter/rapor mutabakatı.
10) Anti-desenler (kırmızı bayraklar)
Giden kutusu/CDC'yi atlayarak olayları yayınlamak.
Yazma işlemlerinde 'X-Idempotency-Key' yokluğu.
Veritabanındaki bakiyelerin/yerleşimlerin manuel düzenlemeleri.
Birden çok marka/bölge için tek tuşlar.
OLTP savaş veritabanının üstünde BI ve düzenleyici raporlar.
Sıfır bozulma: Sağlayıcının düşmesi cüzdanı/platformu düşürür.
11) Kontrol listeleri
Sağlayıcı için
Her zaman 'X-Trace-Id've' X-Idempotency-Key 'gönderirim.
- Yan etkileri olmadan aynı tuşla tekrarlamayı destekliyorum.
- Schema olaylarını Registry'den yayınlayın; Mağaza 'schema _ version'.
- Geri alma ve veri tekilleştirme uygulanmaktadır.
- RG durur ve bonus limitleri gerçek zamanlı olarak uygulanır.
- Erişim ve sırlar - marka/bölge başına, rotasyon yapılandırılmış.
Platform için
- Tüm para yollarında outbox/CDC; Uçtan uca izleme.
- SLO panoları: p95/99, hata oranı, kuyruk gecikmesi, yerleşme gecikmesi.
- Amortisman/Günbatımı süreci, göçlerle ilgili olayların çift mektubu.
- DR/xaoc egzersizleri, olay yönetimi ve post-mortemler.
- Bozma modları:'yeni oturum yok ', promosyon/jackpot devre dışı bırakın.
12) "minimal" entegrasyon başucu kitabı örneği (TL; DR)
1. Bir NDA/sözleşme imzalayın - sandbox erişimlerini ve şemalarını yayınlayın.
2. Değişim mTLS/HMAC sertifikaları; 'provider _ id' başlatın.
3. Minimum son noktalar üzerinde anlaşın: 'oturumlar', 'bahisler/yetkilendirme', 'bahisler/yerleşme', 'geri alma'.
4. Sandbox veri yoluna ve Kayıt Defterine bağlanın; İşlevsel/kaos durumlarını çıkarın.
5. Sertifika protokolünü geçin: günlükler, trace-id, SLO raporu.
6. Tuşları yiyeceğe çevir, kanaryayı aç, SLO'yu izle.
7. Yayın sonrası metrikleri ve "dersleri" changelog'da kaydedin.
Sağlayıcının başarılı bağlantısı sadece bir API değil, kontrollü bir süreçtir: güvenli bir el sıkışma, gerçekçi bir sanal alan, sıkı bir sertifikasyon, gözlemlenebilirlik ve açık uyumluluk kuralları. Açıklanan değişmezleri (idempotency, outbox/CDC, RG/AML stops, SLO ve DR) takip ederek, entegrasyonları hızlandırır, parasal olaylardan kaçınır ve oyuncular, düzenleyiciler ve işletmeler için sürprizler olmadan öngörülebilir sürümler elde edersiniz.
