Managing Agent — Agency Profile & Portfolio Overview
Managing Agent — Agency Profile & Portfolio Overview
The Managing Agent is the top-level organisational container in the platform. Every piece of data — owners, blocks, units, and leaseholders — belongs to a single managing agent record, identified by the organisation's org_id.
Entity Hierarchy
The platform is structured around a five-level hierarchy:
Managing Agent
└── Owner
└── Block
└── Unit
└── Leaseholder
All child entities are implicitly scoped to the managing agent through the shared org_id, providing strict multi-tenant data isolation.
Agency Profile Page
Navigate to Dashboard → Agency Profile to access your managing agent record.
The page is divided into two sections:
Portfolio Summary
Four stat cards give an at-a-glance view of your portfolio:
| Card | What it shows |
|---|---|
| Owners | Total portfolio holders under management |
| Blocks | Residential buildings managed |
| Total Units | Individual flats across all blocks |
| Unassigned Blocks | Blocks not yet assigned to an owner (highlighted in amber when > 0) |
Agency Profile
The profile section displays all details stored against your managing agent record. Click Edit (principal role required) to update any field.
Profile Fields
Company Identity
| Field | Description |
|---|---|
| Trading Name | Operating name if different from the registered organisation name |
| Company Number | Companies House registration number |
| VAT Number | UK VAT registration (e.g. GB123456789) |
Registered Address
Full UK address: line 1, line 2, city, postcode, and country (defaults to GB).
Contact Details
Primary email, phone number, and website URL.
Regulatory Registrations
| Field | Description |
|---|---|
| ARMA Membership Number | Association of Residential Managing Agents membership |
| ARMA Active | Whether membership is currently active |
| RICS Membership Number | Royal Institution of Chartered Surveyors registration |
| RICS Active | Whether registration is currently active |
| FCA Reference Number | Financial Conduct Authority reference |
Client Money Protection (CMP)
Required under FCA rules for agents holding client money:
| Field | Description |
|---|---|
| CMP Scheme | Name of the protection scheme |
| CMP Policy Number | Policy reference |
| CMP Expiry | Policy expiry date |
Professional Indemnity Insurance
| Field | Description |
|---|---|
| PI Insurer | Name of the insurer |
| PI Policy Number | Policy reference |
| PI Expiry | Policy expiry date |
Default Accounting Connector
Sets the default accounting integration for the agency. Supported options:
xeroquickbookssage
This value is used as the default connector for owner-level accounting unless overridden.
Expiry Indicators
Insurance and CMP expiry dates are displayed with colour-coded indicators:
| Colour | Meaning |
|---|---|
| 🟢 Green | More than 90 days until expiry |
| 🟡 Yellow | 30–90 days until expiry |
| 🟠 Amber | Fewer than 30 days until expiry |
| 🔴 Red | Expired |
Access Control
| Action | Required permission |
|---|---|
| View profile | settings.read |
| Edit profile | Principal role only |
All profile updates are written to the audit trail.
Auto-Provisioning
When a new organisation signs up, calling managingAgent.get for the first time will automatically create a managing agent record linked to that org_id. No manual setup step is required.
tRPC API Reference
managingAgent.get
Retrieves the managing agent profile for the current organisation. Auto-provisions a record if one does not yet exist.
- Permission:
settings.read - Returns: Full agent profile object
managingAgent.update
Updates one or more fields on the managing agent profile.
- Permission: Principal only
- Audit logged: Yes
- Accepted fields: All profile fields listed above (all optional, pass
nullto clear)
managingAgent.summary
Returns portfolio-level statistics for the current organisation.
- Permission: Authenticated user
- Returns:
{
ownerCount: number;
blockCount: number;
totalUnits: number;
unassignedBlockCount: number;
}