Skip to content

yashchavan02/ATM-Machine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 

Repository files navigation

⬇️ Run Above Code On Your Local Machine :

➜ Copy Below Text As It Is And Run On Your CMD Pannel

✦ Follow Below Steps -

Step 1. Open CDM Pannel [Terminal]

Step 2. Choose The Folder To Copy This Project Code File Or Create New Using Step 3

Step 3. Then Run This Command [ Give Any Name At The Place Of 'New-Folder' ]

mkdir New-Folder

Step 4. Then Run This Command [ Replace 'New-Folder' By Previous Name At Step 3 ]

cd New-Folder

Step 5. Then Run git init For Initialize Repo With .git Folder

git init

Step 6. Then Run Final Step

git clone https://github.com/yashchavan02/MiniProject-B.git

🔵 Mini Project B Details

Project Title ATM Machine
Bank Name YC Bank
Project Type Console Based
Data Manage MySql

🟤 Used Python Concept

  • RE Module
  • Time Module
  • Random Module
  • Datetime Module
  • Loops
  • String Formatting
  • Classes and Objects
  • Exception Handling
  • Constructor
  • Class Methods
  • Conditional Statements

🟡 ATM Machine Document


🟢 Overview

This documentation provides an in-depth explanation of an ATM system implemented in Python, with a backend integration using MySQL. The system allows users to perform various banking operations such as creating accounts, depositing money, withdrawing money, changing PINs, and checking balances.

🟣 Implementation Overview

The ATM system is designed with the following features and functionality:

🔵 Account Creation

  • Users can create a bank account by providing their name, email, gender, account type, initial deposit amount, and PIN.
  • Account details are stored in a MySQL database bank , specifically in the customerdata table.

🟠 Transactions

  • Deposit: Users can deposit money into their account.
  • Withdrawal: Users can withdraw money from their account, provided they have sufficient funds.
  • Balance Inquiry: Users can check their current account balance.

🟤 Security

  • The system includes PIN validation when accessing the account or making changes.
  • Account locking mechanism after three unsuccessful PIN attempts to prevent unauthorized access.

🟡 Uses and Functionality

⭕ Account Creation

  • Users enter their personal details such as name, email, gender, account type, and initial deposit amount.
  • A unique 4-digit PIN is set during account creation.
  • Upon successful creation, account details are stored in the MySQL database.

⭕ Transactions

  • Deposit: Users can add funds to their account, with the transaction recorded including the date and time.
  • Withdrawal: Users can withdraw funds, with the system checking for available balance before processing.
  • Balance Inquiry: Users can check their current balance, displayed in the system.

⭕ PIN Management

  • Change PIN: Users can change their PIN by entering the old PIN and setting a new 4-digit PIN.
  • Account Locking: After three consecutive incorrect PIN attempts, the account is locked for security reasons. The user must contact support to regain access.

🔴 Conclusion

This ATM system provides a basic yet functional implementation of banking operations integrated with a MySQL database for data persistence. It offers essential features for managing accounts securely and performing common banking transactions. Future enhancements could include additional security measures, transaction history tracking, and multi-account support.



🟣 Screenshot 06/06/2024

  • 01

PythonProjectA

  • 02

PythonProjectB



🟣 Screenshot 16/06/2024

  • 01

NewPythonProjectA

  • 02

NewPythonProjectB

  • 03

NewPythonProjectC

  • 04

NewPythonProjectD



🟣 Screenshot 17/06/2024

  • 01

MiniProjectSS3

About

Console Based Mini Projects Using Python

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages