Banka is a light-weight core banking application that powers banking operations like account creation, customer deposit and withdrawals.
The tools listed below are needed to run this application:
- Node v10.15.0 or above
- Npm v6.4 or above
git clone https://github.com/ocranbillions/Banka_v2.0.git
- Run
npm installto install all dependencies - Run npm start to start the app
- Access endpoints on localhost:3001
- Customer sign up and create as many bank accounts as they want
- Customer can view their account history
- Cashier can place debit/credit transactions on customer's account
- Cashier can view all customers' account(s)
- Admin creates staff account for each new cashier
- Admin can delete any account. Can also place account status on dormant or active.
- Accounts created by admin can be of type admin or just regular staff
- If type is admin, the newly created account has all admin prividelges; account creation, deletion, and changing of account status
| Method | Description | Endpoints | Role |
|---|---|---|---|
| POST | Create user | /api/v1/auth/signup | * |
| POST | signin user | /api/v1/auth/signin | * |
| POST | create new bank account | /api/v1/accounts/ | client |
| GET | fetch all accounts | /api/v1/accounts/ | cashier + admin |
| GET | fetch all active accounts | /api/v1/accounts/?status=active/ | cashier + admin |
| GET | fetch all dormant accounts | /api/v1/accounts/?status=dormant/ | cashier + admin |
| GET | get details of an account | /api/v1/accounts/:number | * |
| DELETE | Delete a bank account | /api/v1/accounts/:number | admin |
| PATCH | change bank account status | /api/v1/accounts/:number | admin |
| POST | Credit an account | /api/v1/transactions/:number/credit | cashier |
| POST | Debit an account | /api/v1/transactions/:number/debit | cashier |
| GET | Get account history | /api/v1/transactions/:number | cashier + client |
| GET | Get all users | /api/v1/users | admin + cashier |
| GET | Get single user | /api/v1/users/id | admin + cashier |
| POST | create new staff account | /api/v1/users/ | admin |
| DELETE | Delete staff | /api/v1/users/id | admin |
https://bankalite.herokuapp.com/api-docs/
Run npm test in the root folder.