Project Overview

A robust, scalable e-commerce platform backend built with Spring Boot, supporting multi-vendor operations with advanced features.

🔐 Authentication & Authorization

Secure JWT-based authentication with role-based access control for customers, sellers, and admins. OTP verification for enhanced security.

🛍️ Complete E-Commerce Suite

Full shopping experience with cart management, wishlist, order processing, and comprehensive product catalog management.

💳 Payment Integration

Multiple payment gateways including Razorpay, Stripe, and COD with secure transaction tracking and status management.

👥 Multi-Vendor Support

Complete seller onboarding, product management, order handling, and comprehensive reporting for vendor operations.

⭐ Review & Rating System

User-generated reviews and ratings for products with full CRUD operations and moderation capabilities.

🎯 Promotions & Deals

Advanced coupon system with expiry management, usage tracking, and promotional deals for marketing campaigns.

Technology Stack

Built with modern Java technologies and industry best practices for scalability and maintainability.

🔧 Core Framework

  • Java 17
  • Spring Boot 3.5.5
  • Spring Data JPA
  • Spring Security
  • Spring Web
  • Spring Boot Mail

🗄️ Database & ORM

  • MySQL 8.0+
  • Hibernate ORM
  • MySQL Connector/J
  • JPA Repositories

🔒 Security & Auth

  • JWT (JJWT)
  • Spring Security
  • BCrypt Password Encoding
  • OTP Verification

💰 Payment Gateways

  • Razorpay v1.4.6
  • Stripe v26.12.0
  • COD Support

🛠️ Development Tools

  • Maven Build Tool
  • Lombok
  • Spring Boot Validation
  • JUnit Testing

📧 Communication

  • SMTP Email Service
  • OTP Generation
  • Order Notifications

Database Schema

Comprehensive data model designed for scalability with proper relationships and constraints.

👤 User

  • id: Long
  • email: String
  • fullName: String
  • password: String
  • role: Enum

Relations: Address, Coupon

🛍️ Product

  • id: Long
  • title: String
  • mrpPrice: Integer
  • sellingPrice: Integer
  • quantity: Integer

Relations: Category, Seller, Review

📦 Order

  • id: Long
  • totalSellingPrice: Double
  • orderStatus: Enum
  • createdAt: DateTime

Relations: User, Seller, OrderItem

🛒 Cart & CartItem

  • Cart.id: Long
  • CartItem.id: Long
  • quantity: Integer
  • size: String

Relations: Product

🏪 Seller

  • id: Long
  • email: String
  • status: Enum
  • businessDetails: Embedded

Relations: Product, SellerReport

💳 PaymentOrder

  • id: Long
  • amount: Double
  • paymentLinkId: String
  • paymentStatus: Enum

Relations: Order, User

⭐ Review

  • id: Long
  • reviewText: String
  • reviewRating: Double
  • createdAt: DateTime

Relations: User, Product

🎫 Coupon

  • id: Long
  • code: String
  • discountAmount: Double
  • expiryDate: DateTime

Relations: User

RESTful API Endpoints

Comprehensive API documentation with JWT authentication and role-based access control.

🔐 Authentication

  • POST /auth/signup
  • POST /auth/signin
  • POST /auth/sent/login-signup-otp

👤 User Management

  • GET /users/profile

🛍️ Product Management

  • GET /products/{id}
  • GET /products/search
  • GET /products

🛒 Cart Management

  • GET /api/cart
  • PUT /api/cart/add
  • DELETE /api/cart/item/{id}
  • PUT /api/cart/item/{id}

❤️ Wishlist Management

  • GET /api/wishlist
  • POST /api/wishlist/add-product/{id}

📦 Order Management

  • POST /api/orders
  • GET /api/orders/user
  • GET /api/orders/{id}
  • PUT /api/orders/{id}/cancel

💳 Payment Management

  • GET /api/payment/{id}

🏪 Seller Management

  • POST /sellers/login
  • PATCH /sellers/verify/{otp}
  • POST /sellers
  • GET /sellers/{id}
  • DELETE /sellers/{id}

📦 Seller Products

  • GET /sellers/products
  • POST /sellers/products
  • DELETE /sellers/products/{id}
  • PUT /sellers/products/{id}

📋 Seller Orders

  • GET /api/seller/orders
  • PATCH /api/seller/orders/{id}/status

⭐ Review System

  • GET /api/products/{id}/review
  • POST /api/products/{id}/review
  • DELETE /api/reviews/{id}

🎫 Coupon Management

  • POST /api/coupon/apply
  • POST /api/coupon/admin/create
  • DELETE /api/coupon/admin/delete/{id}

🚀 Quick Start Guide

Get up and running with the Zeemerse backend in minutes.

📋 Prerequisites

  • Java JDK 17+
  • Maven 3.6+
  • MySQL 8.0+
  • Git
  • IDE (IntelliJ/Eclipse)

⚙️ Configuration

  • Database URL Setup
  • JWT Secret Configuration
  • Payment Gateway Keys
  • SMTP Settings
  • Environment Variables

🏃‍♂️ Running

  • Clone Repository
  • mvn clean install
  • mvn spring-boot:run
  • Access: localhost:8080
  • API Testing Ready