A simple ATM simulation in Python that allows users to withdraw, deposit, transfer funds, and check their balance. The system validates card details and interacts with an SQLite database.
- User authentication via card details
- Withdraw and deposit money
- Transfer funds between accounts
- Check account balance
- Change PIN
- Database-backed user and account management
-
Clone this repository:
git clone https://github.com/psupra22/ATM-System cd ATM-System
-
Generate the database(optional):
python gen_database.py
You must make sure the .db file does not already exist before running this.
-
Run the ATM system:
python main.py
-
Follow the on-screen instructions to interact with the ATM.
To run unit tests, execute:
pytest test_atm.py
This project is licensed under the MIT License.
For any inquiries, feel free to reach out at [email protected].