Building Smart Property Matcher: an AI Real-Estate Matching Platform

Commercial property agents drown in listing emails and match them to clients by hand. Here's how I built a Laravel + AI platform that reads every listing automatically, scores it against each client's requirement, and automates the outreach — with explainable match reasons agents can trust.

By Arslan AyoubPublished September 1, 2026Updated September 8, 20269 min read

Commercial property moves on speed and memory. A London leasing agency I worked with received dozens of new listings a day by email from brokers, and matched them — from memory — against a growing book of client requirements. When the right unit landed in the inbox on a busy day, it was easy to miss, and a missed match is a lost deal. This is the story of Smart Property Matcher, the Laravel and AI platform I built to fix that.

The problem: too many listings, matched by hand

Restaurant and retail leasing is a matching business. Brokers email units; the agency holds a list of what each client wants — the areas, the size range, the budget, the planning use class. The value is in connecting the two quickly. But that connection was entirely manual:

  • New listings arrived as free-text emails, in every possible format
  • Someone had to read each one and key the details into a spreadsheet
  • Client requirements lived in another spreadsheet (and several people's heads)
  • Matching meant cross-referencing the two by memory, every day
  • Follow-up and outreach were ad hoc, so good matches went cold

It worked — until volume outgrew it. The fix wasn't more staff; it was turning the repetitive parts (reading emails, cross-referencing, chasing) into software.

What Smart Property Matcher does

Smart Property Matcher is a bespoke Laravel platform that runs the agency's core workflow end to end: it reads incoming listing emails, extracts the property data with AI, scores every property against every live client requirement, and automates the outreach — while keeping one clean source of truth for properties, requirements, matches and the CRM.

How it works — the pipeline

1. Email intake + AI extraction

The system connects to the agency's mailbox and ingests broker listing emails automatically. Each one is passed through an AI extraction step that pulls structured fields out of messy free text — address, postcode, area, square footage, rent, premium, use class, lease length, availability, even whether the unit has a kitchen extract or alcohol licence.

  • Every field comes back with a confidence score, not just a value
  • Low-confidence or missing fields are flagged, and the listing is marked Needs Review rather than trusted blindly
  • The original email is kept alongside the parsed record for full traceability
  • Duplicate listings (same address + postcode) are caught automatically

The key engineering decision: never let the AI fail silently. Confidence scoring plus a 'needs review' state means the platform is fast when it's sure and honest when it isn't — a human checks only the uncertain records, not every one.

2. Client requirements

Each client requirement captures what that operator actually wants: a set of target areas, a size range (min/max sq ft), a maximum budget, and the acceptable planning use classes and deal types. Requirements are tied to the CRM — the company and the contact behind them — and flagged retained or non-retained, with fee status, so the team knows which briefs to prioritise.

3. The matching engine

This is the heart of the platform. Whenever a property is added or a requirement changes, the engine scores every property against every relevant requirement on a 0–100 scale, weighing the factors that actually decide a deal:

  • Area — is the unit in one of the client's target locations?
  • Size — does the square footage fall in (or near) the required range?
  • Budget — is the rent within, or close to, the client's ceiling?
  • Availability — is it available now?

Crucially, every match is explainable. Instead of a bare number, each match stores its reasons — for example Soho location (strong), Size 1,600 sq ft (strong), Within budget £150k pa (strong), Available now — with each reason flagged as a strong or partial match. Agents don't have to trust a black box; they see exactly why a property scored the way it did.

Explainability is what makes an internal matching tool actually get used. An agent will act on a 100% match when they can see the three reasons behind it — and will ignore a score they can't interpret.

4. Automated outreach — email + WhatsApp

A great match is worthless if nobody tells the client. The platform turns matches into outreach: it drafts and sends match notifications by email and WhatsApp, and tracks each match through a clear workflow — Pending → Sent → Actioned → Dismissed — so the team always knows what's been shown to whom, and nothing good goes cold.

5. CRM + workflow

Underneath it all is a proper CRM — companies, contacts, tasks, property follow-ups and saved filter presets — so the whole operation runs in one place instead of scattered spreadsheets and inboxes. It's built on Laravel with UUID keys, queued background jobs for the heavy lifting (email parsing, match scoring, sending), and soft deletes so nothing is ever truly lost.

The tech stack

  • Laravel — the application core: models, queues, jobs, soft deletes
  • MySQL — a relational schema with JSON columns for flexible fields (areas, match reasons, confidence)
  • AI extraction — turning free-text broker emails into structured, scored property data
  • Email intake — automated mailbox ingestion with full source traceability
  • WhatsApp + email outreach — automated, tracked client notifications

The hard parts

The interesting engineering wasn't the CRUD — it was making the automation trustworthy:

  • Reliable extraction from wildly inconsistent broker emails, with confidence scoring so the team knows what to double-check
  • Explainable matching — a score is easy; a score an agent will act on needs its reasons attached
  • Deduplication so the same unit arriving from three brokers doesn't clutter the pipeline
  • A workflow that survives real use — pending, sent, actioned, dismissed — not just a list of numbers

The outcome

Smart Property Matcher replaced a daily manual grind — reading emails, keying data, cross-referencing from memory, chasing clients — with a system that does it automatically and surfaces a ranked, explainable list of the matches worth acting on. The agency works its best opportunities first, and nothing gets lost in an inbox. You can see it on my Smart Property Matcher case study.

Need something similar?

If your business runs on matching, intake or repetitive cross-referencing — property, recruitment, procurement, anything — the same pattern applies: ingest with AI, match with an explainable engine, automate the outreach. I build these as an AI automation and full-stack engineer. Tell me what you're matching by hand and I'll map how to automate it.

Get in touch

Let's build something great together

Tell me about your project and I'll get back to you within 24 hours. Prefer to chat? Message me on WhatsApp.