Purdah - An Ecommerce Web Application
Purdah is a full-stack eCommerce platform built with Next.js, .NET, and AWS, featuring secure authentication, dynamic product variations, seamless PayPal payments, and an admin dashboard for order and inventory management.
- Next.js
- TypeScript
- .NET
- PostgreSQL
- AWS
- PayPal

Purdah – A Full-Stack eCommerce Platform
Overview#
Purdah is a feature-rich eCommerce platform designed for a smooth shopping experience, secure authentication, dynamic product variations, and an intuitive admin dashboard for managing orders, inventory, and refunds.
Built with Next.js, .NET, PostgreSQL, and AWS, the platform ensures scalability, security, and high performance while leveraging serverless AWS services for cost efficiency.
Key Features#
- Next.js with TypeScript for a fast, SEO-friendly frontend
- .NET Backend for secure order processing and authentication
- PostgreSQL Database for scalable data storage
- AWS Cognito for user authentication
- AWS S3 for product image storage
- AWS Lambda for serverless processing
- AWS Elastic Beanstalk for backend deployment
- AWS Secrets Manager for secure environment variable management
- Cloudinary for optimized media storage on the backend
- PayPal integration for secure payments
- AU Post API for real-time shipping validation
- Dynamic product variations for sizes and colors
- Admin dashboard for order, refund, and inventory management
- Secure refund and cancellation process managed via the backend
Admin Dashboard – Managing the Store#
The admin dashboard is a centralized control panel for managing all store operations, including orders, inventory, and refunds.
Dashboard Features#
- Orders Management: Displays all active, completed, and refunded orders.
- Product Management: Allows admins to add, update, or delete products with real-time inventory tracking.
- Refund & Cancellation Requests: Provides a secure backend-driven refund process to prevent fraud.
- User Management: View and manage registered customers.
- Sales & Analytics: Displays revenue, total sales, and order trends.
Admin Dashboard UI Overview#
| Section | Features Displayed |
|---|---|
| Overview | Sales statistics, total orders, refund percentage |
| Orders | Order details, status updates, and refund actions |
| Products | List of all products, stock levels, and variation options |
| Customers | Registered users, recent purchases, and account status |
| Refund Requests | Pending and processed refunds with transaction history |
How Refunds Are Processed#
- Admin receives a refund request in the dashboard
- Verifies the order status and eligibility
- Approves or denies the refund request
- If approved, the refund is processed via PayPal API
- User receives an email confirmation
How AWS Services Were Utilized#
1. AWS S3 for Image Storage#
- Stores product images and media assets in S3 buckets.
- Uses pre-signed URLs for secure image retrieval.
- Provides fast, scalable, and cost-effective media storage.
2. AWS Elastic Beanstalk for .NET Backend Deployment#
- Deploys the .NET backend API with auto-scaling to handle high traffic.
- Ensures automated deployments and load balancing.
3. AWS Secrets Manager for Secure Credential Storage#
- Securely stores database credentials, API keys, and JWT secrets.
- Eliminates the need for hardcoded sensitive information.
4. AWS Cognito for Authentication#
- Manages user login, registration, and session handling.
- Provides Multi-Factor Authentication (MFA) for added security.
- Role-based access ensures only admins can access the dashboard.
5. AWS Lambda for Serverless Processing#
- Handles background tasks like order status updates and email notifications.
- Improves backend efficiency by reducing unnecessary API calls.
6. AU Post API for Shipping Validation#
- Validates user shipping addresses and calculates real-time shipping costs.
Deployment on AWS#
Frontend Deployment (Next.js on S3 and CloudFront)#
- The Next.js frontend is deployed on AWS S3 as a static website.
- CloudFront (CDN) serves assets globally with faster load times.
Backend Deployment (.NET on AWS Elastic Beanstalk)#
- The .NET backend is deployed on AWS Elastic Beanstalk with auto-scaling.
- Uses AWS Secrets Manager for API keys and database credentials.
Database Hosting (PostgreSQL on AWS RDS)#
- Hosted on AWS RDS, providing automated backups and failover support.
Image Handling (S3 for frontend, Cloudinary for backend)#
- Frontend images are retrieved from AWS S3 for better performance.
- Backend image processing uses Cloudinary for optimization.
Tech Stack#
- Frontend: Next.js, TypeScript, ShadCN UI
- Backend: .NET (C#)
- Database: PostgreSQL (AWS RDS)
- Authentication: AWS Cognito
- Storage: AWS S3 (Frontend), Cloudinary (Backend)
- Payments: PayPal API
- Shipping Validation: AU Post API
- Deployment: AWS S3 (Frontend), AWS Elastic Beanstalk (Backend)
- Secrets Management: AWS Secrets Manager
Challenges and Future Enhancements#
Challenges Addressed#
- Ensuring a scalable product variation system
- Implementing a secure backend-driven refund process
- Accurately calculating shipping using AU Post API
- Managing secrets securely without hardcoding credentials
Future Enhancements#
- Automated Inventory Management
- AI-Driven Product Recommendations
- Automated Order Confirmation Notifications via AWS SNS
Learnings#
1. Deep Understanding of AWS Services#
- Gained experience with AWS Cognito, S3, Lambda, Elastic Beanstalk, and Secrets Manager.
- Understood how to deploy and scale applications using AWS.
2. Building a Secure eCommerce Platform#
- Designed a secure authentication and role-based access system.
- Implemented a backend-driven refund system to prevent fraud.
3. Optimizing Performance with Cloud Services#
- Used CloudFront CDN for faster asset delivery.
- Integrated Cloudinary for backend media optimization.
4. Scalable Database Design#
- Hosted PostgreSQL on AWS RDS with read replicas for scaling.
- Optimized queries for faster product and order retrieval.
5. Managing Orders and Refunds Securely#
- Understood the importance of audit logs in tracking refund requests.
- Implemented secure PayPal API refund processing via the admin dashboard.
Final Thoughts#
Purdah is a scalable, secure, and performance-driven eCommerce platform, leveraging AWS services for authentication, storage, deployment, and security.
The admin dashboard provides full control over orders, inventory, and refunds, making store management efficient and user-friendly.
With a modular architecture and cloud-based deployment, Purdah is built for growth and long-term sustainability.
Check out the repository for more details: Purdah eCommerce
Loading comments…