EasyTopUp is a cross-platform mobile application built with React Native that allows users to easily purchase airtime, mobile data, and make utility subscriptions (like cable TV and electricity) directly from their phones.
- 🔋 Buy airtime for all major networks (MTN, Glo, Airtel, 9mobile)
- 📶 Purchase data bundles
- 📺 Pay for cable TV subscriptions (DSTV, GOTV, Startimes, etc.)
- ⚡ Pay for electricity bills (IKEDC, IBEDC, PHED, etc.)
- 💳 Secure in-app payments (integrated with Paystack or Flutterwave)
- 📄 Transaction history and receipts
- 🔒 Secure authentication with Firebase (Email/Password or OTP)
- 🎨 Clean and responsive UI for Android and iOS
- React Native (Expo/CLI)
- Firebase (Auth & Firestore)
- Node.js/Express (Backend APIs – optional or replace with third-party APIs)
- Paystack/Flutterwave (Payment Gateway)
- Redux Toolkit / Context API (for state management)
- Axios (for HTTP requests)
/EasyTopUp
│
├── /src
│ ├── /components # Reusable UI components
│ ├── /screens # App screens (Home, Airtime, Data, etc.)
│ ├── /services # API handlers and payment logic
│ ├── /context # App context/state
│ ├── /utils # Helpers & validators
│ └── App.js # Main App entry point
│
├── /assets # Images, fonts, etc.
├── app.json # Expo/Project config
└── package.json
- User signs up/signs in with email
- Firebase handles auth and stores user data
- Access to purchase functionality after login
- Add referral & reward system
- Wallet top-up and balance tracking
- Push notifications for failed/successful payments
- Light/Dark mode toggle
Built by Abdulhaq Email: abdulhaqabdulrasheed@gmail.com
This project is open source and available under the MIT License.