An open API service indexing awesome lists of open source software.

https://github.com/mehedi-86/atm-management-system

ATM Management System 🏧 A C++ console-based application for managing ATM transactions, including deposits, withdrawals, balance inquiries, and fund transfers. 🚀
https://github.com/mehedi-86/atm-management-system

atm-management-system banking-application banking-applications

Last synced: 9 months ago
JSON representation

ATM Management System 🏧 A C++ console-based application for managing ATM transactions, including deposits, withdrawals, balance inquiries, and fund transfers. 🚀

Awesome Lists containing this project

README

          

🏦 Banking System - C++ Project

📖 Introduction


This is a C++ banking system that allows customers to create bank accounts, perform deposits, withdrawals, and transfers between accounts. The system also integrates ATM functionalities and maintains customer account records.

✨ Features



  • Customer Account Management → Create and manage bank accounts with customer details.

  • Deposit Money → Add money to a specific bank account by specifying the amount.

  • Withdraw Money → Deduct money from a bank account while ensuring sufficient balance is available.

  • Money Transfer → Transfer money between two different accounts after validating the balance.

  • ATM Functionality → Customers can check their account balance using ATM system functionality.

  • Friend Functions & Classes → Implements friend functions and class relationships for controlled access to private members of classes.

🛠 Technologies Used



  • C++ (Object-Oriented Programming concepts)

  • Friend Functions & Classes

  • Static Methods

  • User Input Handling

🚀 How to Compile and Run

🔹 Steps (Using g++)



  1. Open Terminal / Command Prompt.

  2. Navigate to the folder containing the file using the cd path/to/your-project command.

  3. Compile the program using the following command:
    g++ -o banking_system banking_system.cpp


  4. Run the program using:
    ./banking_system


📌 Usage Example

🔹 Sample User Interaction



Enter customer name: John Doe
Enter customer address: 123 Main St

Enter account number for account 1: 1001
Enter initial balance for account 1: 5000

Enter account number for account 2: 2002
Enter initial balance for account 2: 3000

Accounts for Customer John Doe:
Account Number: 1001, Balance: $5000
Account Number: 2002, Balance: $3000

Enter transaction type (deposit, withdraw, transfer): transfer
Enter transaction amount: 1000
Enter 1 for account no. 1 to 2 for account no. 2
Enter 2 for account no. 2 and 1 for account no. 1
1

Transfer of $1000 from account number 1001 to account number 2002

Updated Account Information:
Account Number: 1001, Balance: $4000
Account Number: 2002, Balance: $4000

📂 File Structure


/BankingSystem
│── banking_system.cpp # Main source code
│── README.md # Documentation file

🔧 Future Enhancements



  • 🚀 Add file handling to store transaction history for better tracking.

  • 🚀 Implement interest calculation based on account type (savings, checking, etc.).

  • 🚀 Add an authentication system for customer logins to enhance security.

📜 License


This project is open-source. Feel free to use, modify, and contribute!

💡 Conclusion


This banking system demonstrates Object-Oriented Programming (OOP) principles, friend functions, and user-friendly transactions. It serves as a simple yet effective banking simulation for learning and practicing C++ programming.