Subscription Enforcement
How AdlDesk enforces subscription quotas, feature gates, grace periods, and the full suspension lifecycle.
Last updated: July 2026
Overview
Subscription enforcement ensures that tenants operate within the boundaries of their plan. The system automatically monitors usage and applies restrictions at the right moment — without requiring manual action from platform admins in most cases.

Quota Enforcement
Every plan has hard limits that the system enforces in real time:
- max_users — When a tenant reaches their user limit, the "Invite User" button is disabled and a quota warning is displayed. The firm admin sees a prompt to upgrade their plan to add more team members.
- max_cases — When the open case count reaches the plan limit, creating new cases is blocked. Existing cases remain accessible.
- storage_gb — When storage usage reaches the quota, new document uploads are rejected. Existing documents are unaffected.
Feature Gates
Features not included in a tenant's plan are gated at the API level and in the UI:
- Gated modules show a locked icon with an "Upgrade to access" message
- API calls to gated endpoints return a
403 Feature Not Availableresponse - Feature gate checks run on every request — upgrading a plan grants immediate access
Grace Periods
When a subscription expires, the system does not immediately suspend the tenant. Instead, it enters a configurable grace period (default: 7 days) during which:
- The tenant can still access all features
- A prominent warning banner is displayed on every page
- Automated reminder emails are sent on days 1, 3, and 6 of the grace period
Suspension Lifecycle
The full lifecycle for an expired subscription proceeds as follows:
- Expired — Subscription end date passes; grace period begins
- Grace Period — Configurable window (default 7 days) with warnings
- Suspended — All logins blocked; data is fully preserved and inaccessible
- Data Retention — Suspended data retained for 30 days with deletion warnings sent to the firm admin
- Scheduled Deletion — After 30 days of suspension, the tenant is flagged for deletion in the next maintenance cycle
Was this article helpful?