← back
RedeemX Backend Development - Complete System Integration

RedeemX Backend Development - Complete System Integration

Pending
💰 USD 30–250 👤 Unknown 🕒 12d ago status: new
Python Web Security Database Administration Clean Technology Database Programming Database Development Backend Development Web API API Development System Administration
# RedeemX Backend Development - Complete System Integration ## Project Overview RedeemX is a multi-casino auto-claiming software. Frontend is COMPLETE (React + TypeScript). Need backend API, database, and integration work. ## Current Status Frontend: React website with pricing, registration, legal pages Backend: No API, no database, no payment integration Legal consent popup before purchase redirect Desktop app integration (status unknown) ## Complete User Flow ### 1. Website Visit - User visits React website (already built) - Views pricing: $25/week, $75/month, $500/year, $1000/lifetime - Optional registration: casino usernames, preferences (needs API) ### 2. Purchase Flow (NEEDS IMPLEMENTATION) - User clicks pricing card - **Legal consent popup appears** (needs to be built): - Shows Terms, Privacy, Refund, Cookie policies - User must check "I agree" box - Store consent in database: user_id, timestamp, IP, user_agent, plan_selected - After consent: redirect to https://redeemx.shop - Track redirect in database ### 3. Payment & License (NEEDS IMPLEMENTATION) - Payment via BTCPay Server (Bitcoin/LTC) - Webhook generates license key - Email license to user - Store in database ### 4. Desktop App - User downloads app, enters license key - App validates license via API - Auto-populates casino usernames from registration - Runs 24/7 auto-claiming ## Required Database Schema ```sql -- Users CREATE TABLE users ( id UUID PRIMARY KEY, created_at TIMESTAMP ); -- Registrations CREATE TABLE user_registrations ( id UUID PRIMARY KEY, user_id UUID REFERENCES users(id), stake_username VARCHAR(255), shuffle_username VARCHAR(255), rainbet_username VARCHAR(255), roobet_username VARCHAR(255), preferred_platforms JSONB, notification_preference VARCHAR(50), data_opt_in BOOLEAN, registered_at TIMESTAMP ); -- Legal Consents CREATE TABLE legal_consents ( id UUID PRIMARY KEY, user_id UUID, session_id VARCHAR(255), ip_address VARCHAR(45), user_agent TEXT, consented_at TIMESTAMP ); -- Purchase Tracking CREATE TABLE purchase_redirects ( id UUID PRIMARY KEY, user_id UUID, plan_selected VARCHAR(100), price DECIMAL(10,2), legal_consent_confirmed BOOLEAN, redirected_at TIMESTAMP ); -- Licenses CREATE TABLE licenses ( id UUID PRIMARY KEY, user_id UUID, license_key VARCHAR(255) UNIQUE, plan_type VARCHAR(50), purchase_date TIMESTAMP, expiry_date TIMESTAMP, status VARCHAR(50), max_activations INT DEFAULT 1 ); -- Activations CREATE TABLE license_activations ( id UUID PRIMARY KEY, license_id UUID REFERENCES licenses(id), device_id VARCHAR(255), activated_at TIMESTAMP, status VARCHAR(50) ); ``` ## Required API Endpoints ``` POST /api/register - Save user registration POST /api/legal-consent - Store legal consent POST /api/purchase-redirect - Track purchase redirect POST /api/license/validate - Validate license key POST /api/license/activate - Activate on device GET /api/user/:id - Get user data PUT /api/user/:id - Update user data POST /api/webhook/payment - BTCPay webhook handler ``` ## Specific Tasks ### Task 1: Backend API (Critical) - Node.js/Express or Python/FastAPI - PostgreSQL database - All endpoints above - JWT authentication - CORS configuration for frontend ### Task 2: Legal Consent Popup (Critical) - React modal component - Displays all legal documents - Checkbox validation - API call to store consent - Blocks redirect until confirmed - Integrates with pricing page ### Task 3: Purchase Flow Integration (Critical) - Intercept pricing card clicks - Show legal popup - Store consent with IP/user agent - Redirect to redeemx.shop with plan parameter - Track in database ### Task 4: License System (Critical) - Generate cryptographically secure keys - Validation API endpoint - Activation tracking (device limits) - Expiry date handling - Email delivery system ### Task 5: Payment Webhook (Critical) - BTCPay Server webhook handler - Verify payment signature - Generate license key - Send email with license - Update database ### Task 6: Registration Integration (Important) - Connect form to API - Store user data - Handle data opt-in consent - Link to license purchases ## Technical Requirements **Frontend (Already Complete)**: - React 19.2.5 + TypeScript 6.0.2 - Vite 8.0.10 - Tailwind CSS 3.4.19 - Location: Provided via Git repo **Backend (You Build)**: - Your choice: Node.js/Express, Python/FastAPI, or similar - PostgreSQL database (required) - RESTful API - JWT or session authentication - Email service (SendGrid, AWS SES, etc.) - Hosted on: AWS, DigitalOcean, or your recommendation ## Security Requirements - Encrypt sensitive data at rest - HTTPS for all API calls - Rate limiting on endpoints - Sanitize all inputs - Secure license key generation - Verify BTCPay webhook signatures ## Deliverables 1. Backend API with all endpoints 2. PostgreSQL database setup 3. Legal consent popup React component 4. Purchase flow integration 5. License management system 6. Payment webhook handler 7. Email delivery system 8. API documentation 9. Deployment instructions ## Questions for You 1. Does desktop app already exist? If yes, what tech stack? 2. Do you have BTCPay Server configured? Need webhook URL 3. Preferred hosting platform? 4. Preferred email service? 5. Timeline and cost estimate? ## Success Criteria - User registers (optional) → data stored in DB - User selects plan → legal popup appears - User consents → consent stored in DB with IP/timestamp - User redirects to redeemx.shop - Payment webhook generates license - License emailed to user - License validates via API - Desktop app activates with license - All secure and production-ready ## Budget Estimated: $4,500 - $6,600 (assuming desktop app exists) If desktop app needs building: $8,500 - $12,600 ## Timeline Phase 1 (Critical): 2-3 weeks Phase 2 (Important): 1-2 weeks Total: 3-5 weeks ## To Apply Please provide: 1. Your experience with similar projects 2. Preferred tech stack for backend 3. Time estimate for each task 4. Total cost estimate 5. Any questions about requirements Frontend code and full documentation available upon selection.
↗ View on Freelancer