Advanced ATM System

A Python CLI banking simulation that models real ATM operations such as PIN authentication, withdrawals, deposits, and transaction history. The system stores user data securely using JSON files and validates inputs to prevent incorrect operations.

What it can do

How it works

The ATM system follows a modular structure.

  1. Authentication Module Validates user PIN before allowing access.
  2. Transaction Module Handles deposit and withdrawal operations.
  3. Data Storage Module Stores account details and balances in txt files.
  4. Validation Layer Prevents invalid inputs and ensures stable execution.

Example Terminal Output


Welcome to Secure ATM System

1. Check Balance
2. Deposit
3. Withdraw
4. Exit

Select option: 2
Enter amount: 500

Deposit successful
New Balance: 1500

Technologies Used