Skip to content

Fady120/ATM_Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 

Repository files navigation

🏦 ATM Simulation System

πŸ“Œ Overview

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.

✨ Features

  • πŸ” 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.

βš™οΈ Prerequisites

Ensure you have Python installed on your system. This script is compatible with Python 3.x.

πŸ”§ Installation

  1. Clone the repository:
    git clone https://github.com/your-username/ATM-Simulation.git
    cd ATM-Simulation
  2. Install dependencies:
    pip install stdiomask

▢️ Usage

  1. Run the script:
    python atm.py
  2. Enter your account ID when prompted.
  3. Authenticate using your password.
  4. Choose from the available options:
    • πŸ’Έ Withdraw Cash
    • πŸ“„ Check Balance
    • πŸ”‘ Change Password
    • πŸ“² Mobile Recharge (Fawry Service)
    • πŸšͺ Exit

πŸ“ Notes

  • πŸ“Œ 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.

About

Console-based ATM simulation in Python with user authentication and transaction features

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages