Rewards engine
XP, fee tiers, instant cashback, 5-level referrals and quests.
- Role
- Designed the rewards engine and quest system
- Stack
- GoRabbitMQPostgres
I designed Boba's rewards engine and its quest system: how much a user pays, and what they earn back. XP, market-cap-based fees, membership tiers, instant cashback, a five-level referral tree and quests, all driven by the same trade events that book the portfolio.
Decisions
Cashback is a discount, not a rebate
Cashback applies at quote time: users simply pay less, with nothing to claim and nothing to wait for. The engine takes the better of the XP-tier discount and any active boost, and a negotiated fee override always wins if it's lower.
Quests are computed, not tracked
Quest progress is derived from the trades table on demand, so a dropped event can never erase anyone's progress. XP is credited only at claim time, in a single transaction that can't double-count.
What I built
- XP: 1 XP for every $0.01 of fees paid, credited by a Go referral worker from
trade.executedevents. - Fees: a base fee tiered by the token's market cap, from 1.00% under $10M down to 0.05% above $10B.
- Membership: 8 XP tiers from Bronze to Unchained, giving a 2.5% to 30% fee discount.
- Referrals: a 5-level tree paying 30%, 3%, 2%, 1% and 0.5% of fees, with balances updated in one batch query per trade and a separate service for onchain payout claims.
- Quests that can grant cashback boosts as well as XP.