License-aware tenant config
casinocrm.io je license-agnostický. Stejný code path obsluhuje Nevis crypto kasino i UK GamCom regulovaný sportsbook. License + verticals + KYC ownership + responsible-gaming features jsou per-tenant konfigurace — nikdy hardcoded.
Podporované licence
| Licence | Doporučené verticals | Doporučený KYC | Doporučené RG features |
|---|---|---|---|
| Nevis | casino | platform_owns | self_exclusion |
| Curaçao | casino | platform_owns | self_exclusion + deposit limits |
| MGA / Malta | casino, sportsbook | dual | full RG suite |
| UK GamCom | casino, sportsbook | dual | MGA + affordability_check + session_cooldown |
| CZ | casino | platform_owns | MGA + session_cooldown |
| Gibraltar | casino, sportsbook | dual | MGA-equivalent |
| Isle of Man | casino, sportsbook | dual | MGA-equivalent |
| Kahnawake | casino | platform_owns | Curaçao-level |
| Anjouan | casino | platform_owns | Nevis-level |
| Comoros | casino | platform_owns | Nevis-level |
Tohle jsou doporučení. Operátor si může cokoli přepsat per tenant — casinocrm.io nevynucuje regulatorní compliance (to je práce vašeho compliance týmu), ale defaulty vám dají rozumný startovní bod.
Tenant configuration shape
{
"license_jurisdiction": "mga",
"verticals": ["casino", "sportsbook"],
"kyc_model": "dual",
"config": {
"rg_features": [
"self_exclusion",
"deposit_limit_daily",
"deposit_limit_weekly",
"loss_limit_daily",
"session_limit_minutes",
"reality_check"
],
"messaging": {
"quiet_hours": { "start": "22:00", "end": "09:00", "default_timezone": "Europe/Malta" },
"frequency_caps": {
"email": { "per_day": 1, "per_week": 5 },
"sms": { "per_day": 1, "per_week": 3 }
}
}
}
}
Effective capabilities
Když request dorazí na endpoint, casinocrm.io spočítá effective capabilities = tenant.config ∩ adapter.capabilities. Příklady:
- Sportsbook nav položka v sidebaru se zobrazí, když
tenant.verticalsobsahujesportsbook. - "Request KYC" admin tlačítko se zobrazí, když
tenant.kyc_model = 'crm_owns' or 'dual'AND adapter projektu podporujekyc.initiate. - Self-exclusion enforcement — i když casino platforma neenforce-uje na své straně, CRM filtruje self-excluded hráče ze všech campaign sends. (Capability_mock pattern.)
Když adapter feature nepodporuje
Pokud váš tenant chce deposit_limit_daily, ale adapter, který používáte, ho na platform straně nepodporuje, casinocrm.io feature dá do crm_only módu. CRM stále trackuje limit + suppresuje sends, ale nepropaguje na platformu. Admin UI zobrazí "CRM-only" badge, aby operátoři chápali trade-off.