Інтеграція місій з бонусною системою і CRM
Місії працюють тільки тоді, коли нагорода нараховується передбачувано і комунікація веде гравця від кроку до кроку. Значить, ядро - це зв'язка Mission Engine ↔ Bonus/Wallet ↔ CRM/CDP, плюс RG/KYC і антифрод. Нижче - готова схема інтеграції з шаблонами даних і перевіреними практиками.
1) Цілі інтеграції
Зростання залучення і ARPPU (net): місії → прогрес → нагороди → повторні сесії/депозити.
Контроль маржі: бюджет-пули, капи, «вартість бонусу» на активного/платить.
Персоналізація: місії та нагороди за сегментами CRM/CDP.
Комплаєнс: KYC/RG-гейти, гео-правила, аудит.
Вимірюваність: A/B, пост-ефект, канібалізація.
2) Архітектура потоку
1. Event Ingest: `bet`, `win`, `deposit`, `mission_progress`, `mission_complete`.
2. Mission Engine: перевірка умов, підрахунок очок/статусів, тригери нагород.
3. Reward Orchestrator: бюджет-чек, RG/KYC, створення'reward _ task'.
4. Bonus/Wallet: кеш, бонус-кеш (вейджер), фріспіни, купони; вебхуки/SDK.
5. CRM/CDP: сегменти, тригерні кампанії, частотні ліміти, suppression-листи.
6. Analytics/DWH: сирі події, вітрини, інкремент, дашборди.
7. Anti-Fraud & RG: капи, евристики/ML, hold-and-review.
3) Модель даних і події
Події (мінімум):- `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) Карта нагород: місії → бонусна система
Правило вибору: масові місії - недорогі нагороди (FS/бонус-кеш), «фінішери «/глибокі ланцюжки - частина безвейджерного кешу для довіри.
5) Reward Orchestrator: бюджет, RG/KYC, ідемпотентність
Ідемпотентність: ключ'reward _ task _ id'+'X-Request-Id'для зовнішніх викликів.
Бюджети: пулы `season_sprint`, `onboarding`, `reengage`; soft/hard cap; circuit-breaker 90%.
KYC/RG-гейти: кеш> € X - тільки L2 +, при активному'cool _ off'нагороди в'held'.
Аудит: WORM-журнал вихідних тіл.
Приклад'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) Інтеграція з гаманцем/бонус-сервісом
Вихідний вебхук (приклад):
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"
}
Відповідь партнера: `200 { "bonus_id":"b_331", "status":"issued" }` → `reward_task. succeeded`.
Помилки 5xx → ретраї з тим же'X-Request-Id'; 4xx → DLQ + ручна обробка.
7) Зв'язка з CRM/CDP
7. 1. Сегментація
Stage: D0-D7 (онбординг), R7-R30 (ре-енгейдж), Core P30.
Монетизація: неплатячі/NPP/RPP/high-value.
Поведінка: завершувачі T1/T2/T3, «застрягли», «майже-досяг».
Ризик: RG-прапори, KYC-статус.
7. 2. Тригери кампаній
On-mission: «залишилося 120 очок», «+ 2 позиції» - in-app/push.
Post-mission: «бонус активований/закінчується через 12 год».
Winback: не починав місію 48 ч → персональну пропозицію (якщо дозволено).
Suppression: при'cool _ off '/self-exclusion ніяких промо.
7. 3. Правила частоти
Max 1 push/4 год, 1 email/24 год на місію; capping по каналу і в цілому.
Quiet hours за локальним часом, подвійна опта-ін/аут.
8) Пайплайн даних в CRM
CDP-вітрина'mission _ funnel _ daily':- `eligible`, `viewed`, `joined`, `started`, `t1..tn`, `completed`, `rewarded`.
- Часи до T1/T2/...; статус бонуса;'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) Антифрод і «fair play»
Капи: очки/ставку, очки/хв/год/день; ліміт повторюваних мікроставок.
Тех-сигнали: headless, проксі, дублікати'device _ fp'.
Поведінкові фільтри: мінімальна дисперсія ставок; «ідеальні» патерни → hold.
Призи: > € X і топ-позиції - відкладена видача до KYC.
CRM-обмеження: не стимулювати «фермерів окулярів»; suppression по fraud-score.
10) Економіка нагород і контроль маржі
Ключові показники:- `Prize & Bonus Cost per Active` / `per Payor`
- `ΔARPPU (net)` = ARPPU − (Prize+Bonus per payor)
- 'Net Uplift'= Інкрементальна виручка − Вартість (призи + операції + фрод)
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-тести інтеграції
Одиниця: користувач, sticky-assignment, стратифікація (payer/geo/platform).
Primary: participation_net, completion, `ΔARPPU (net)`.
Guardrails: скарги/1k, fraud-flags, RG-спрацьовування, SRM-алерти.
CUPED: pre-value (ARPPU/окуляри за минулий тиждень) для зниження дисперсії.
Інтерференція: роздільні лідерборди/нормалізація очок.
12) UX-патерни, які «в'яжуть» місії, бонуси і CRM
Один екран - одна мета: чіткі правила, видимий прогрес.
Негайний зворотний зв'язок: «+ 10 очок» і бейдж прогресу.
Видимість нагород: що вже отримано, що згорить, що далі.
Гайдлайн по копірайту: «запрошуємо» до участі, не тиснемо на депозит.
Локалізація: тексти, валюти, терміни, юрисдикції.
13) Дашборди (щодня)
1. Воронка місій: Reach → Join → Start → T1/T2/… → Complete → Rewarded.
2. Комунікації: send/open/click, opt-out, per-channel capping.
3. Монетизація: ΔARPPU (net), Avg Deposit, Paying Share.
4. Вартість: Prize/Bonus Cost%, Net Uplift, бюджет-пули.
5. Якість: DLQ, ретраї, HMAC-помилки, latency p95, фрод-прапори, RG-тригери.
6. Сегменти: новачок/mid-core/high-value; web/iOS/Android; Гео.
14) Чек-лист запуску
- Схема подій, versioning, контракти вебхуків (HMAC, TTL, ідемпотентність).
- Маппінг місій → типи нагород + бюджети/капери.
- KYC/RG-гейти, hold-and-review великих призів.
- Інтеграція гаманця/бонус-сервісу (sandbox → prod), ретраї/DLQ.
- Сегменти CRM/CDP, тригери і suppression-правила, частотні ліміти.
- Дашборди SLO та економіки; алерти SRM/DLQ/бюджет.
- A/B-план, CUPED, роздільні лідерборди.
- Runbook інцидентів: перегравання подій, ручна видача, «заморожування» правил.
15) Міні-кейс (синтетичний)
Запущено: «Онбординг 7 днів», «Вихідні спринти», «Ретерн 14 днів».
Нагороди: T1/T2 - FS/бонус-кеш; фінішери - частина безвейджерного кешу.
CRM: тригери «майже-досяг», «закінчується бонус», quiet-hours, capping.
6 тижнів, 2 бренди, holdout 15%.
Результати: participation_net 24% → 33% (+9 п.п.), completion 42% → 56% (+14 п.п.), ΔARPPU (net) +€2,8; Prize&Bonus/Active +€0,8; DLQ <0,07%; fraud-flags <1% PF.
Рішення: масштабування, збільшення «довгого хвоста» мікропризів і локальні тексти в CRM.
Інтеграція місій з бонусною системою і CRM - це єдина машина: події та правила, бюджет-контроль, гаманець/бонуси, персоналізація та безпечні комунікації. Побудуйте її на ідемпотентності, KYC/RG-гейтах, сегментах CRM і прозорій економіці - і місії будуть стабільно приносити нетто-інкремент, а не «з'їдати» маржу.