New companies need a controlled way to request access to UMS and start their onboarding without creating a tenant manually in the back office. UMS must capture the request, keep it pending until a global administrator reviews it, and create the tenant only after approval.
| Actor | Responsibility |
|---|---|
| System Admin | Reviews tenant signup requests and decides whether a new company is admitted to UMS. |
| Company Contact | Submits the company details and receives the onboarding outcome. |
| Tenant Admin User | Receives the first administrative account created for the approved company. |
If the company reference already belongs to an existing tenant, the system does not create a duplicate tenant and the request is not approved.
If the System Admin rejects the request, the company does not receive a tenant and the request is marked as rejected.
If the business later requires payment verification before admission, the onboarding flow must support additional review states without changing the company-facing request entry point.
| Rule | Description |
|---|---|
| BR-01 | Tenant signup requests belong to global scope and are reviewed only by System Admins. |
| BR-02 | A tenant is created only after a request is approved. |
| BR-03 | The approved tenant must receive its first administrative user as part of the same approval outcome. |
| BR-04 | The onboarding request must remain auditable from submission to final decision. |
| BR-05 | Future review states may be added for payment verification, but the public request flow must remain stable. |
| # | Acceptance Criterion |
|---|---|
| 1 | A company can submit a tenant signup request with the required company and contact data. |
| 2 | The request appears as pending in the global onboarding inbox. |
| 3 | Only System Admins can review and approve or reject the request. |
| 4 | Approval creates the tenant and the first tenant admin account. |
| 5 | The company contact receives the onboarding outcome and temporary credentials after approval. |
| 6 | Rejected requests do not create tenants or admin users. |
TenantSignupRequest aggregate with Pending, Approved, and Rejected states.| Type | References |
|---|---|
| Functional Stories | FS-22 |
| Domain Entities | TenantSignupRequest, Tenant, UserAccount |
| Notifications | TenantSignupRequestReceived, TenantSignupApproved |
| ADRs | ADR-0075 |