Welcome to SnapCart
SnapCart is a full-featured B2C e-commerce platform built for businesses that need a powerful online store with a professional admin dashboard. It combines a customer-facing storefront with a comprehensive backend management system, all backed by enterprise-grade security and performance.
What can SnapCart do?
| Capability | Details |
|---|---|
| Product Catalogue | Unlimited products with variants, attributes, images, and SEO |
| Order Management | End-to-end order lifecycle with invoicing and status workflows |
| Multi-language | Full i18n support with RTL languages and versioned translation bundles |
| Multi-currency | Configurable currencies with exchange rate management |
| Payments | PayPal, Razorpay, and PayTM integrations |
| Role-Based Access | Granular permissions across 100+ permission keys |
| Shipping | Zone-based shipping with country/state/city rate tables |
| Marketing | Coupons, flash deals, blog, dynamic popups, newsletter |
| CMS | Custom pages, blog posts, media gallery |
| Notifications | In-app and email notifications with custom templates |
Architecture overview
SnapCart is split into two independent portals:
SnapCart
├── Admin Panel → /admin/* React + TypeScript (Vite)
└── Customer Store → / React + TypeScript (Vite)
Backend → :8080 Spring Boot 3 + MySQL
- The Admin Panel is used by store operators to manage everything — products, orders, customers, settings, and more.
- The Customer Store is the public-facing storefront where shoppers browse, buy, and manage their accounts.
- The Backend is a REST API (Spring Boot) powering both portals.
Where to start
- Setting up SnapCart for the first time? → Installation Guide
- Managing your store? → Admin Panel
- Customer-facing features? → Customer Portal
- Developer or DevOps? → Developer Guide
Key features at a glance
Role-Based Access Control (RBAC)
Every admin user is assigned a role. Roles carry a set of fine-grained permissions — over 60 individual keys covering every module. A Finance user sees orders and revenue reports but cannot edit products. A Content Editor can manage blog posts but cannot access payment settings. See the Permissions Reference for the full list.
Multi-gateway Payments
SnapCart integrates with PayPal, Razorpay, and PayTM out of the box. Each gateway can be enabled or disabled independently with its own credentials. Cash on Delivery is also supported. See Payment Gateways.
Zone-based Shipping
Define shipping zones by country, state, or city. Set flat rates, free shipping thresholds, or weight-based rates per zone. Rates are matched automatically at checkout based on the customer's delivery address. See Shipping.
Flash Deals & Coupons
Create time-limited flash deals with countdown timers visible on the storefront. Generate coupon codes with percentage or fixed discounts, minimum order requirements, and usage limits. See Coupons & Flash Deals.
Multi-language & Multi-currency
Manage multiple languages (including RTL support) and currencies with configurable exchange rates. The storefront language switcher and currency picker are shown automatically when more than one is active. See Localization.
Activity Audit Log
Every write action by every admin is permanently recorded — who changed what, when, from which IP, and what the value was before and after. Logs cannot be deleted. See Activity Logs.
Documentation structure
| Section | What's covered |
|---|---|
| Getting Started | Requirements, installation, first-time setup |
| Admin Panel | All admin modules — orders, products, customers, settings, and more |
| Customer Portal | Storefront experience from the customer's perspective |
| Developer Guide | Tech stack, architecture, and deployment |
:::tip Demo credentials
| Role | Password | |
|---|---|---|
| Super Admin | superadmin@demo.io | Super@123 |
| Admin | admin@demo.io | Admin@123 |
| Finance | finance@demo.io | Finance@123 |
Change these passwords immediately on a production installation. :::