TenantMate — Logical Application Architecture

Generated 2026-05-10 · a non-technical description of the logical shape of the TenantMate system, intended for partner discussion.

TenantMate has a single business-logic application at its core, with multiple front doors for different audiences and a small number of external services it reaches out to. The renter has three ways to use the product — web, iOS, Android — all built from one codebase and all talking to the same backend. The team has a separate admin interface into that same backend. The marketing site doubles as the service's website and as the place renters sign up and manage their subscription, with payments handled by Stripe.

flowchart TD
    subgraph FE [Front-ends]
      direction LR
      M["Marketing & signup site"]:::fe
      T["Tenant app
PWA · iOS · Android"]:::fe A["Admin portal"]:::fe end APP["Business-logic application
business rules · APIs · admin UI"]:::core subgraph OWN [Owned directly] direction TB DB["Database
incl. geospatial"]:::owned DOC["Cloud document storage"]:::owned end subgraph EXT [Reached out to] direction TB DATA["External UK data sources
postcode · crime · energy · flood · council tax · broadband"]:::external AI["AI document summarisation"]:::external EM["Inbound email gateway"]:::external PAY["Stripe
subscriptions"]:::external end FE -- APIs --> APP APP --> OWN APP --> EXT classDef fe stroke:#7aa2ff,stroke-width:2px,fill:transparent; classDef core stroke:#b48cff,stroke-width:2px,fill:transparent; classDef owned stroke:#5fd29a,stroke-width:2px,fill:transparent; classDef external stroke:#f0c66b,stroke-width:2px,fill:transparent; style FE fill:transparent,stroke:#7aa2ff,stroke-dasharray:3 3,color:#7aa2ff style OWN fill:transparent,stroke:#5fd29a,stroke-dasharray:3 3,color:#5fd29a style EXT fill:transparent,stroke:#f0c66b,stroke-dasharray:3 3,color:#f0c66b

Front-ends

Marketing & signup site

A standalone web site that doubles as the public face of the service and the place renters sign up. Renters using the PWA or the iOS/Android apps are redirected here to register a payment method and start their subscription. Hosted independently of the application itself.

Tenant app

The product. A single codebase delivered three ways — Progressive Web App (in any modern browser, installable to the home screen), iOS app, and Android app. Same screens, same flows, same data, whichever way the renter prefers to use it.

Admin portal

A separate user interface for the TenantMate team. Used to support tenants, review escalations, and operate the service.

The business-logic application

A single application sits at the centre of the system. It:

What the application owns directly

The database

Holds all structured tenant data — accounts, tenancies, evidence metadata, conversations, the audit trail. Includes geospatial capability so we can do things like locate a property and run flood-risk checks against its position.

Cloud document storage

Keeps the actual files — photos, PDFs, voice notes — separate from the structured database. Documents live in object storage; the database holds the references and metadata.

What the application reaches out to

External data sources

Public UK data feeds the application queries on the tenant's behalf — postcode and address resolution, crime statistics, energy ratings, flood risk, council tax bands, and broadband speed. Each source is a discrete integration following a shared pattern. Broadband uses Ofcom data where available, falling back to the App Factory's own Speedwatch dataset where it isn't.

AI document summarisation

An AI layer that takes complex tenant documents (tenancy agreements, deposit deduction lists, council notices, scheme correspondence) and produces tenant-friendly summaries. Routing is tiered so we use the right model for the right task, with sensitive content restricted to privacy-reviewed paths.

Inbound email gateway

Each tenancy gets its own dedicated email address. When a landlord, agent, scheme, or contractor emails the tenant about that tenancy, the email is captured and added to the tenancy's record automatically.

Stripe (subscriptions & payments)

Stripe is the payment processor. Renters subscribe and manage their subscription through Stripe Checkout and the Stripe Customer Portal, both surfaced from the marketing & signup site rather than inside the apps. The application listens to Stripe events to keep subscription state and entitlement in sync.