A complete eSIM reselling platform with Next.js frontend and Laravel backend.
- π Browse eSIM packages by country/region
- π³ Multi-currency support
- π Secure payment processing (Stripe, Razorpay)
- π€ User registration and KYC verification
- π± eSIM activation and QR code download
- π Order history and tracking
- π« Support ticket system
- π Comprehensive dashboard with analytics
- π₯ User management with KYC approval
- π¦ Order management and tracking
- π Package and pricing management (region/country-based)
- βοΈ Payment gateway configuration
- π§ Email template management
- π¨ Banner and promotion management
- ποΈ Support ticket management
- π Sales reports and analytics
- Next.js 14 - React framework with App Router
- TypeScript - Type safety
- Tailwind CSS - Utility-first styling
- Shadcn/ui - Beautiful UI components
- React Query - Data fetching and caching
- Zustand - Lightweight state management
- React Hook Form - Form handling
- Zod - Schema validation
- Laravel 11 - PHP framework
- MySQL - Relational database
- JWT Authentication - API security
- Laravel Sanctum - API tokens
- Laravel Queue - Background jobs
- Laravel Mail - Email notifications
- Spatie Permissions - Role-based access
- Airalo Partner API - eSIM provider
- Stripe - International payments
- Razorpay - India payments
esim-platform/
βββ frontend/ # Next.js application
β βββ app/ # App router pages
β βββ components/ # React components
β βββ lib/ # Utilities and configurations
β βββ hooks/ # Custom React hooks
β βββ types/ # TypeScript types
βββ backend/ # Laravel API
β βββ app/ # Application logic
β βββ database/ # Migrations and seeders
β βββ routes/ # API routes
β βββ config/ # Configuration files
βββ docs/ # Documentation
- Node.js 18+ and npm
- PHP 8.2+
- Composer
- MySQL 8.0+
- Airalo Partner Account (Sign up here)
cd frontend
npm install
cp .env.example .env.local
# Edit .env.local with your configuration
npm run devFrontend will run on http://localhost:3000
cd backend
composer install
cp .env.example .env
php artisan key:generate
# Configure database in .env
php artisan migrate --seed
php artisan serveBackend will run on http://localhost:8000
NEXT_PUBLIC_API_URL=http://localhost:8000/api
NEXT_PUBLIC_STRIPE_PUBLIC_KEY=pk_test_xxxxx
NEXT_PUBLIC_RAZORPAY_KEY=rzp_test_xxxxx# Airalo API
AIRALO_API_URL=https://sandbox-partners-api.airalo.com/v2
AIRALO_CLIENT_ID=your_client_id
AIRALO_CLIENT_SECRET=your_client_secret
# Payment Gateways
STRIPE_SECRET=sk_test_xxxxx
STRIPE_WEBHOOK_SECRET=whsec_xxxxx
RAZORPAY_KEY=rzp_test_xxxxx
RAZORPAY_SECRET=your_razorpay_secret
# Database
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=esim_platform
DB_USERNAME=root
DB_PASSWORD=- Register/Login β Browse Packages β Select Package β Checkout
- Complete Payment β Receive eSIM β Download QR Code
- Install eSIM β Activate β Use Data
- Manage Users & KYC Approvals
- Configure Packages & Pricing (add commission over Airalo base price)
- Monitor Orders & Handle Refunds
- Respond to Support Tickets
- View Analytics & Reports
- JWT authentication with refresh tokens
- CSRF protection
- XSS prevention
- SQL injection protection
- Rate limiting on API endpoints
- Secure password hashing (bcrypt)
- KYC verification for high-value transactions
- Mobile app (React Native)
- Multi-language support
- WhatsApp notifications
- Affiliate program
- Advanced analytics
- API for third-party integrations
For issues and questions, check the documentation or create a support ticket.
Private Project - All Rights Reserved
Built with β€οΈ for eSIM entrepreneurs