Talk through a process

What we fix

Six places an FM contract quietly leaks margin.

None of them show up as a line on a budget, because none of them are a line on a budget. They are people, time and work that quietly does not happen. We work with the systems you already have: API where there is one, controlled automation where there is not.

Terri working a queue and showing its reasoning on every job. Demonstration data, October 2026.

01Work orders and intake

97 of 100

test calls became dispatchable jobs

A desk operator that works inside whatever system your client already runs.

Terri answers the phone, asks the questions that contract requires, matches the site, sets the trade and the priority, raises the work order in your client’s own system and dispatches it. What it hands over is a job, not a transcript for somebody to type up.

It belongs to no CAFM vendor. Terri operates the systems you already run, the way somebody on your desk would: your own job management system, your client’s CAFM, or both at once. Neither you nor your client changes anything, and win a client running something different and Terri is set up to work that too.

Everything downstream is decided in that first minute. A wrong priority is a missed SLA. A wrong trade is a second visit. A wrong site is both, plus an argument about who pays.

The 97 of 100 is a bench run against a copy of a live system, not a demo we built ourselves: phone call to dispatched work order, end to end, in UAT.

TerriWhat we built

ProofSync moving completed jobs into the client’s system and reading each one back to prove it landed. The one job that needs a person is held, not guessed. Demonstration data, November 2026. The £228,000 beside it is worked off that contractor’s real volume of 3,000 jobs a month.

02Client portals

£228,000

a year, in one contractor's staff time

You are paying twice for the same job.

That is what one FM contractor was spending to re-key jobs between their own system and their client's. By hand, every day, in both directions. Three thousand jobs a month is their own figure. Twenty minutes a job and £19 an hour is our working, and we show it.

If you work for a client who runs their own CAFM, your people are the integration. They read a job on one screen and type it into another, then do it again when it closes.

ProofSyncWhat we built

Automatic triggers, as configured

The six that decide whether an alert becomes work. Five chase money. One would chase the job.

An invoice is 1 to 30 days overdueInvoice: 1-30 days overdueOn
An invoice is 31 to 60 days overdueInvoice: 31-60 days overdueOn
An invoice is 61 to 90 days overdueInvoice: 61-90 days overdueOn
An invoice is 91+ days overdueInvoice: 91+ days overdueOn
A quote passes its due dateQuote: overdue to be sentOn
A job goes past due, a response time is missed, a job is finished but never signed offleft unconfiguredOff

A trigger turns an alert into a status. A status can be filtered, coloured, reported on and handed to somebody. An alert on its own cannot.

Client review Anonymised, 2026. The counts are real. Client, brand and contractor names are removed.

03SLAs and exceptions

34 of 64

automatic triggers switched on

You automate chasing money. You do not automate chasing work.

One contractor had 34 of their system's 64 triggers configured. Every one of them chases an invoice.

A job going past due, a response time missed, a job finished but never signed off: left unconfigured. The alert is still raised, which is why the list exists. It never becomes a status anyone can filter, colour, report on or hand to somebody.

Of 784 open jobs, overdue by

One contract base, read in full. Pending and Progress were read row by row rather than counted.

Over a year9
Six to twelve months19
Three to six months61
One to three months164
Under thirty days364
Not yet due167

Only one open job has no due date at all, so this is not missing data.

Client review Anonymised, 2026. The counts are real. Client, brand and contractor names are removed.

04Contractor chasing

617 of 784

open jobs overdue, on one contract base

Overdue is not a reporting problem. It is contract exposure.

784 jobs open, 617 past due, the oldest 477 days past due and still on hold. 830 alerts never opened. 154 jobs finished and never invoiced.

Chasing is the job nobody is given and everybody is blamed for. It is also the one piece of work a system can genuinely do on its own, if somebody configures it to.

Fields populated, by brand

Darker is more complete. Every brand is a full count of its own active sites, so nothing here is sampled.

All 1,410 active sitesFin codePhoneRegionArea mgrReg FMSnr mntMnt mgrHours
Brand Aall 585856575858575754
Brand Ball 444441434444434339
Brand Call 383835373838373735
Brand Dall 272726272727272727
Brand Eall 17171417171717171
Brand Fall 16161516161614142
Vacantall 383829293836292928
Distributionall 442444330
Brand Gall 571571522539571569537538504
Brand Hall 594593545547593592547547510

Fin code, Phone, Region, Area mgr, Reg FM, Snr mnt, Mnt mgr, Hours. Two of those columns read as populated on 1,312 sites and name an actual person on one.

Client review Anonymised, 2026. The counts are real. Client, brand and contractor names are removed.

05Mobilisation

3,093

records read field by field, read only

Starting a contract on data nobody has checked.

One review read 1,410 active sites and 1,683 inactive, field by field, with nothing created, edited or saved.

The records were mostly filled in. The structure was not. What identifies a site living inside its name instead of in a field. A finance code holding four conventions in one box. Two maintenance manager columns that look complete on 1,312 sites and name a real person on exactly one. Mobilise on that and you inherit all of it.

Open work orders, by contractor

The five largest holders, out of 84 contractors carrying live work across 35 trades and 843 sites.

Contractor 01464
Contractor 02336
Contractor 03149
Contractor 0492
Contractor 0579

Five hold 57 per cent of all open work. Ten hold 70 per cent.

Client review Anonymised, 2026. The counts are real. Client, brand and contractor names are removed.

06Contractor intelligence

57%

of open work held by five contractors

Know who is actually carrying your contract.

1,968 open work orders, 84 contractors, 35 trades, 843 sites with something open. Five contractors held 57 per cent of it. Ten held 70.

That may be exactly the model you intended, or more dependency than anyone has looked at. We draw no conclusion from it. The point is that it was one export rather than a project, and it was answerable the same day.

The part that matters

Not tied to one CAFM.

A platform vendor's agent works inside that vendor's product, and the moment you are on it they set the price, the roadmap and the terms. We are the side of that trade you can take without replacing what you already run.

We work with the systems you already have: API where there is one, controlled automation where there isn't.

Next

Bring us one process that's getting in the way.

Thirty minutes. We'll tell you whether we can take it out, and roughly what it would cost. If we can't, we'll say so.