ציות ודיווח API
1) מטרה
API ציות - ממשק יחיד עבור:- אוסף ואימות של אירועים (משחק/תשלום/אימות) עבור AML/Gaming אחראי (RG).
- פקחים (KYC/KYB, סנקציות/PEP, מקורות מימון, גיל).
- דיווח רגולטורי (תקופתי ו-ad-hoc) על ידי שוק.
- שמירה על יומני ביקורת וביצוע משפטי Hold.
- החלפת נתונים עם ספקים (PSP, KYC) ופורטלי מדינה.
התוצאה: תקורה מבצעית מופחתת, דיווח מהיר יותר, איתור, וציות מקומי.
2) היקף
זיהוי ואימות: KYC/KYB סטטוסים, רמות אימות, מסמכים.
(AML/סנקציות/PEP: סריקה, ניטור עסקאות, STR/SAR, התראות.
משחק אחראי (RG): גבולות, הדרה עצמית, ”Cool-off”, מאזני סיכון התנהגותיים.
תשלומים ועסקאות: הפקדות/משיכות, גב מטען, מכניקת בונוס.
דיווח: GGR/Mass, רישומי שחקן/סשן, הגבלות שיווק, תקריות אבטחה.
ביקורת ואחסון: רישומים בלתי ניתנים לשינוי (WORM), Ligal Hold, DSAR/RTBF.
3) צרכני מידע ויצרנים
צרכנים: רגולטורים, ציות פנימי/סיכון, BI/DWH, סקופ, פיננסים.
יצרנים: חזיתות/אחוריות iGaming, PSP/aquiring, ספקי KYC, אנטי-הונאה, CRM, רשתות שיוך.
4) התייחסות אדריכלית
1. Edge/API-process (mTLS, OAuth2/OIDC, דרג-מוגבל, WAF).
2. שירות ציות (כללים עסקיים, תזמור ספקים, נורמליזציה).
3. אוטובוס אירועים (קפקא/רדפנדה) - מאוורר בארכיון SIEM/DWH.
- מקוון (PostgreSQL/ClickHouse) לשאילתות מהירות/צבירה.
- ארכיון (אובייקט אחסון + תולעת) עבור חפצים ודיווחים בלתי ניתנים לשינוי.
- 5. ביקורת ותצפית: OpenTelemetry (trace_id), רישומי אינדקס, לוחות מחוונים.
- 6. מחברים: KYC, סנקציות, מודולי RG, שערי מדינה עם חתימה אלקטרונית.
5) נקודות קצה עיקריות (v1)
5. 1 KYC/KYB וסנקציות
'POST/v1/kyc/check' - בקשה לבדיקת KYC (idempotent).
'GET/v1/kyc/user _ id/status' - הרמה הנוכחית ותאריך התפוגה.
'פוסט/v1/סנקציות/מסך' סינון סנקציה/PEP.
'GET/V1/סנקציות/@ user _ id/להיטים' - גפרורים/הסלמה.
5. 2 AML וניטור עסקאות
'POST/v1/aml/transaction' - שליחת אירוע (הפקדה/בתוך/הימור/תשלום).
'קבל v1/aml/התראות? מדינה = 'פתוח - התראות/מקרים פתוחים.
'POST/v1/aml/str' - היווצרות והגשה של STR/SAR (על ידי שוק).
5. 3 משחקים אחראיים (RG)
פוסט/v1/rg/הרחקה עצמית - סט/הסרה עצמית.
'GET/v1/rg/limits/@ user _ id' - גבולות (הפקדה/קצב/זמן).
הערכת סיכוני התנהגות.
5. 4 דיווח ורישומים
'POST/v1/reports/process' - דור דיווח (סוג, תקופה, תחום שיפוט).
'GET/V1/Reports/üreport _ id' - סטטוס, הורדת חפצים (PDF/CSV/JSON), חשיש.
רשמים (שחקנים, מפגשים, בונוסים, GGR) עם עבודת אלילים.
5. 5 ביקורות ועסקאות משפטיות
'GET/v1/ביקורת/אירועים' - בחירת אירועים (מסנן על ידי שדות ECS/OCSF).
'POST/v1/Legal/Hold' סט/הסר Ligal Hold על האובייקט/תיקייה.
'פוסט/v1/פרטיות/dsar' - להתחיל DSAR, סטטוסים, חבילות ייצוא.
6) מודלים נתונים (מקוצרים)
6. 1 אירוע העברה (JSON)
json
{
"idempotency_key": "trx-8b1a9953",
"timestamp": "2025-11-01T16:02:11Z",
"user": {"id":"U-12345","dob":"1999-04-21","country":"EE"},
"transaction": {
"id": "T-778899",
"type": "deposit",
"amount": {"value": 200. 00, "currency": "EUR"},
"method": "card",
"psp_ref": "PSP-222-ABC"
},
"context": {
"ip": "198. 51. 100. 10",
"device_id": "d-9af0",
"session_id": "s-2233",
"trace_id": "f4c2..."
},
"labels": {"market": "EE", "affiliate": "A-77"}
}
6. תוצאה של 2 KYC
json
{
"user_id": "U-12345",
"level": "L2",
"status": "verified",
"expires_at": "2026-04-21",
"checks": [
{"type":"document","result":"pass"},
{"type":"liveness","result":"pass"},
{"type":"pep_sanctions","result":"no_hit"}
],
"provider": {"name":"KYCX","reference":"KYCX-4455"}
}
6. תיאור דיווח 3
json
{
"report_id": "RPT-EE-GGR-2025Q3",
"type": "ggr_quarterly",
"jurisdiction": "EE",
"period": {"from":"2025-07-01","to":"2025-09-30"},
"status": "ready",
"artifact": {
"format": "CSV",
"size_bytes": 183442,
"sha256": "c9b1f...e21",
"download_url": "urn:reports:RPT-EE-GGR-2025Q3"
},
"notes": "Rounded to cents; FX=ECB daily"
}
7) ביטחון וגישה
אימות: OAuth2/OIDC (אישורי לקוח, JWT), mTLS אופציונלי.
אישור: RBAC/ABAC; סקופים נפרדים לפי התחום ('aml: לכתוב', 'kyc: לקרוא', 'דוחות: ליצור').
הצפנה: TLS 1. 2 + במעבר; במנוחה באמצעות KMS/CMK; JWE עבור שדות רגישים.
מזעור PII: מינימום חנות; מסכה פאן/IBAN זהות בדויה. pseudo_id'.
יומן גישה: ביקורת של כל הקריאות של נקודות קצה ”רגישות”, התראות להעלאה המונית.
החזקה ושימור חוקיים: אחסון תולעת לדיווחים ו ־ STR; מדיניות שימור 5-7 שנים (על ידי שוק).
8) ורסינציה ותאימות
URI versioning: ”/v1 ”, ”/v2”; שינויים קלים - דרך שדות מתכלים.
מדיניות פיטורים: תמיכה של 6-12 חודשים; כותרות ”שקיעה”, ”פיחות”.
סכימות: JSON Schema + OpenAPI; חוזים מותנים במודיעה.
נדודים: מתאם/דגלי תכונה, תאימות דו כיוונית לתקופת המעבר.
9) אמינות: אידמפוטנטיות ו ”בדיוק פעם אחת”
Idempotency-Key in 'POST' (מפתחות חנות 24-72 שעות).
משלוח של לפחות פעם אחת דרך אוטובוס + קבל שכפול (event id/hash).
Outbox/Inbox-Design עבור אינטגרציה, retrai עם הפסקה מעריכית וג 'יטר.
סדר: user _ id/account _ id מחלק מפתחות לדטרמיניזם.
10) עבודת אלילים, פילטרים, חיפוש
pagination: מבוסס על הסמן (”page _ token”, ”גבול <= 1000”).
מסננים: בתחום השיפוט, תקופה, מעמד, ספק, הערכת סיכונים.
חיפוש טקסט מלא עבור ביקורת/רשומות (תת-קבוצה מוגבלת של שדות).
ייצוא: אסינכרוני, הגבלת גודל, הכנת ארכיון עם חתימת חשיש.
11) הגבלות ומכסות
מגבלות קצב ללקוח/מסלול (למשל: 100 סל ”ד התפוצצו, 1000 סל” ד נמשכו).
הגבלת תקציב על דיווחים כבדים (קרדיטים/יום).
N + 1 הגנה: חבורות ונקודות קצה מצורפות.
מגבלה של עומק הדגימות ההיסטוריות (לדוגמה, 24 חודשים באינטרנט, להלן נקרא הארכיון).
12) לוחות מחוונים ו ־ SLOs
Inbleget lag p95 <30 שניות; KYC הצלחה> 99%; שדר 24 שעות.
API/99 זמינות. 9%; Latency p95 <300 ms לקריאה; <800 ms להקלטה.
אחסון דוחות עלות/GB; הודעות ברמה גבוהה לרגולטורים.
Widgets: AML התראת מפת חום, משפך KYC, דוחות מדינה לשחרר, תור STR.
13) תחומי שיפוט: מיפוי ותבניות
תבניות דיווח שוק (שדות, פורמטים, תדר): EE, LT, LV, RO, MT, UK וכו '.
מיפוי מונחים (GGR/NGR, בונוסים, מגבלות הפקדה, בקרת גיל).
לוקליזציה של אזורי זמן/לוחות שנה; תקן את התווית של מקור FX.
ספריית סכימה: "דוחות/תחום שיפוט/[ סוג ]/גרסה... ג 'סון'.
14) שגיאה בטיפול (פורמט יחיד)
json
{
"error": {
"code": "RATE_LIMIT_EXCEEDED",
"message": "Too many requests",
"request_id": "req-7f91",
"hint": "Reduce RPS or request higher quota",
"retry_after": 30
}
}
HELL TRANSACA: ”INVALID _ SCHEMA”, ”NOT _ Authorized”, ”LEGAL _ HOLD _ ACTIVE”, ”DESPECT _ TIME”.
15) בדיקה ואישור
מבחני חוזה (OpenAPI # יצירת לקוחות מבחן).
הגדרות קבועות על ידי סמכות שיפוט, זהב-קבצים לדיווח.
”רשימות שחורות” של שדות PII ביומנים; ניתוח סטטי של דליפות סודיות.
תרגילי ד ”ר רגילים לשחזור ארכיון דו” ח.
16) דוגמאות
16. דור דיווח 1
חקירה
http
POST /v1/reports/generate
Content-Type: application/json
Authorization: Bearer <token>
json
{
"type": "ggr_monthly",
"jurisdiction": "EE",
"period": {"from":"2025-10-01","to":"2025-10-31"},
"format": "CSV",
"notify": ["compliance@company"],
"parameters": {"include_bonus_breakdown": true}
}
תשובה
json
{"report_id":"RPT-EE-GGR-2025-10","status":"processing","eta_seconds":120}
16. 2 STR/SAR לשלוח
json
{
"case_id": "AML-2025-0091",
"user_id": "U-12345",
"reason": "Structuring deposits under threshold",
"evidence": ["txn:T-778899","txn:T-778900"],
"attachments": ["urn:doc:kyc:U-12345:v3"],
"jurisdiction": "EE"
}
16. 3 הדרה עצמית
json
{
"user_id":"U-12345",
"type":"national_register",
"action":"enable",
"effective_from":"2025-11-01",
"effective_to":"2026-11-01"
}
17) ביקורת מובנית וחוסר תזוזה
אוטולוגיה: "בקשה _ id", "trace _ id', קורא לקוח, היקף.
חתימה על חבילות דיווח (SHA-256) + רישום חשיש; עגינה תקופתית.
ארכיון תולעת להעלאה רגולטורית ו STR.
היסטוריה של תצורות שלטון ותבנית (רישום שינוי מדיניות ↔ קישור).
18) תהליכים ו ־ RACI (בקיצור)
R: Complication Platform Team (פיתוח/מבצעים).
א: מנהל ציות/CISO (מדיניות, תקציבים, סדרי עדיפויות).
C: Legal/DPO, Finance, Architecture, Data.
I: מוצר, תמיכה, שותפים (PSP/KYC).
19) מימוש מפת דרכים
MVP (4-6 שבועות):1. '/v1/kyc/check ', '/v1/aml/transaction', '/v1/reports/create '(2-3 תבניות מפתח).
2. OAuth2 + מגבלת קצב + אידמפוטנטיות בסיסית.
3. ארכיון של דוחות באחסון אובייקט עם חתימת חשיש.
4. לוח מחוונים ותורים.
שלב 2 (שבועות 6-12):- תבניות שיפוט (5-8 שווקים), STR/SAR, RG-endpoints, DSAR.
- צבירה ספקית (CUS/סנקציות), רטריי, דדופ.
- מדיניות משפטי הולדם, תולעים, תפקידים מורחבים.
- חוק-כקוד לדיווחים/כללי AML, שינוי סימולטור.
- ריבוי דירות (B2B2C, מותגים/עורות), מכסות וחיוב.
- ארגז חול ואישור לאינטגרטורים חיצוניים.
20) טעויות טיפוסיות וכיצד להימנע מהן
סטייה של תוכניות לפי שוק: ספרייה מרכזית, תוכנות מוך אוטומטי.
אין אידמפוטנטיות - סוג 'idempotency _ key' וחלון השיכפול.
סודות ביומנים: פילטרים בולעים, ניתוח סטטי.
דוחות מקוונים ארוכים: לעשות באופן אסינכרוני עם סטטוס מושך והודעות.
RBAC חלש: פוסט ”read _ reports”, ”increate _ reports”, ”administing”.
מטבע/זמן: לתקן 'fx _ source', 'timezone', לאחסן UTC.
21) גלוסרי (קצר)
KYC/KYB - זיהוי של אנשים פיזיים/משפטיים.
AML/STR/SAR - אנטי הלבנת/פעילות חשודה/דו "ח.
ר "ג הוא משחק אחראי.
GGR/NGR - הכנסות ממשחקים ברוטו/נטו.
אחסון של פעם בכתב.
כללי חוק-כקוד-כללים כקוד עם בדיקות/ויסות.
22) השורה התחתונה
ציות ודיווח API הוא שכבה יציבה, מאובטחת ומתקנת בין פעולות iGaming לבין דרישות רגולטוריות. הדבקות בעקרונות ממאמר זה (מזימות מחמירות, אינטגרציה בטוחה, אידמפוטנטיות, ביקורת בלתי ניתנת לשינוי, תבניות שיפוטיות ו-SLOs) מבטיחה יכולת חיזוי, מעבר מהיר של ביקורות והקלה בסיכונים בשוקי מפתח.