Skip to content

A fully-fledged online banking platform designed with a sleek and user-friendly interface for both customer and staff. This project combines a sophisticated front-end built with HTML, CSS, Bootstrap, and JavaScript, and a robust Python Django backend.

License

Notifications You must be signed in to change notification settings

PeterOlayemi/Banking-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Modern Banking Website

Welcome to the Modern Banking Website, a fully-fledged online banking platform designed with a sleek and user-friendly interface for both customer and staff. This project combines a sophisticated front-end built with HTML, CSS, Bootstrap, and JavaScript, and a robust Python Django backend.

Features

General Key Features

  • Responsive Design: Built using Bootstrap for a seamless experience across various devices and screen sizes.
  • Interactive UI: Dynamic and engaging user interface with smooth transitions and intuitive controls using JavaScript.
  • Secure Backend: Django backend ensures a secure and scalable architecture for handling financial transactions and user data.
  • Account Management: Users can easily create accounts, manage profiles, and perform various banking operations.
  • Transaction History: Keep track of your financial activities with a detailed transaction history.
  • Email Notification: Transaction alerts are provided generally on the website and if email notification is on, users are immediately notified of their transactions.
  • Toggle Theme: Smooth transition between light and dark mode on the website.

Customer Portal

  • Account Management:

    • Easy creation of accounts.
    • Fund accounts securely using Paystack.
    • View and manage beneficiaries.
    • Daily transaction limit.
    • Get Bank Statement through direct download or email in document form.
    • Loan management with interest calculator.
  • Financial Transactions:

    • Transfer funds between accounts.
    • Pay bills seamlessly (GOTV, DSTV, Startimes, electricity bills).
    • Purchase airtime and data.
  • Communication:

    • Real-time chat between customers and staff for customer support.
    • View bank news.
    • View bank exchange rates.

Staff Portal

  • Customer Interaction:

    • Communicate with customers through a secure chat interface.
    • Perform all transactions on behalf of customers.
  • Financial Management:

    • Process fund transfers, bill payments, airtime, and data purchases.
    • Account funding and management.
    • View customer account demographics.
  • Bank Operations:

    • Generate and retrieve customer bank statements.
    • Manage daily transaction limits.
    • Loan processing with interest calculator.
  • Notifications and Alerts:

    • Set up and customize email notification preferences.
    • Transaction alerts via both the website and email.

Additional Features

  • Security:

    • User authentication and authorization.
    • Secure payment transactions through Paystack.
  • Documentation:

    • Comprehensive documentation in the docs directory for setup and customization.

Technologies Used

  • Frontend: HTML, CSS, Bootstrap, JavaScript
  • Backend: Python Django
  • Database: SQLite (can be easily configured for other databases)
  • APIs: Paystack - For payment processing; MobileNig - For top-up and bill payments
  • Deployment:

Getting Started

1. Clone the repository:

git clone https://github.com/PeterOlayemi/Banking-System.git

2. Install dependencies:

pip install -r requirements.txt

3. Create environment variables (.env) file containing these variables (all vars are set to an empty string for testing purpose only):

SECRET_KEY = 'your_django_secret_key'
my_email = 'your_email_address'
appsPassword = 'your_appspassword_for_email'
MOBILENIG_SECRET_KEY = 'your_mobilenig_secret_key'
MOBILENIG_PUBLIC_KEY = 'your_mobilenig_public_key'
PAYSTACK_SECRET_KEY = 'your_paystack_secret_key'
PAYSTACK_PUBLIC_KEY = 'your_paystack_public_key'

4: Migrate server:

python manage.py makemigrations
python manage.py migrate

5: Run the development server:

python manage.py runserver

6: Access the application at http://localhost:8000/portal/customer/login/ for customer interface or http://localhost:8000/portal/staff/login/ for staff interface in your browser.

Screenshots

  • Customer Dashboard: Customer_Dashboard

  • Staff Dashboard: Staff_Dashboard

  • Customer Login Page in Dark Mode: Customer_Login

  • Staff: Customer Account Management in Dark Mode Staff_Manage_CustomerAcc

  • Interest Calculator: Interest_Calculator

Contributing

Feel free to contribute by submitting issues or pull requests.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Where to find Me

Visit My Website

About

A fully-fledged online banking platform designed with a sleek and user-friendly interface for both customer and staff. This project combines a sophisticated front-end built with HTML, CSS, Bootstrap, and JavaScript, and a robust Python Django backend.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published