Grafton.
Project Barbara · Process Catalogue

The Lettings Process Catalogue

v2 · the lifecycle cut · the unit as a state machine · updated 2 July 2026

Every process a letting agency runs, organised by where it sits in the life of a managed unit, and expressed as a verifiable sub-process: a clear trigger (clock starts) → a checkable outcome (clock stops). That framing is what makes each one measurable and, in turn, automatable.

The shape — a unit is a state machine

L1
Acquisition
win the unit — roll-up | organic | cross-sell → property onboarding
L2
Letting & Tenant Onboarding
get a paying tenant in
L3
Management
run it, month after month
🟢 Green steady state🟠 Amber B·C·D·E🔴 Red F

It loops. A unit that terminates (🔴) re-enters Letting (L2) for a re-let — or, if the landlord is selling, feeds the Sales desk. Underneath it all sits Running the Firm (client-accounting · finance · regulation · MI · marketing · office · corporate · capital · people).

The economic logic: a unit earns its management fee in 🟢 Green at near-zero marginal cost; it spends (labour + risk) every day it sits in 🟠 Amber; 🔴 Red means it is leaving the steady book. So profit ≈ green-time − amber-dwell-cost − red-transitions. A property holds one RAG status (the worst active lane) but may carry several open lanes underneath.

Every process is a verifiable sub-process: Trigger (clock starts) → verifiable outcome (clock stops). The clock — time-to-resolve — is the τ from the Verifiable Frontier: short-τ + verifiable outcome = safe to automate.   Build-type: Alto CRM · AI AI delivers · Copilot AI assembles, human decides · Physical body required.

L1 · Acquisition — win the unit

Two engines, same destination (a unit in our system), different route, price and onboarding.

Roll-up (M&A) — buy a book  ·  ~£3,100 / unit  ·  three stages, human-led (not automated yet)

StageWhat it coversCore
① Acquisitionsourcing & evaluation diligence (legal · trading-FDD · client-money) negotiation & offer completionCopilot
② Book onboardingmigrate the book: data extract, money moved, deposits re-protected, CMP re-registered ready to manageAI
③ Business / company integrationfold in the acquired company: office, staff (TUPE), systems, brand, entity integrated — ties to Office mgmt + CorporateHuman

Organic — win a landlord one at a time  ·  ~£hundreds / unit (to prove)

ProcessTrigger → verifiable outcomeCore
Marketing — lead-gen → conversionmarket activity qualified landlord leadAI Human
New landlord registrationenquiry landlord record + KYC/CDD passed (Griffin Verify)AI
Landlord agreement signingterms agreed signed agreement + ToB vintage recordedAI
Property registrationinstruction property record + digital twinAI

Cross-sell — an existing landlord adds a unit  ·  lowest CAC (limited volume)

ProcessTrigger → verifiable outcomeCore
Spot opportunityexisting relationship landlord signals a new propertyAI Human
Add propertynew unit added to the existing landlord accountAI

Property Onboarding — standardised · all three channels converge here

ProcessTrigger → verifiable outcomeCore
AML / KYClandlord verified (Griffin Verify) — gating before we hold fundsAI
Client account setupverified dedicated client-money account openAI
Digital twininstruction property record + photo-captured twinAI
Compliance baselinerecord gas/EICR/EPC/deposit baseline + gaps flaggedAI
Readiness gatemandatory items present or under remediation operableAI

Exit fork: empty → L2 Letting · already tenanted → straight to Tenant Onboarding.

L2 · Letting & Tenant Onboarding — get a paying tenant into the unit

Two parts. Letting fills an empty unit (once per turnover; earns the fee, pays the void). Tenant Onboarding brings the tenant into our system — and is the direct entry point for units acquired already tenanted (they skip Letting). End state either way: the unit goes 🟢 Green.

Letting — find & sign a tenant

Step · processTrigger → verifiable outcomeCoreHrs
Listing · Property marketingunit available live listing on portalsAlto27
Viewings · Viewing managementenquiry viewing conducted + feedback loggedPhysical203
Leasing · Tenant referencingapplicant pass/fail decision (RTR + sanctions)AI20
Tenancy agreement draftingoffer accepted signed ASTAI27

Tenant Onboarding — bring the tenant into our system  ·  ↳ direct entry if already tenanted

ProcessTrigger → verifiable outcomeCoreHrs
Tenancy ingestionsigned/inherited AST structured key termsAI
Deposit protection / transferdeposit taken or inherited protected + prescribed info in the statutory windowAI9
Right-to-rent checktenant status verifiedAI
Rent setuptenancy live schedule + collection configuredAI
Move-in / letting transitionmove-in utilities/council tax switched + inventory filedAI Physical68

L3 · Management — run it — the RAG state machine

🟢 A Steady State — where we want every unit, for as long as possible
ProcessTrigger → verifiable outcomeCoreHrs
Monthly rent collectiondue date rent received & matchedAlto200
Landlord statement & paymentrent cleared statement issued + landlord paidAlto500
Client-money reconciliationdaily reconciled to zeroAlto4
Scheduled compliance — gas, EICR, EPC/MEES, alarms, legionella, RTR, licensing, PRS-DBrenewal window valid cert / registration on fileAI Physical~145
Routine mid-tenancy inspectionscheduled date inspection report filed, no actionsPhysical200
Rent review (S13)anniversary new rent agreed / Form 4A servedAI25
Landlord update & sentiment pulsemonthly update sent + landlord RAG capturedAI
Tenancy continuation (periodic)ongoing terms currentAI15
BUILD FIRST — the zero-marginal-cost target. These are high-frequency, instantly verifiable, short-τ. Drive them to zero marginal cost and the management fee becomes near-pure contribution. (Compliance appears here as the scheduled renewal that just happens; when it fails, it drops to Amber D.)
🟠 B Rent Arrears
ProcessTrigger → verifiable outcomeCoreHrs
Reminder → follow-up → Letter Before Actionrent unpaid past the ~2-week tolerance rent collected (→ Green)AI23
Section 8 noticearrears threshold (3mo, post-RRA) valid notice servedCopilot8
Possession proceedings prepnotice expired claim bundle issued (→ Red)Copilot8

Clock: days-to-collect. Mostly automatable chasing; human on enforcement & vulnerable-tenant routing.

🟠 C Maintenance — highest-volume exception; carries revenue
ProcessTrigger → verifiable outcomeCoreHrs
Tenant maintenance requestrequest logged approved, scheduled, completed, paid, closedAI200
Contractor managementjob raised contractor dispatched + invoice-to-quote matchedAI100
Emergency maintenanceout-of-hours alert made safe + landlord notifiedPhysical60

Clock: days request→closed. Precision dispatch from the digital twin; 15% markup = revenue. The standout AI-native build.

🟠 D Compliance Issue — rare, high-stakes
ProcessTrigger → verifiable outcomeCoreHrs
Cert failure / expiry / EICR C1–C2 remedialfailure detected valid cert restored / remedial doneAI Physical
Statutory breach (missed deadline, RRA, licensing)breach detected breach remediated + evidencedCopilot
Disrepair claim responseclaim received protocol response + remedials scheduledCopilot10

Clock: days-to-remediate. Regulatory-penalty risk — the lane where failure is expensive. AI tracks every expiry so this rarely fires.

🟠 E Tenant Compliance
ProcessTrigger → verifiable outcomeCoreHrs
Tenant breach (ASB, subletting, unauthorised occupant/pet)breach detected breach cured / enforcedCopilot
RTR follow-up failureshare-code lapse status re-verifiedAI
Tenant complaint / ombudsman casecomplaint raised final response in time / case closedCopilot6

Clock: days-to-cure. Investigation + enforcement — judgement-heavy, human-led longest.

