Provisioning a new centre

Adding a new centre to the NGO means creating a new tenant — a Control-Plane registration and an isolated per-centre database. This is a one-time operation per centre, performed by the Platform Admin (or a platform operator on their behalf).

What gets created

Control Plane rowTenant record
New databaseper-centre
Tenant migrationsmasterdata + donations + …
Seed defaultscategories, accounts
First Tenant Admininvited by email

The command

Provisioning is a management command run by your platform operator. The canonical invocation:

python manage.py provision_tenant \
    --slug mumbai \
    --legal  "Vihangam Yog Mumbai Center" \
    --display "Vihangam Yog Mumbai" \
    --address "…" \
    --pan    "AAATV1234F" \
    --section-80g "AAATV1234F24A2AB" \
    --admin-email "mumbai.admin@example.org" \
    --admin-name  "Initial Tenant Admin"

Key arguments:

  • --slug — a short, URL-safe identifier. Becomes part of the database name (tenant_mumbai) and of every receipt number (RCP/mumbai/…). Pick carefully; it’s effectively immutable.
  • --legal / --display — legal and display names. The display name appears in the header; the legal name goes on the 80G receipt.
  • --admin-email / --admin-name — the first Tenant Admin. Sukrit Nidhi generates a random password if you don’t provide one; it prints it once to stdout at the end.

What happens after

  1. The Tenant Admin receives an invitation email with a one-time link.
  2. They set their password, enrol MFA, and arrive at the Centre dashboard for the new tenant.
  3. They tweak the seeded masterdata (categories, payment accounts) to match the centre’s actual setup.
  4. They invite accountants and viewers from the Users & Roles screen.
  5. From there on, the centre is live.
A newly provisioned centre shows up on the NGO dashboard within 15 minutes (on the next aggregator run). Click Refresh now if you want to see it immediately.

Suspending and archiving

A centre can have one of three statuses, set from Tenants in the sidebar:

  • Active — normal operation.
  • Suspended — access is blocked at the login gate, but data is preserved untouched. Use this if there is a dispute you want to pause during investigation.
  • Archived — read-only. The centre is no longer included in NGO rollups; its data remains available via direct tenant URLs for historical queries.

All three transitions are audit-logged with reasons.