A real-time system for managing payments of multiple businesses that need to be collected or given. The application has two types of accounts:
- Business Owner/Admin
Can create multiple
Businesses
and registerCollector
accounts. - Collector
Responsible for completing the transaction and marking it as
Done
.
- Frontend - Angular / HTML / SCSS / Material
- Backend - Node JS, Express JS
- Database - MongoDB
- Web Sockets (Real-Time)
- The business owner/admin can create businesses and collector accounts.
- The business owner can create or delete
Payments
. These can either be payments to be collected or given. - The business owner can assign collectors to particular businesses, who are responsible for collecting/giving the payments.
- The collectors can view the payment information, like person name, contact, address details etc. And can mark the payment as
Completed
. - The business owners can mark the payment as
Approved
, indicating whether the transaction was completed by the collector. - The business owner can view the
Approved Payments
for a particular businesses that the collectors have made. - The collector can collect the amount in installments as well.
- Clone the repository.
git clone
- Install NPM packages for both Node & Angular projects.
npm install
-
Make sure the Mongod service is running.
-
Start up the Node server, on the parent directory run:
nodemon
or
node app.js
- Start up the Angular project, in the
angular-src
directory, run:
ng serve
- The app will be start on
http://localhost:4200
and the backend will be running onhttp://localhost:5000
by default.
- Send a request through Postman on
http://localhost:5000/users/register
with the following data:
{
"username": "admin",
"password": "123456",
"confirmPass": "123456",
"name": "Karan",
"email": "[email protected]",
"mobile": "1234567890"
}
- Open Mongo console and run the following commands
use finances-app
db.users.update({username: "admin"}, {$set: {admin: true}})