Platipus - Overview and Integration
Overview
Platipus is an HTML5 slot provider with an emphasis on lightweight clients and regular releases. The portfolio includes classic 3 × 3/5 × 3 and modern video slots with multipliers, respin/hold-and-win, expanding wild and freespins. Typical integration: SSO → launch-URL, BET/WIN/JACKPOT wallet, JS bridge events for analytics, CRM and promo.
Who fits: operators/aggregators who need a predictable catalog of "fast" HTML5 games, simple operation and flexibility of promo without complex customization.
Portfolio and user experience
Content and Mechanics
Video slots: 5 × 3/6 × N; lines/ways, sometimes cascades; xN multipliers; expanding/stacked/walking wilds; respin/hold-and-win; collection symbols and upgrades.
Classic slots: 3 × 3 "fruits/sevens/BAR" with updated mathematics and accelerated gamelup.
Bonus modes: freespins with special symbols/multipliers, pick-bonus, risk play/doubling (if allowed by jurisdiction).
Bonus Buy/Feature Buy: optional, included by title and market.
Jackpots: fix/local/network - by connection configuration.
UX/UI
HTML5 clients: fast start, compact assets, stable FPS in mobile WebViews.
Readable pay tables, progress indicators, round history.
L10n: multilingual/multicurrency, local number/date formats and Responsible Gaming messages.
Technology and performance
Client: Canvas/WebGL, lazy-load assets, sprite/audio compression, critical resource preload.
Delivery: CDN/edge caching, TTL managed, failover domains.
Network: TLS 1. 2+, HTTP/2+; target latency to nearest PoP <150-200 ms.
Mobile: correct resume after folding, resistance to short-term network breaks.
Math, RTP and Limits
RTP pools: usually ≈96 %/ ≈94 %/ ≈92% (and other options) - selected at the build/catalog level for the market and contract.
Volatility: from low/medium (classic) to high (hold-and-win/multipliers). Volatility/Hit Rate display badges are recommended.
Limits: min/max bet, auto-spins, session timeouts; for some games - limits on the cost of bonus features.
Currencies: calculation in minor units (integer) with correct rounding.
Integration model (high-level)
1. The player → the front of the operator → SSO/JWT (short TTL).
2. Operator/Aggregator API ↔ Platipus API: creating session, issuing 'launch _ url'.
3. Client (iFrame/new window) ↔ Game Server: game client + JS bridge (postMessage/SDK).
4. Wallet operator API: BET (auth-debit), WIN/PAYOUT (credit), JACKPOT_PAYOUT, rare adjustments.
5. BI/Reports: analytical events, round/transaction uploads, hourly/daily reconciliation.
Environmental requirements
Security: IP-allowlist for S2S, request/response signing, key/secret rotation, strict CSP for iFrame domains.
Reliability: queues per player/session, retrays with exponential pause, key deadlock, sticky routing.
Compatibility: current Chrome/Edge/Safari/Firefox, iOS/Android WebView.
Create and start a session (pseudo-REST)
Request:
POST /api/v1/sessions
Authorization: Bearer <operator-key>
{
"player_id": "u_80541",
"currency": "EUR",
"locale": "ru-RU",
"game_id": "platipus_<slug>",
"return_url": "https://operator. example. com/casino/return",
"limits": { "bet_min_minor": 100, "bet_max_minor": 400000 },
"flags": { "buy_feature": false, "autoplay": true },
"tags": { "vip_level": 1, "aff_id": "AFF-458" }
}
Answer:
{
"session_id": "sess_4c2d...",
"launch_url": "https://plp. example/launch? sess=sess_4c2d...",
"expires_in": 3600
}
Client launch: 'launch _ url' in iFrame/window; heartbeat/reauth supported; events across the JS bridge (ACK/NACK).
Wallet API and idempotency
Streams
BET (auth-debit): rate freeze/write-off → 'APPROVED/DECLINED '(balance/reason).
WIN/PAYOUT (credit): Credits the win/jackpot → returns the final balance.
ADJUST/REVOKE: exceptional adjustments with full audit trail.
Warranties
Header'X-Idempotency-Key '(TTL ≥ 24 hours) and deadlock on the operator side.
Per player/session queues → guaranteed order.
Correlation 'round _ id '/' bet _ id '/' session _ id'; DLQ for collisions/replicates.
POST /wallet/payouts
Idempotency-Key: d0b7-...
{
"player_id": "u_80541",
"round_id": "r_2025_11_02_20_28_44",
"amount_minor": 149000,
"currency": "EUR",
"reason": "round_win"
}
JS Bridge and Gaming Events
Client events → to the operator: 'GAME _ INIT', 'SPIN/BET', 'WIN', 'FEATURE _ TRIGGER', 'RESPIN', 'BONUS _ START/END', 'JACKPOT _ HIT', 'ERROR'.
Transport: 'postMessage '/SDK, ACK/NACK acknowledgements, strict' origin 'validation and nonce/signatures.
Purpose: analytics, CRM triggers, dynamic banners, campaign connection (free rounds/missions/tournaments/drops).
Promo: freespins, missions, tournaments, jackpots
Free Rounds / Free Spins
Issuance through the Provider/Promo API or synchronization with the bonus engine.
Parameters: fix. bet/denom, number of spins, expiration date, 'game _ id'.
Accounting: winnings in real/bonus-balance; vager - according to operator/market rules.
Missions/Events
"Play N spins," "win ≥ X ×," "activate feature M times" - progress through 'MISSION _ PROGRESS'.
Tournaments/leaderboards
Metrics: sum of winnings, max-multiplier, number of spins; 'TOURNAMENT _ SCORE'events to dimension.
Jackpots/Prize-drops
Multi-tier (mini/major/mega), mystery/prize-drops; 'seed/cap', multi-currency restrictions.
Separate 'JACKPOT _ PAYOUT' with idempotency.
Geo-configuration and compliance
Geo directory: inclusion/exclusion of titles, selection of RTP profiles, disabling Buy Feature/risk games, age/regional restrictions.
Responsible game: self-exclusion/timeouts/limits, local RG banners and cookies.
Data/PII: minimization and pseudonymization of identifiers; log storage periods; export at the request of regulators.
Certification: use of certified builds/versions under target jurisdictions.
Monitoring, Reporting and SLAs
Key Metrics
Those: uptime API/Launch/CDN, p95 wallet callbacks, asset download speed, JS bridge error codes.
Product: 'Launch → First Spin', 'Spin → Bonus', ARP (B) U, hold, ROI campaigns (freespins/missions/tournaments/drops).
Finance: share of retrays/deduplications, anomalies in amounts, nightly discrepancies.
Export/Reconciliation
Hourly/daily offloads (CSV/JSON/S3) by round/transaction/bonus/jackpot.
Reconciliation in minor units by'round _ id/bet _ id/session _ id '; auto-alerts to duplicates/omissions/" dumb" collbacks.
SLO/SLA Benchmarks
API uptime ≥ 99. 95%, CDN assets ≥ 99. 9%.
p95 collbecs <500 ms (intraregional).
MTTR - according to the incident plan; separate SLOs for prime time/mass campaigns.
Security
Transport: TLS 1. 2+, HSTS; strict CSP for iFrame domains.
Access: JWT/OAuth2 (client), IP-allowlist/signature/mTLS (S2S) if necessary, rotation of secrets.
Data: prohibition of open PII in the logs; tokenization/hash 'player _ id'; encryption at rest/backup at the operator.
Anti-fraud: spin/bet rate anomalies, multiple sessions, suspicious ASN/VPN; quotas/throttling/block lists.
Scalability and fault tolerance
Edge cache: manifests/assets/localizations - managed by TTL, manual disability on releases.
Rate-limits: per player/session/API endpoint; protection against "storms" of events.
Graceful degradation: simplifying assets/effects, reducing the frequency of events, banner "technical work."
Failover: backup launch/CDN domains; re-issue token without losing context.
Checklists
For development
- SSO tokens: short TTL, clock-skew protection.
- Wallet API: idempotent debit/credit, signature, queues, DLQ.
- JS bridge/SDK: events, ACK/NACK, secure 'origin'.
- Promo API: free rounds/missions/tournaments/drops; vager accounting.
- Export: CSV/JSON/S3; completeness of fields (minor units, round/bet/session).
To start
- Geo-directory, RTP profiles, disabling prohibited features.
- SLO monitoring (API/CDN/Wallet/JS) + alerts.
- Nightly reconciliation + duplicate/skip alerts.
- RG/cookie banners, local requirements.
- Incident Plan/Status Page.
FAQ (brief)
Running in iFrame? Yes, through 'launch _ url' with consistent CSP/' X-Frame-Options'.
Is Bonus Buy available? By title/market; is configured.
Are there network jackpots? By configuration; payments - individual 'JACKPOT _ PAYOUT'.
How to connect freespins/tournaments? Through Promo/Provider API + analytics events.
How do I choose RTP? At the build/catalog level under the target jurisdiction and contract.
Total
Platipus is a practical provider of "lightweight" HTML5 slots with clear mathematics and stable integration. Following the described patterns (SSO/launch-URL, idempotent Wallet API, JS bridge, promotional campaigns, strict geo-configuration, monitoring and reconciliation), the operator receives a stable content economy, regulatory compliance and reliability under peak loads.