MongoDB
Designing a Sports Betting Platform
Build a real-time sports betting system — covering odds calculation, bet placement, live event updates, risk management, and payout processing.
S
srikanthtelkalapally888@gmail.com
Sports betting platforms must handle thousands of simultaneous bets on live events while managing financial risk in real-time.
Core Features
- Real-time odds updates (changes every few seconds)
- Bet placement with instant confirmation
- In-play (live) betting
- Risk management (limit exposure per outcome)
- Payout calculation and processing
Odds and Market Management
Market: Premier League — Arsenal vs Chelsea
Outcomes:
Arsenal Win: Odds 2.10 (implied prob 47.6%)
Draw: Odds 3.40 (implied prob 29.4%)
Chelsea Win: Odds 3.60 (implied prob 27.7%)
Margin: sum of implied probs > 100% = bookmaker profit
Architecture
Sports Data Feed (Opta, Stats Perform)
↓
Odds Engine (recalculates on events)
↓
Kafka (odds_updated topic)
↓
WebSocket → All connected clients
Bet Placement:
Client → Bet Service → Risk Engine
↓
Accept / Reject / Limit
↓
Wallet Service
↓
Ledger DB
Risk Management
Exposure limits per outcome:
Arsenal Win liability cap: $500,000
Current liability = SUM(bet_amount × (odds - 1))
for all Arsenal Win bets
IF liability > cap:
Shorten Arsenal odds (make less attractive)
OR Refuse new Arsenal Win bets
In-Play Betting
Event: Arsenal scores at 67'
↓
Odds engine recalculates instantly
↓
All markets briefly suspended (3-5 seconds)
↓
New odds published
↓
Betting resumes
Latency requirement: <500ms from event to new odds
Bet Placement — Concurrency
-- Atomic bet placement
BEGIN;
-- Deduct from wallet (prevent negative balance)
UPDATE wallets
SET balance = balance - :stake
WHERE user_id = :user_id AND balance >= :stake;
IF rows_affected = 0: ROLLBACK (insufficient funds)
-- Record bet
INSERT INTO bets (user_id, market_id, outcome, stake, odds);
COMMIT;
Payout Processing
Event result confirmed
↓
Query all winning bets for outcome
↓
payout = stake × odds
↓
Credit wallet (batch, async)
↓
Notify user
Conclusion
Sports betting requires sub-second odds recalculation, atomic bet placement, real-time exposure tracking, and instant payout processing — all while managing regulatory compliance.