It's a scalable and modular backend system for a multi-vendor eCommerce marketplace with support for vendor approvals, organic product verification, secure authentication (OTP-based), product categorization, order management, and more.
-
π Authentication System
- Email & OTP-based registration/login
- JWT-based authentication
- Password reset functionality
-
π€ User Roles
customer,vendor,admin
-
πͺ Vendors
- Vendor application & approval process
- Organic product approval workflow
- Store product management
-
ποΈ Products
- Category management with nested parent categories
- Organic/non-organic tagging
- Product reviews & ratings (1β5)
-
π Cart & Orders
- Add-to-cart, cart item quantity update, cart total calculation
- Order placement, tracking (status: placed, processing, shipped, delivered)
- Delivery address management
-
π³ Payments
- Support for Cash on Delivery and Credit Card (logic placeholder)
-
π§Ύ Admin Features
- Approve vendors & organic products
- View all users, vendors, and orders
- The schema is designed to support a multi-vendor marketplace with modular entities like users, products, carts, orders, and reviews.
- Designed using DBML (used with dbdiagram.io)
- Follows normalized structure with dedicated
orderItems,cartItems, anddeliveryAddressestables - Enumerations used for clear role, status, and purpose handling
Here is the high-level Entity-Relationship (ER) diagram for the backend:
Note: If you want clear ER diagram then click the link below
Full DBML available in Interactive ER Diagram
- Backend: Node.js, Express.js
- Database: MongoDB
- ORM: Mongoose
- Authentication: JWT, OTP via email
- Dev Tools: DBML (for schema design), Postman, resend
