← Back to blog
Operations

Inside the evidence pack that would have saved a R540,000 contract

Lymra Team·5 min read·13 July 2026

We've told the story before: a Johannesburg cleaning company held a Hyde Park office contract for three years, never missed a service, and lost it anyway — R45,000 a month, R540,000 a year — because when the new property manager complained, all they had to answer with was "we cleaned it." No proof. No paper trail. Just a claim against a claim.

The question we get most from operators who read that story isn't "could this happen to me?" They already know it could. It's "what would the proof have actually looked like?"

So here's the walkthrough. Not a concept, not a mock-up — this is what a real Lymra proof report contains today, section by section.

The photo that isn't just a photo

Every job carries before, after, and issue photos, and the difference between this and a WhatsApp thread of pictures is where the photo comes from. It's captured inside the job, not selected from a camera roll afterwards — which is the entire difference between "evidence" and "a gallery." Each photo is tagged by type (before / after / issue) and attached to a specific job at a specific property, not floating in a folder somebody has to reconstruct months later.

On the proof report itself, photos are laid out as a strip under each job, thumbnail by thumbnail, in the order they were captured. If a photo is missing, the report says so — "missing" or "not embedded" — rather than leaving a blank space that looks like an oversight. A proof document that quietly hides its own gaps isn't proof.

Two clocks, not one

Underneath every photo the report prints two timestamps, not one.

  • Server time — the moment the photo actually arrived at Lymra. This is the canonical figure, because the cleaner on-site has no way to edit it after the fact.
  • Device time — when the phone's camera says the photo was taken, printed alongside so a genuinely offline capture (a basement parking area with no signal, for instance) is visible as exactly that — flagged "offline" — rather than mistaken for a discrepancy.

That pairing matters because a single timestamp is a claim; two independent clocks that agree (or that explain their own gap) is corroboration. It protects an honest cleaner who worked an area with no signal, and it makes a genuinely backdated photo much harder to pass off as real.

Location, weighted honestly

Each capture also carries a GPS reading, and the report doesn't just print a pin — it prints how much to trust it. Ordinary outdoor GPS is accurate to somewhere between 5 and 30 metres. When a reading comes back far looser than that — usually a sign of cell-tower triangulation instead of a real satellite fix, or a heavily shielded building interior — the report marks it directly on the caption line: "low-GPS (±120m)," for example.

Most of the time that marker never appears, because most captures are precise. But when it does, it's there for whoever's reading the report to weigh — a dispute reviewer, a property manager, eventually a CCMA commissioner — rather than the location being asserted as fact when it's really an estimate.

Who did what, and who checked it

Every job in the report carries the cleaner's name and the supervisor's name, plus the scheduled time against the actual hours logged. If a job ran short of the company's configured minimum time, that's flagged on the report too, with whatever note the cleaner or supervisor attached — not hidden, not smoothed over.

Where a site inspection happened, it shows up in its own table: date, job, inspector, result, and score, colour-coded so a pass reads differently from "needs attention" at a glance. Across a full property-report period, the report also totals it up — jobs completed, jobs flagged, photos captured, inspections logged — so the property manager isn't wading through a hundred pages to find the shape of three months of service.

A document that can't quietly disappear

Every page carries a footer: who generated the report, for which company, and exactly when — in UTC, to the second. That's not decoration. If a PDF like this ends up somewhere it shouldn't, the footer traces it back to the person who pulled it, which is a deterrent by itself.

And if a report gets generated before all the proof for that period is actually in — a job still awaited its after-photos, say — the whole document carries a diagonal "DRAFT — INCOMPLETE PROOF" watermark, with the reason printed alongside it. A cleaning company can still hand over a report on short notice, but it can't accidentally present an incomplete record as a finished one. The document tells on itself before anyone else has to.

The principle

None of this is complicated technology. It's a photo with a real capture location, two clocks instead of one, an inspection score instead of a shrug, and a footer that keeps the document honest about its own completeness. What it isn't is memory, goodwill, or "we're pretty sure we did the bathrooms twice a day." Three years of good work wasn't the problem in the Hyde Park story — the absence of a record was.

If you're running a cleaning company on WhatsApp photos and a supervisor's word, this is the gap. Get in touch about the founding-client pilot and we'll walk you through what a proof report looks like for your own sites.

More from the Lymra blog