Integrazione delle missioni con il sistema di bonifica e CRM
Le missioni funzionano solo quando la ricompensa è prevedibile e la comunicazione guida il giocatore da un passo all'altro. Quindi il nucleo è un collegamento Mission Engine da Bonus/Wallet da CRM/CDP, più RG/KYC e antifrode. Di seguito è riportato uno schema completo di integrazione con modelli di dati e pratiche collaudate.
1) Obiettivi di integrazione
Aumento del coinvolgimento e ARPPU (net): missioni per il progresso dei premi, ripetizioni delle sessioni/depositi.
Controllo dei margini: budget-pool, caps, «costo bonus» su attivo/pagato.
Personalizzazione: missioni e riconoscimenti per segmenti CRM/CDP.
Compilation: KYC/RG-gate, geo-regole, controllo.
Misurazione: A/B, post-effetto, cannibalizzazione.
2) Architettura di flusso
1. Event Ingest: `bet`, `win`, `deposit`, `mission_progress`, `mission_complete`.
2. Mission Engine - Verifica condizioni, conteggio punti/stato, trigger dei premi.
3. Reward Orchestrator: bilancio-assegno, RG/KYC, creazione dì reward _ task '.
4. Bonus/Wallet: cache, bonus-cache (vager), fresine, coupon; webhook/SDK.
5. CRM/CDP: segmenti, campagne a trigger, limiti di frequenza, fogli di avanzamento.
6. Analytics/DWH: eventi crudi, vetrine, incresciosi, dashboard.
7. Anti-Fraud & RG: caps, euristici/ML, hold-and-review.
3) Modello di dati ed eventi
Eventi (minimo):- `mission_view / join / progress / complete`
- `points_awarded {rule_id, amount, caps}`
- `reward_task. created / succeeded / failed / held`
- `wallet_credit / bonus_issued / freespins_issued`
- `kyc_status_changed / rg_event`
- `crm_send / crm_open / crm_click / crm_unsub`
json
{
"event": "mission_complete", "ts": "2025-10-24T10:17:12Z", "user": {"id":"u_123", "geo":"TR", "platform":"ios", "payer_flag":true}, "mission": {"id":"m_4521", "type":"turnover", "segment":"mid_core"}, "progress": {"value": 1000, "window":"2025-10-24"}, "context": {"session_id":"s_778"}
}
4) Mappa dei premi: missioni e sistema bonus
Regola di selezione: missioni di massa - Premi a basso costo (FS/Bonus Cache), Finchers/catene profonde - parte della cache di fiducia.
5) Reward Orchestrator: budget, RG/KYC, Idampotenza
Idempotence: chiave «reward _ task _ id» + «X-Sollest-Id» per le chiamate esterne.
Budget: pool «season _ sprint», «onboarding», «reengage»; soft/hard cap; circuit-breaker 90%.
KYC/RG-gate: cache> X € - solo L2 +, con premio attivo «cool _ off» in «held».
Controllo: registro WORM dei corpi in uscita
Esempio dì reward _ task. created`:json
{
"type":"reward_task. created", "reward_task_id":"rt_9a7", "user_id":"u_123", "origin":{"mission_id":"m_4521","threshold":"final"}, "reward":{"type":"bonus_cash","amount":5,"currency":"EUR","wagering":15,"expiry":"2025-10-27T00:00:00Z"}, "pool_id":"season_sprint", "status":"pending"
}
6) Integrazione con portafoglio/servizio bonus
Webhook in uscita (esempio):
POST /wallet/bonus. issue
X-Request-Id: rid_7f5...
X-Timestamp: 1730061700
X-Signature: sha256=...
{
"user_id":"u_123", "bonus": {"type":"bonus_cash","amount":5,"currency":"EUR","wagering":15,"expiry":"2025-10-27T00:00:00Z"}, "reason":"mission:m_4521"
}
La risposta del partner è "200 {" bonus _ id ":" b _ 331 "," status ":" issued "}" → "reward _ task. succeeded`.
Errori 5xx retrai con lo stesso X-Sollest-Id; 4xx DLQ + elaborazione manuale.
7) Collegamento con CRM/CDP
7. 1. Segmentazione
Stage: D0-D7 (onboording), R7-R30 (re-engage), Core P30.
Monetizzazione: non paganti/NPP/RPP/high-value.
Comportamento: completatori T1/T2/T3, «bloccati», «quasi raggiunto».
Rischio: bandiere RG, stato KYC.
7. 2. Trigger campagne
On-mission: «restano 120 punti», «+ 2 posizioni» in-app/push.
Post-mission: «Bonus attivato/scaduto tra 12 ore».
Winback non ha iniziato la missione 48 ore per un'offerta personale (se autorizzata).
Suppressione: a «cool _ off »/self-exclusion nessun promo.
7. 3. Regole di frequenza
Max 1 push/4 ore, 1 email/24 ore per missione; capping nel canale e in generale.
Quiet hours ora locale, doppio opta-in/out.
8) Pipline dati CRM
Vetrina CDP «mission _ funnel _ daily»:- `eligible`, `viewed`, `joined`, `started`, `t1..tn`, `completed`, `rewarded`.
- Tempi prima di T1/T2/...; stato bonus; 'cost _ eur'; 'net _ arppu'.
sql
SELECT user_id
FROM mission_funnel_daily
WHERE mission_id =:m
AND started = true
AND completed = false
AND points_to_next <= 150
AND last_seen_at > now() - interval '24 hour'
AND rg_ok = true;
9) Antifrode e «fair play»
Caps: punti/puntata, punti/min/ora/giorno; il limite delle microspie ripetute.
I segnali sono headless, proxy, duplicati «device _ fp».
Filtri comportamentali: variazione minima delle scommesse; «perfetti» pattern di → hold.
Premi:> € X e top position - rilascio posticipato a KYC.
Limiti CRM: non incoraggiare gli «agricoltori di occhiali»; suppression по fraud-score.
10) Economia dei premi e controllo dei margini
Indicatori chiave:- `Prize & Bonus Cost per Active` / `per Payor`
- `ΔARPPU (net)` = ARPPU − (Prize+Bonus per payor)
- «Net Uplift» = Ricavi incrementali - Costo (premi + operazioni + frode)
sql
SELECT pool_id, SUM(value) AS spent, MAX(budget) AS limit, SUM(value)/MAX(budget) AS fill
FROM reward_ledger
WHERE date(created_at)=current_date
GROUP BY pool_id;
11) A/B test di integrazione
Unità: utente, sticky-assignment, stratificazione (payer/geo/platform).
Primary: participation_net, completion, `ΔARPPU (net)`.
Guardrails: lamentele/1k, fraud-flags, RG, SRM-alert.
CUPED: pre-value (ARPPU/punti della scorsa settimana) per ridurre la dispersione.
Interferenza: liderbord separati/normalizzazione degli occhiali.
12) Pattern UX che «coagulano» missioni, bonus e CRM
Uno schermo è un unico obiettivo: regole chiare, progressi visibili.
Il feedback immediato è «+ 10 punti» e il badge del progresso.
La visibilità dei premi è ciò che è già arrivato, ciò che brucia, cosa segue.
Haydline su copyright, «invitare» a partecipare, non forzare il deposito.
Localizzazione: testi, valute, scadenze, giurisdizione.
13) Dashboard (giornaliero)
1. Il vortice della missione è Reach-Join-Start T1/T2/... Complete-Rewarded.
2. Comunicazioni: send/open/click, opt-out, per-channel capping.
3. Monetizzazione: ARPPU (net), Avg Deposit, Paying Share.
4. Costo: Prize/Bonus Cost%, Net Uplift, budget-pool.
5. Qualità: DLQ, retrai, errori HMAC, latency p95, flag, trigger RG.
6. Segmenti: nuovo/mid-core/high-value; web/iOS/Android; geo.
14) Assegno foglio di avvio
- Schema di eventi, versioning, contratti di webhoop (HMAC, TTL, Idempoting).
- Mupping missioni per tipi di premi + budget/capperi.
- KYC/RG-gate, hold-and-review grandi premi.
- Integrazione portafoglio/servizio bonus (sandbox → prod), retrai/DLQ.
- Segmenti CRM/CDP, trigger e regole di suppressione, limiti di frequenza.
- Dashboard SLO ed economia; alert SRM/DLQ/budget.
- A/B, CUPED, liderboard separati.
- Runbook incidenti: reimpostazione degli eventi, estrazione manuale, congelamento delle regole.
15) Mini valigetta (sintetico)
«Onboarding 7 giorni», «Weekend sprint», «Return 14 giorni».
Premi: T1/T2 - FS/bonus cache; I finisher fanno parte di una cache senza documenti.
CRM: trigger «quasi raggiunto», «bonus scaduto», quiet-hours, capping.
6 settimane, 2 del marchio, holdout 15%.
Risultati: Partecipation _ net 24% → 33% (+ 9 pp), competition 42% a 56% (+ 14 pp), → ARPPU (net) + 2,8 €; Prize&Bonus/Active +€0,8; DLQ <0,07%; fraud-flags <1% PF.
La soluzione è ridimensionare, aumentare la coda lunga delle microprosse e i testi locali in CRM.
L'integrazione delle missioni con il sistema di bonifica e CRM è un'unica macchina: eventi e regole, budget-controllo, portafogli/bonus, personalizzazione e comunicazioni sicure. Costruiscila su idempotenza, KYC/RG-gate, segmenti CRM ed economia trasparente - e le missioni porteranno stabilmente un netto incrementale, anziché «mangiare» i margini.