Skip to content

This projects will help students to understand how OOPs concept can be used to simulate banking functionalities.

Notifications You must be signed in to change notification settings

AsutoshPati/Bank-Simulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

Bank Simulator


This project simulates workflow of a bank. Where some functionalities like creating account, deposit money, withdrwal money, transfer money and displaying transactions.

How to use

As the code is made with python and written in jupyter notebook so it is possible to directly run the code and check the output over there.

As this program is written with concepts of OOPs. So first of all you have to create an object of bank class.
b = Bank()

Then you can start using the functionalities with the created object.

Creating Account

You can create 2 type of accounts.

  1. Operator - only operator can do the deposit process and all other functionalities
  2. Account Holder - all functionalities except deposit can be done

For creating account you have to call the method from the created object
b.register_user() which will create an account holder's account
for creating operator account just pass 'O' b.register_user('O')

Here you can select 3 different type of accounts like 1. Current (C) - By selecting current account 500 rupees will be credited in account. 2. Savings (S) - By selecting savings account 2000 rupees will be credited in account. 3. Loan (L) - By selecting loan account you will be asked to enter the value of amount. And that much will be credited. 4. Quit registration (Q) - To quit from the registration process you can use Q.
It will ask for some other details you can provide them or you can use Q as input to quit the ongoing registration process.

After completing the process account number will be generated. Remember the account number and the given password for further transactions.

Log in

You can login with your phone number and password which was provided during the time of registration and the functionalities will be available only if any user has been logged in at the time.
login method can be used for logging into account which can be called using the same bank object created before. b.login()

Log out

After completing the job for which you have logged in; you can log out of the account using logout method which can be called using the same bank object created before b.logout().

Changing the Password

For changing the password you can call for the change_password method b.change_password() here you will be asked for the current password and the new password.

Deposit

*Note: Only operators can deposit into an account For making a deposit you can call the deposit function b.deposit(); where the operator will be asked to enter the account number of payer's and the amount to be deposited.

Withdrawl

For doing an withdrawl process you will be asked to enter amount you want to withdraw; to use this function you have to call withdrawl method b.withdrawl().

Money Transfer

For completing money transfer process you have to call the moneyTransfer method b.moneyTransfer(). Where you will be asked to enter the payee's account number and the amount you want to transfer.

Display Transaction Report

To see your transaction details you can call the method my_transactions b.my_transactions(); where you will be asked for some filter options like

  1. All - show all transactions till now
  2. By year - show transactions made in a specific year
  3. By year and month - show transactions made in a specific year and specific month
  4. Cancel - cancel the process

Display Info

If you ever wanted to see account info that can displayed using the method my_details b.my_details().

About

This projects will help students to understand how OOPs concept can be used to simulate banking functionalities.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published