Skip to content

Implementing SaaS with multitenancy

This guide summarizes how multitenancy fits the ConnectSoft SaaS template program and where to read authoritative architecture.

What “tenant” means here

  • A tenant is an isolation boundary for customers (organization, workspace, or account) in a multi-tenant SaaS product.
  • Editions and entitlements (product catalog and entitlements bounded contexts) determine what a tenant may use; tenants bounded context owns who exists and how they are isolated.

Where templates implement tenancy

  • Backend: Microservices generated from ConnectSoft.Saas.*Template repositories carry tenant-aware application logic; cross-cutting resolution (claims, headers, correlation) is centralized in ConnectSoft.Extensions.Saas.AspNetCore once published (ConnectSoft.Extensions.Saas.* libraries).
  • Front: ConnectSoft.Blazor.Shell.Saas applies tenant/edition policies, hosts MFEs, and coordinates BFF / gateway calls—see ConnectSoft Blazor Templates HLD and SaaS platform — solution plan.
  • APIs: External consumers use ServiceModel packages only; they do not reference domain layers.

Documentation map

Topic Document
End-to-end SaaS platform (repos, templates, ServiceModel) SaaS platform — solution plan
Bounded contexts and template repo names SaaS bounded contexts and ConnectSoft.Saas.*Template
Template dependency diagram (Platform + SaaS) Templates dependencies
Company-wide domain model ConnectSoft Company documentation — docs/saas/framework/saas-platform-ddd-entities.md

Out of scope

Dedicated configuration / feature-flag and audit platforms are not part of this multitenancy template program; treat them as separate bounded-context initiatives when adopted.