This Online Payment Service project is developed using Django, SQLite, and various Django built-in features for security and data handling. It enables users to view transactions, make payments, request payments, and provides administrative functionalities for managing users and transactions.
- Authentication: User registration, login, logout, and access control.
- Transaction Management: Viewing all transactions, making direct payments to other registered users.
- Payment Requests: Requesting payments from registered users, accepting, and canceling money requests.
- Admin Management: For admins, viewing all user accounts and balances, viewing all payment transactions, registering more administrators.
- Security: Implemented security measures including XSS, CSRF, SQL injection, and clickjacking protection.
- Web Services: Currency conversion service using external APIs and fallback hardcoded exchange rates.
- Thrift Integration: Timestamping transactions and money requests with Apache Thrift.
- Deployment: It was deployed on AWS.
Run this command in project directory to install dependencies:
pip3 install -r requirements.txt
To run with http:
python manage.py runserver
To run with https:
python manage.py runserver_plus --cert-file domain_name.crt --key-file domain_name.key