Back to Projects
AOG

AOG

A rewards platform spanning web dashboards, React Native/Expo mobile journeys, and wallet accounting.

RoleFull Stack Developer
Status
In progress
Timeline
6+ months
Team
2 developers
Platforms
Web, Mobile, Backend

Key Challenges

  • Integrating multiple payment gateways (Finix, CommerceHub, Fiserv DDP, Link.money) with webhook-driven transaction lifecycle management, idempotent processing, and cron-based polling for pending settlements.
  • Building a secure game provider integration layer with token-based authentication, MD5 secure-key generation, real-time balance synchronization, and seamless bet/win transaction settlement across the TADA game API.
  • Implementing a dual-currency sweepstakes model (Gold Coins & Sweepstakes Coins) with separate balance ledgers, escrow-based redemption workflows, and prize redemption rules.
  • Designing a multi-role access control system (Player, Agent, Admin, Super Admin) with role-based routing, JWT session management, session versioning for forced single-device login, and real-time Socket.IO force-logout events.
  • Architecting a referral fraud prevention system with signup-attempt tracking, automated fraud detection heuristics, and admin review workflows to prevent coordinated abuse of referral bonus programs.
  • Coordinating mobile navigation, secure session storage, WebView lifecycle, and recovery from interrupted network requests.

Key Learnings

  • Mastered webhook-driven payment architectures with Finix and Fiserv, learning to handle asynchronous settlement flows, retry logic, and reconciliation between multiple payment providers.
  • Gained deep experience with sweepstakes compliance models — understanding the legal distinction between Gold Coins (entertainment value) and Sweepstakes Coins (prize-redeemable) and implementing the dual-currency ledger accordingly.
  • Learned to build robust real-time systems using Socket.IO with JWT-authenticated rooms, enabling instant balance updates, force-logout across devices, and live transaction status notifications.
  • Developed expertise in identity verification workflows by integrating SEON for KYC document verification, Google reCAPTCHA for bot prevention, and multi-step verification bonuses tied to email/phone/document validation.
  • Advanced understanding of database evolution at scale — managing incremental SQL migrations to iteratively add agent accounting, game catalog management, referral fraud detection, and transaction logging.
  • Handling native app lifecycle and device-specific behavior alongside shared web and backend workflows.

Overview

AOG is a sweepstakes-style gaming and rewards platform built for Bilions. Its dual-currency model distinguishes Gold Coins for entertainment gameplay from Sweepstakes Coins used in redemption workflows. The platform connects a TADA game catalog, package purchases, wallet accounting, KYC review, redemption processing, and multi-role administration. I worked across the web applications, Express/MySQL backend, and React Native/Expo mobile application.

Separate balances and ledgers represent gameplay and redemption state. Promotional rules, identity review, and restricted-location controls are implemented as product workflows; this case study does not assert legal certification.

Key Features

Dual-Currency Game Lobby

Players browse a dynamic game catalog (slots, fishing, bingo, table games) fetched from the TADA game provider API. Games launch in-browser via a tokenized session with real-time GC/SC balance synchronization, bet/win settlement, and session tracking. Players can toggle between Gold Coin and Sweepstakes Coin wallets.

Multi-Gateway Payment Processing & Redemptions

Full purchase-to-payout lifecycle supporting Finix (card tokenization), CommerceHub, and Fiserv DDP for GC package purchases. SC redemptions go through admin review → ACH payout via Finix payouts or Link.money, with webhook-driven status updates, automatic refunds on failure, and cron-based settlement polling.

Multi-Role Admin Dashboard & Agent System

Role-based dashboards for Players, Agents, Admins, and Super Admins. Admins manage users, review KYC documents, oversee transactions, handle support tickets, and configure GC packages. Agents have dedicated accounting panels, balance logs, referral link management, and player-specific transaction views.

Player Engagement & Rewards Engine

Comprehensive engagement system including daily login bonuses with streak tracking, tiered verification bonuses (email → phone → KYC), referral programs with fraud prevention, first-purchase mega offers, VIP club tiers, and an interactive onboarding walkthrough for new players.

Identity Verification & Security Infrastructure

Multi-layer security: SEON-powered KYC document verification, geo-fencing for restricted jurisdictions, Google reCAPTCHA bot prevention, session versioning with Socket.IO force-logout for single-device enforcement, rate limiting, dev-tools detection, and inactivity-based auto-logout.

React Native / Expo Mobile Application

Mobile screens use React Navigation, SecureStore for credentials, and WebView-based game sessions. Game screens coordinate landscape orientation and app lifecycle behavior; query recovery handles interrupted connections.

Technical Implementation

The platform includes a Node.js/Express REST API with MySQL, React/Vite web applications, and a React Native/Expo mobile application. The backend uses a layered MVC architecture (routes → controllers → services → DB utilities) with service modules for authentication, payments, game integration, and administration. The frontend employs RTK Query for API state management, Socket.IO hooks for real-time events, and Radix UI + Tailwind CSS v4 for the component library.

  • Authentication: JWT-based auth with Passport.js strategies for Google, Discord, and Twitch OAuth. Session versioning ensures single-device login enforcement with Socket.IO-triggered force-logout events.
  • Payment Architecture: Webhook-driven flow with idempotent processing. Purchases: user selects package → Finix/CommerceHub tokenizes card → backend creates transfer → webhook confirms → credits GC + bonus SC. Redemptions: user requests SC cashout → SC escrow → admin review → Finix payout/Link.money ACH → webhook settles.
  • Game Integration: TADA API integration with MD5 secure-key generation, token-based session management, and a /bet endpoint that validates balances, executes bet/win settlement, and updates the user's wallet atomically via the AOG Club API.
  • Real-Time System: Socket.IO server with JWT middleware, role-based room assignments (user_{id}, member_{id}, admins), enabling live balance updates on purchases/bets, force-logout on concurrent sessions, and real-time transaction status notifications.
  • Database: MySQL with incremental SQL migrations covering the full schema evolution — from the initial sweepstake casino schema to agent accounting, game catalogs, referral fraud prevention, dispute management, and transaction logging.
  • Frontend Architecture: React 19 + Vite 6 SPA with React Router v7, Redux Toolkit with RTK Query (23 API service files), custom hooks (socket connections, SEO, inactivity logout, dev-tools detection), and a PWA manifest with service worker support.
  • DevOps & SEO: Netlify deployment with SPA redirects, structured data (Organization + WebSite schema), Open Graph/Twitter cards, Google Analytics + Microsoft Clarity integration, and Google reCAPTCHA v2 for form protection.

Mobile Engineering

The mobile client shares backend APIs with the web applications but handles device-specific concerns explicitly. SecureStore persists credentials, React Navigation organizes journeys, and WebView game screens coordinate lifecycle and orientation rather than relying on desktop layout behavior.

  • Session handling: Keep mobile credentials in SecureStore and coordinate authenticated API requests with navigation state.
  • Game experience: Manage WebView lifecycle and landscape behavior around provider-hosted game journeys.
  • Recovery: Handle failed subscribed queries and retry or recover data when connectivity returns.
  • Notifications: Backend FCM integration delivers mobile notifications alongside web Socket.IO events.

Have a project or opportunity in mind?

Let's discuss employment opportunities or freelance work.

Contact Kunj