This project is a simple command-line ATM (Automated Teller Machine) simulation system written in Python. It allows users to perform various banking operations such as withdrawing cash, checking their balance, changing their password, and recharging phone credit through Fawry services.
- π User Authentication: Users can log in using their account ID and password.
- π Secure Password Handling: Uses
stdiomask
to mask password input. - π΅ Cash Withdrawal: Allows withdrawal of specific amounts with constraints.
- π Balance Inquiry: Displays the user's current balance.
- π Password Change: Users can securely update their passwords.
- π± Fawry Service: Enables mobile recharge for Orange, Etisalat, Vodafone, and We.
- π¨ Security Measures: Blocks users after three incorrect password attempts.
Ensure you have Python installed on your system. This script is compatible with Python 3.x.
- Clone the repository:
git clone https://github.com/your-username/ATM-Simulation.git cd ATM-Simulation
- Install dependencies:
pip install stdiomask
- Run the script:
python atm.py
- Enter your account ID when prompted.
- Authenticate using your password.
- Choose from the available options:
- πΈ Withdraw Cash
- π Check Balance
- π Change Password
- π² Mobile Recharge (Fawry Service)
- πͺ Exit
- π Account information is stored in a dictionary within the script.
- π’ The system ensures that passwords are four-digit numbers.
- π Phone numbers must be 11 digits, starting with zero.
- π« Users who enter the wrong password three times will be blocked.