Multi-tenant model
Negodex is multi-tenant: one shared API and database powers many independent stores. Each store is a tenant, identified by a unique slug.
How tenants are addressed
Every request is tenant-scoped by subdomain:
acme.negodex.com/— Acme’s storefrontacme.negodex.com/admin— Acme’s admin panelapi.negodex.com— the shared API; the tenant is identified via theX-Store-SlugHTTP header that each frontend sets automatically
What’s isolated per tenant
- Products, categories, and inventory
- Orders and customers
- Branding (logo, colors, store name)
- Payment credentials and feature flags
- Operator accounts and roles
What’s shared across tenants
- The underlying NestJS API
- The PostgreSQL database (rows are scoped by
storeId) - Email delivery (Resend), image hosting (Cloudinary), and push notifications (FCM)
This means tenants can’t read each other’s data, but new platform features ship to everyone at once.
Last updated on