Skip to content

An e-commerce platform that is capable of handling transactions between seller, buyer and buyer's bank through different APIs. Able to handle payment methods using user's provided bank credentials

Notifications You must be signed in to change notification settings

HaaaSiiiib/E-commerce-website

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 

Repository files navigation

E-Commerce Website

This repository consists of the web project for the CSE-446 course

Project

Develop an e-commerce website with inventory, sales functionality with card payment, administrative and client privileges, etc. A supplier portal for inventory and Order tracking and a bank for all entities to track their balances.

Languages

  • PostgreSQL - Express.js - React.js - Node.js -

Workflow

  • 3 different modules. created An E-Commerce(Client+Admin), A Supplier and A Bank Site with MERN.

  • Built 3 Interconnecting API endpoints for the 3 stream.

  • Order Tracking

  • Admin must approve every order manually and forward it to 'Supplier'

  • Admin can Add new Product with price.

  • Every SALES transaction:

    ==>> User Checkout using Online payment ==>> Admin Approves and Gets SUBTOTAL in his account. ==>> Forwards Order to Suppliers and keeps 20% Incentive ==>> Supplier accepts and Order status is 'delivered'

  • Every User/Admin/Suppliers can check their Bank Balance in Bank Server

How to install and run

1. First, clone the repository to your computer or download the project as a zip file.

git clone https://github.com/HaaaSiiiib/E-commerce-website.git

2. Three organizations are three different servers and each one has to be installed and run separately. Assuming you are in the parent (CSE-446) directory or whatever name you cloned the project, do the following.

cd bank
npm install
npm start

cd ..
cd supplier
npm install
npm start

cd ..
cd e-commerce
npm install
npm start

3. There is a dotenv.template file in each directory. User has to create a .env file based on the template and set the values of different variables themselves based on their database configuration.

4. This project uses postgres, but it should compatible with most other relational databse dialects that conforms to SQL standard.

Servers will be running on following ports by default.

Bank: http://127.0.0.1:4001

Supplier: http://127.0.0.1:4002

E-commerce: http://127.0.0.1:4003

5. Swagger testing links for the backend API in publicly accessible web deployment

Bank: https://bank.cse446.ml/swagger

Supplier: https://suppl.cse446.ml/swagger

E-commerce: https://ecom.cse446.ml/swagger

6. There are two front-end sites for this project. Both need to be run separately. Assuming you are in the parent folder, do the following.

cd bank
npm install
yarn start

cd ..
cd e-commerce
npm install
yarn start

7. By default, the sites will run on the following ports.

Bank: http://127.0.0.1:4004

E-commerce: http://127.0.0.1:4005

8. Publicly accessible web deployment (Subject to expiration limit)

Bank: https://bank-frontend.cse446.ml

E-commerce: https://ecom-frontend.cse446.ml

About

An e-commerce platform that is capable of handling transactions between seller, buyer and buyer's bank through different APIs. Able to handle payment methods using user's provided bank credentials

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published