Current Status
Shopora Nexus is a production-ready full-stack multi-vendor eCommerce platform supporting Customer, Seller, and Admin modules.
It includes secure JWT authentication, Stripe payment integration, product management, order processing, role-based access control, and scalable REST APIs built using Spring Boot and React.
Problem
Building an enterprise-level eCommerce platform that supports multiple user roles while maintaining security, scalability and clean architecture.
The system needed to provide secure authentication, product management, order lifecycle management, payment processing and an intuitive user experience.
Technical Decisions
01. Spring Boot Layered Architecture
Organized the backend using Controller, Service, Repository and Entity layers. This improves maintainability and keeps business logic separated from presentation.
02. JWT Authentication
Implemented JWT-based authentication with Spring Security to protect APIs and provide role-based access for Customers, Sellers and Administrators.
03. PostgreSQL + Spring Data JPA
PostgreSQL with Hibernate ORM is used for relational database management, reliable persistence and entity relationships.
04. React + Redux
Developed the frontend using React with Redux for centralized and predictable application state management.
05. Stripe Payment Gateway
Integrated Stripe for secure online payments and realistic eCommerce checkout workflows.
Why this project?
The project was developed to understand and implement a real-world enterprise eCommerce architecture using modern full-stack technologies.
It focuses on the complete online shopping workflow including authentication, authorization, product management, order processing and payment functionality.
Objective
To build a secure, scalable and enterprise-ready eCommerce platform while demonstrating modern full-stack development practices and real-world business workflows.
Challenges & Mistakes Encountered
01. JWT Authentication Configuration
What Happened
Users were unable to access protected APIs even after successful login.
Initial Assumption
I initially believed the problem was related to JWT token generation.
Investigation
After debugging the authentication flow, inspecting request headers and examining Spring Security logs, I discovered that the token itself was valid.
Root Cause
Incorrect Spring Security configuration and JWT filter registration prevented the token from being processed correctly.
Lesson
A valid JWT alone is insufficient. The security filter chain and authentication filter must also be configured correctly.
JWT Authentication Returning 403 Forbidden
Problem
Authenticated users were unable to access protected endpoints despite receiving a valid JWT token.
Investigation
Verified JWT generation, decoded the token payload, inspected Spring Security logs and traced authentication filter execution.
Root Cause
Spring Security was not correctly extracting user authorities from the JWT.
Fix
Configured the JWT authentication filter, mapped user roles into GrantedAuthority and updated the Security Filter Chain.
Lesson
Authentication and authorization are separate processes. A valid token must also contain correctly mapped permissions.
Order Transaction Consistency Issue
Problem
During checkout, payment completed successfully but order creation occasionally failed due to database exceptions.
This created the possibility of successful payments without corresponding order records.
Initial Solution
Added exception handling around the order service.
Edge Case
Network interruptions or database failures after payment confirmation could still create partial transactions.
Final Solution
Implemented transactional order processing using Spring's
@Transactional annotation.
Database operations were rolled back when failures occurred, while duplicate order creation was prevented.
Lesson
Business-critical operations should execute within transactional boundaries to maintain consistency and prevent partial failures.
Limitations
01. Monolithic Architecture
The application currently follows a monolithic architecture where business modules are deployed as a single service.
02. Single Database Dependency
The platform relies on a centralized PostgreSQL database. High database load could affect application performance during peak traffic.
03. Basic Recommendation System
Products are currently displayed using standard filtering and search rather than personalized recommendations.
04. Inventory Management
Inventory updates occur during order processing. Real-time synchronization, automated restocking and demand forecasting are not currently implemented.
05. Search Capabilities
Product search currently relies on traditional database queries. Advanced features such as Elasticsearch, typo tolerance, autocomplete and semantic search are not yet available.
Impact
Shopora Nexus serves as a comprehensive showcase of enterprise full-stack development.
The project demonstrates secure authentication, multi-role access control, payment integration, REST API development, database management and modern software architecture.
It significantly improved my problem-solving, debugging and system-design skills while providing practical experience with technologies used in production applications.
Future Vision
01. Microservices Architecture
Refactor the monolithic application into independent microservices for improved scalability, maintainability and fault isolation.
02. AI-Powered Product Recommendations
Integrate Machine Learning to provide personalized product recommendations based on user behavior, purchase history and browsing patterns.
03. Cloud-Native Deployment
Deploy the platform using AWS services such as EC2, RDS and S3 together with Docker and Kubernetes.
04. Multi-Payment Gateway Integration
Expand payment support with Razorpay, PayPal, UPI and other payment providers alongside Stripe.
05. Elasticsearch-Based Smart Search
Implement Elasticsearch for full-text search, autocomplete, typo tolerance, advanced filtering and faster product discovery.