# `saas-platform` preset (business, stub)

> Stub only. Not implemented in this template version.

## What this preset would model

Multi-tenant SaaS: organization onboarding, seat-based billing, usage metering, plans/entitlements, invoice generation, plan upgrades/downgrades, tenant isolation tests, customer-facing admin.

## Suggested entities (when implemented)

`Organization`, `Plan`, `Subscription`, `SubscriptionItem`, `Invoice`, `InvoiceLine`, `UsageRecord`, `Entitlement`, `Seat`, `BillingAddress`, `PaymentMethod`.

## Required integrations

- Billing engine (Stripe Billing / Chargebee / Recurly) — proposed via `enterprise-modules/payment/`.
- Email provider for invoice + dunning.
- Tax engine (per-jurisdiction).

## Cross-cutting requirements

- `auth.multiTenant = true` in `project.config.json`.
- Tenant-scoped queries enforced via Prisma extension + EF query filter.
- Tenant isolation tests in `dotnet/tests/Infrastructure.Tests/Tenancy/`.

## When to promote

- Project is a multi-tenant SaaS product.
- Billing model and pricing decisions are made.
- ADR-0007 (multi-tenant strategy) chosen between _shared schema_, _schema-per-tenant_, _db-per-tenant_.
