Logo Lanfrica

almondcodes/pesaplan

Domain:

digital infrastructuresocioeconomic

Record type:

software
Creator:
alm
Host:
Automated recurring payments for Kenya with M-Pesa (Django REST + React Native) # PesaPlan Automated recurring payments for Kenya with M-Pesa. Django REST backend for standing orders, wallets, and payment processing; React Native mobile app planned. ## Features ### Core - **User Management**: Phone-based authentication with JWT tokens - **Wallet System**: Digital wallet with balance tracking and transaction history - **Standing Orders**: Automated recurring payments (daily, weekly, monthly, etc.) - **M-Pesa Integration**: STK Push, C2B, and B2C payment processing - **Transaction Management**: Comprehensive transaction tracking and audit logs - **Notification System**: SMS, email, and push notifications - **Security**: PIN-based authentication, rate limiting, and audit trails ### Advanced - **Background Jobs**: Celery-based task processing for payment automation - **Retry Logic**: Automatic retry for failed payments - **Compliance**: Audit logs and transaction traceability - **Scalability**: Redis caching and PostgreSQL database - **Monitoring**: Health checks and comprehensive logging ## Stack ### Backend - **Django 4.2** - Web framework - **Django REST Framework** - API development - **PostgreSQL** - Primary database - **Redis** - Caching and Celery broker - **Celery** - Background task processing - **M-Pesa Daraja API** - Payment processing ### Frontend (planned) - **React Native** - Mobile application - **React.js** - Admin dashboard ## Project structure ``` pesaplan/ ├── backend/ │ ├── pesaplan/ │ │ ├── apps/ │ │ │ ├── users/ # User management │ │ │ ├── wallets/ # Wallet operations │ │ │ ├── standing_orders/ # Recurring payments │ │ │ ├── transactions/ # Transaction tracking │ │ │ ├── payments/ # M-Pesa integration │ │ │ └── notifications/ # Communication system │ │ ├── settings/ # Environment-specific settings │ │ ├── utils/ # Utility functions │ │ └── requirements/ # Python dependencies │ ├── docker-compose.yml …