🔴 F Termination
ProcessTrigger → verifiable outcomeCoreHrs
Tenant notice / Landlord possession (Ground 1/1A)notice served (either side) valid notice + end date confirmedAI Copilot14
Check-out & deposit returnend date check-out done + deductions agreed + deposit returned in 10 daysPhysical54
Deposit dispute (if any)dispute raised ADR bundle filed + adjudicatedCopilot24
Off-boarding / final reconciliationpossession vacant possession + ledger closedAI

Clock: days notice→possession→deposit released. Then the unit forks: → back to L2 (re-let), or → Sales (landlord selling).

Sales — separate desk, and a termination outcome

Sits beside the lifecycle. Its job (economically) is to cover the shared portal so lettings lists its re-lets free — and at GF+Flatman scale one retained team covers both books' sales twice over. Run commission-only. Two channels, different CACs: landlord sales (warm — a 🔴 Red termination where the landlord is selling; skips marketing) and new instructions (open market; marketing-led, higher CAC).

ProcessTrigger → verifiable outcomeCore
Marketing — lead-gen → conversionmarket activity vendor lead → valuation bookedAI Human
Valuation & instructionseller enquiry signed sole-agency instructionCopilot
Marketing & listinginstruction live sales listing (shares the portal)Alto
Viewings & offerslisting offer accepted, memo of salePhysical
Sale progressionsale agreed exchange & completionCopilot

The loop that matters: a 🔴 Red landlord termination where the landlord is selling is a warm sales instruction — the lettings book feeds the sales desk. And a tenanted sale to a new landlord can retain the management — the inverse cross-sell.

Running the Firm — underneath all of it

Firm-level processes that aren't per-unit but make the whole thing legal, solvent, financed and improving.

DomainWhat it coversCore
Client money / client accountingthe regulated client-money function: per-tenancy reconciliation, landlord payments, deposit handling, NRL, CMP (TLP bridge → build)Alto
Financeour own corporate finance: VAT (MTD), annual accounts & corp tax, payroll, management accounts, budgeting / MICopilot
Regulatory & control environmentAML / CMP / redress / ICO / PRS firm registrations; the financial-crime control pack (policies · MLRO · monitoring · training); legislative-change monitoring; RRA firm complianceAI Copilot
Reporting & MIthe Book Health RAG dashboard (this model's output), unit-economics model, KPI framework, the queries / triage ledgerAI
Marketing & Portalsbrand; the shared portal subscriptions (Rightmove / Zoopla); the demand-gen infrastructure powering organic-lettings and sales lead-genAI Human
Office managementpremises across the group; integrating or closing acquired officesHuman
Corporaterationalising acquired companies / entities; group structure; legal-entity managementCopilot
Capitalinvestor / shareholder management; debt financingHuman
Peoplehiring, the operating team, training, the control-environment trainingHuman

The roll-up acquisition machine itself lives in L1, not here. The three "marketing" mentions are distinct: organic-lettings lead-gen wins management instructions; sales lead-gen wins vendor instructions; Marketing & Portals here is the shared infrastructure both run on.

What's still missing — the gap list (open)

Setting the structure out makes the holes visible. Candidates to slot in:

  • Key management & property access for hundreds of units (contractor access, viewings, emergencies) — flagged undiscussed in the GF diligence; a real physical lane.
  • Void / vacancy management — the unit's state between termination and re-let (security, utilities, council-tax void, insurance) — currently implicit in L2.
  • Insurance — landlord rent-guarantee, building, and our PI / CMP — partly firm, partly a cross-sell.
  • Cross-sell / ancillary revenue — insurance referral, mortgage referral, rent-guarantee — a revenue lane not yet a process.
  • Landlord win-back / churn-save — when a landlord signals leaving (the sentiment-pulse amber) — a retention process.
  • General complaints handling (below ombudsman) and the vulnerable-customer pathway.
  • Deposit-scheme transfer on acquisition (custodial ↔ insured) — an L1 integration sub-process.