Back to ProjectsE-Commerce Platform Baazizi CMS Multi-Tenant E-Commerce Management Platform
Project Overview Enterprise-grade backend administration system for managing merchants, products, orders with role-based access control and Auth0 authentication.
Zakaria Tejjani Building things that work… eventually.
© 2025 Zakaria Tejjani. All rights reserved.
Designed & Built with ♥ using Next.js & Tailwind CSS
Technologies Used Node.js Express MongoDB Auth0 AWS S3
Background & Challenge The Problem
Modern e-commerce businesses face several critical challenges:
Vendor Management Complexity : Managing multiple sellers, each with their own product catalogs, shipping methods, and business processes
Fragmented Systems : Separate tools for product management, order processing, customer relationships, and content management
Limited Analytics : Lack of real-time insights into sales performance, inventory levels, and customer behavior
Security Concerns : Need for enterprise-grade authentication and role-based access control
Scalability Issues : Traditional platforms struggle to handle growing product catalogs and increasing order volumes
Business Objectives
The platform was designed to address these challenges by providing:
A unified management system for all marketplace operations
Scalable architecture to support business growth
Comprehensive analytics for data-driven decision making
Secure, role-based access for different user types
Flexible content management for dynamic pages and marketing materials
Conclusion Bzz Co. represents a comprehensive solution to the complex challenges of multi-vendor marketplace management. By leveraging modern web technologies and cloud infrastructure, the platform delivers:
Unified Operations : Single platform for all marketplace needs
Enterprise Security : Auth0-powered authentication and role-based access
Scalable Architecture : MongoDB and AWS S3 for growth
Rich Analytics : Real-time insights for data-driven decisions
Flexible Content Management : Dynamic pages and marketing tools
Developer-Friendly : Clean MVC architecture and modern JavaScript
The platform successfully bridges the gap between complex business requirements and user-friendly interfaces, providing administrators, sellers, and customers with tailored experiences that drive efficiency and growth.
With its robust foundation and extensible architecture, Bzz Co. is positioned to evolve alongside the changing demands of modern e-commerce, making it a sustainable long-term solution for marketplace operations.
Technical Specifications Summary Category Technology Runtime Node.js (ES6 Modules) Framework Express.js 5.1.0 Database MongoDB + Mongoose 8.17.0 Authentication Auth0 (JWT + OpenID Connect) Cloud Storage AWS S3 + AWS SDK 2.1692.0 Template Engine EJS 3.1.10 File Uploads Multer + Multer-S3 Security bcrypt 6.0.0, express-session HTTP Client Axios 1.11.0 Development nodemon 3.1.10
Project Statistics
Data Models : 14 Mongoose schemas
Controllers : 15 business logic modules
Routes : 17 route definition files
Admin Views : 33 EJS templates
File Upload Limit : 5MB per file
User Roles : 3 (Admin, Seller, Customer)
Subscription Plans : 4 (Plan A/B/C/D)
Platform Name : Bzz Co.
Version : Production
Architecture : MVC (Model-View-Controller)
Deployment : Cloud-ready (AWS S3, MongoDB Atlas compatible)
License : Proprietary
Last Updated: January 2025
Interested in Similar Solutions? Let's discuss how we can build something amazing together.
Solution Overview Bzz Co. delivers a complete multi-tenant e-commerce management solution with three core components:
1. Administration Dashboard
A powerful admin interface providing full control over:
Merchant and seller onboarding and management
Product catalog oversight
Order processing and fulfillment
Customer management with plan-based subscriptions
Content management system (CMS) for pages, sliders, and team profiles
Notification broadcasting system
Real-time analytics and reporting
2. Seller Portal
Dedicated interface for vendors featuring:
Product listing and inventory management
Order fulfillment tracking
Seller-specific analytics dashboard
Application and onboarding workflow
Business verification and approval process
3. Customer Interface
Technology Stack Backend Architecture
Core Framework:
Node.js with ES6 Modules - Modern JavaScript runtime
Express.js 5.1.0 - Web application framework
MongoDB with Mongoose 8.17.0 - NoSQL database and ODM
Authentication & Security:
Auth0 - Enterprise-grade authentication platform
express-openid-connect for session management
jsonwebtoken for API authentication
jwks-rsa for key validation
Key Features Product Management
Comprehensive Product Catalog with SKU tracking, variants, and inventory management
Multi-variant System : Size, Color, Material, and custom attributes
Special Product Handling :
Fragile items flagging
Biodegradable product marking
Frozen items with temperature control specifications
Pricing Engine : Base pricing, discounts, and tax configuration
Image Management : Multiple product images with AWS S3 storage
Delivery Options : Worldwide, selected countries, or local delivery
Shipping Methods : Seller-fulfilled or company-fulfilled
Order Management
Architecture MVC Pattern Implementation
bzz_co/
├── models/ # Data Layer (14 Mongoose schemas)
│ ├── Products.js
│ ├── Orders.js
│ ├── Customers.js
│ ├── Sellers.js
│ ├── Merchants.js
│ ├── Categories.js
│ ├── Notifications.js
│ └── ...
├── controllers/ # Business Logic (15 controllers)
│ ├── productController.js
│ ├── orderController.js
│ ├── sellerController.js
│ └── ...
├── routes/ # Request Routing (17 route files)
│ ├── products.routes.js
│ ├── orders.routes.js
│ ├── auth.routes.js
│ └── ...
├── views/ # Presentation Layer
│ ├── admin/ # Admin dashboard (33 views)
│ ├── seller/ # Seller portal
│ └── customer/ # Customer interface
├── middleware/ # Authentication & Authorization
│ ├── authMiddleware.js
│ └── verifyToken.js
├── config/ # Configuration
│ └── auth0.config.js
├── assets/ # Static Resources
│ ├── css/
│ ├── js/
│ └── img/
└── utils/ # Helper Functions
Authentication Flow
Session-based Authentication : Auth0 OpenID Connect for web sessions
JWT Token Verification : API endpoint protection
Role-based Access Control : Middleware checks for Admin/Seller/Customer roles
Optional Verification : Mixed public/private page support
Security Implementation Enterprise-Grade Authentication
Auth0 Integration : Industry-leading identity platform
Multi-factor Authentication : Support for MFA
Social Login : Extensible authentication providers
JWT Tokens : Secure API access
Access Control
Role-based Permissions : Three distinct user roles
Route Protection : Middleware-based authorization
Session Management : Secure session handling with express-session
CSRF Protection : Built-in session security
Data Security
Password Hashing : bcrypt with salt rounds
Scalability Features Database Scalability
MongoDB : Horizontal scaling through sharding
Mongoose ODM : Efficient query optimization
Indexing Strategy : Performance-optimized queries
Aggregation Pipelines : Complex analytics at database level
Cloud Infrastructure
AWS S3 : Unlimited file storage capacity
CDN-ready : S3 URLs compatible with CloudFront
Stateless Design : Easy horizontal server scaling
Modular Architecture
Separation of Concerns : Clear MVC structure
Microservice-ready : Controllers can be extracted to services
Business Model Revenue Streams
Multi-tier Subscriptions : Customer plans (A/B/C/D) with varying features
Commission-based : Marketplace fee on seller transactions
Seller Onboarding Fees : Potential application or listing fees
Premium Features : Advanced analytics, priority support
Target Market
Primary:
B2B marketplace operators
Multi-vendor e-commerce businesses
Enterprise retail operations
Secondary:
Individual sellers seeking marketplace platforms
Brands requiring vendor management systems
Dropshipping businesses
Results & Impact Operational Efficiency
Before:
Fragmented tools for product, order, and customer management
Manual vendor onboarding and verification
Limited visibility into business metrics
Time-consuming content updates
After:
Unified platform for all operations
Automated seller application workflow with approval system
Real-time dashboard with comprehensive analytics
CMS for instant page updates and marketing content
Performance Metrics
Scalability:
Supports unlimited products, sellers, and customers
Cloud-based storage eliminates file size concerns
MongoDB aggregation handles complex analytics efficiently
Technical Highlights Advanced Features
Notification Broadcasting System
Multi-level targeting (role-based)
Priority queuing
Read/dismiss tracking
Scheduled delivery
Analytics Engine
Real-time data aggregation
Time-series analysis (daily, weekly, monthly, yearly)
Revenue trend tracking
Product performance insights
Flexible Product System
Multi-variant support (size, color, material)
Special handling attributes (fragile, frozen, biodegradable)
Recent Development Activity Based on Git commit history:
Notifications Management (Latest)
Complete notification system implementation
Multi-level targeting and tracking
Enhanced Pages Management
User profile integration
Dashboard improvements
Branding Updates
Logo refresh
Visual identity improvements
Code Quality
Console log cleanup
Login page refinements
Lessons Learned Technical Decisions
What Worked Well:
Auth0 integration simplified authentication complexity
MongoDB provided flexibility for evolving data models
AWS S3 eliminated file storage concerns
Express.js enabled rapid development
Challenges Overcome:
Multi-tenant data isolation through role-based access
Complex product variant system requiring flexible schema design
Real-time analytics requiring optimized aggregation pipelines
Best Practices Implemented
Separation of Concerns : Clear MVC architecture
Security First : Authentication middleware on all protected routes
Scalable Storage : Cloud-based file management
Future Enhancements Planned Features
Enhanced Analytics
Predictive sales forecasting
Customer lifetime value analysis
Inventory optimization recommendations
Mobile Applications
Native iOS/Android apps leveraging existing API
Push notifications for orders and messages
Advanced Seller Tools
Bulk product import/export
Multi-warehouse inventory management
Automated pricing strategies
Customer Features
Customer-facing features including:
Product browsing and search
Shopping cart and checkout (registered and guest)
Order tracking and history
Plan-based subscription tiers (Plan A/B/C/D)
Customer dashboard
bcrypt 6.0.0 - Password hashing
express-session - Session management
AWS S3 - Product images, team photos, category icons
AWS SDK 2.1692.0 - AWS service integration
Multer & Multer-S3 - File upload handling (5MB limit)
Frontend Stack
EJS 3.1.10 - Embedded JavaScript templates
Bootstrap - Responsive UI framework
RemixIcon - Icon library
Axios 1.11.0 - Promise-based HTTP requests
Development Tools
nodemon 3.1.10 - Development server with auto-reload
dotenv 17.2.1 - Environment variable management
Complete Order Lifecycle : From placement to fulfillment
Dual Customer Support : Registered users and guest checkout
Multi-product Orders : Shopping cart with multiple items
Address Management : Separate shipping and billing addresses
Payment Tracking : Order payment status and transaction history
Status Management : Pending, Processing, Shipped, Delivered, Cancelled
Merchant & Seller Management
Vendor Onboarding : Complete application and approval workflow
Business Verification :
Business details and documentation
Bank account information
Tax identification
Category association
Status Tracking : Active, Pending, Suspended, Rejected
Logo Management : Brand identity for each merchant
Application Review System : Admin approval/rejection workflow
Customer Management
Customer Database : Comprehensive customer profiles
Plan-based Subscriptions : Four-tier subscription system (Plan A/B/C/D)
Order History : Complete purchase tracking
Guest Checkout : No registration required for purchases
Contact Management : Customer inquiry and support ticket system
Analytics Dashboard
Total counts: Products, Customers, Sellers, Merchants, Orders, Categories
Time-based analytics: Today, This Week, This Month
Order status breakdown: Pending, Completed, Paid, Unpaid
Revenue tracking with monthly trends
Top-selling products analysis
Stock monitoring: Active products vs. Out-of-stock items
MongoDB aggregation pipelines for complex queries
Revenue trend visualization
Product performance metrics
Customer behavior insights
Content Management System
Legal pages (Privacy Policy, Terms of Service)
Help and support pages
General content pages
SEO metadata (title, description, keywords)
Slug-based URL routing
Homepage slider management with ordering
Team member profiles with roles and social links
Category management with icons
Newsletter subscription system
Notification System Multi-level Notification Management:
Target Audience : Admin, Seller, Customer, or All
Priority Levels : High, Medium, Low
Scheduling : Immediate or scheduled delivery
Tracking : Read status and dismissal tracking
Rich Content : Title, message, and action links
Communication Features
Contact Form : Customer inquiry management
Newsletter : Email subscriber database
Job Applications : Career portal with CV uploads
Data Flow
Client Request → Express Router
Authentication Middleware → JWT/Session verification
Authorization Middleware → Role-based access check
Controller → Business logic execution
Model → MongoDB data operations
View/JSON Response → Client presentation
File Upload Architecture
Direct S3 Upload : Via multer-s3 middleware
Organized Storage : Resource-based folders (products/, team/, categories/)
Validation : Image-only, 5MB max file size
URL Generation : S3 public URLs returned to database
Environment Variables : Sensitive data in .env files
Input Validation : Mongoose schema validation
Secure File Uploads : File type and size restrictions
API-first Design : RESTful endpoints for potential mobile apps
Role-specific dashboards reduce cognitive load
Responsive design across devices
Intuitive navigation and workflow
Enterprise-grade authentication reduces breach risk
Role-based access prevents unauthorized data access
Regular security updates through Auth0
Developer Experience
Clear MVC structure simplifies feature additions
Modular design enables team collaboration
Comprehensive model layer (14 data models)
RESTful API architecture
Reusable controllers and middleware
Plugin-ready authentication system
Temperature control specifications
Complex inventory management
Dynamic Content Management
Slug-based routing
SEO optimization (meta tags)
Slider ordering and scheduling
Team member profiles with social integration
Code Quality
ES6 Modules : Modern JavaScript standards
Async/Await : Clean asynchronous code
Error Handling : Comprehensive try-catch blocks
Validation : Schema-level and controller-level validation
Sidebar optimization
Data Validation : Both client and server-side validation
Error Handling : Consistent error responses across API
Product reviews and ratings
Wishlist and favorites
Loyalty program integration
Integration Capabilities
Payment gateway integration (Stripe, PayPal)
Shipping provider APIs
Email marketing platforms
Accounting software (QuickBooks, Xero)
Technical Roadmap
GraphQL API : Alternative to REST for flexible querying
Microservices Architecture : Service decomposition for better scaling
Redis Caching : Performance optimization for frequent queries
Elasticsearch : Advanced search capabilities
WebSocket Integration : Real-time order updates