The objection that ends the sales call
The lettings director likes your product. Then they ask what happens to fifteen years of history in the system they run on a server in the back office. Tenancies, landlord statements, deposit records, maintenance jobs, scanned documents, and notes that nobody would ever re-enter. The old vendor's export produces a set of CSV files that do not quite join up, and nobody at the agency knows what half the columns mean.
You say you can migrate it. They have heard that before from another supplier, whose migration left landlord balances wrong for months. The deal goes quiet.
What makes a legacy lettings system hard to leave
Legacy desktop systems were often customised over years, and the data inside reflects that. The difficulty is less about volume and more about meaning.
- Exports leave out things the agency relies on, such as attached documents, diary history or the link between a payment and the invoice it paid.
- Codes and statuses were redefined by the agency over time, so the same value means different things in different years.
- Money data needs to match exactly: landlord balances, tenant arrears and held deposits have to reconcile, not be roughly right.
- The agency cannot stop trading during the move, so data keeps changing while you migrate it.
- Nobody at the agency owns the old system's knowledge any more, and the person who set it up left.
The cost of a switchover nobody trusts
Agencies with the most history are often the most valuable to win, and they are the ones who say no over migration risk. When a migration does go ahead without proper checks, errors in balances or tenancy dates surface in front of landlords, and your product gets the blame for data it inherited. Your team then spends weeks on corrections that should have been caught before go-live.
How we build a switchover agencies can sign off
What we build is a migration process you can repeat, not a one-off script.
- Extraction: from the vendor's export, or directly from the old database where the agency owns it and gives access, including documents and their links to records.
- A mapping document per source system, built once and improved with each agency, that records what each field and code means and where it lands in your product.
- Transformation with every rule logged, so any value in your product can be traced back to the row it came from.
- Reconciliation reports: record counts by type, and totals for money data such as landlord balances, tenant arrears and deposits held, compared between source and target.
- A review step where the agency's lettings or accounts lead checks a sample of properties end to end and signs off the totals.
- A delta run close to cutover, picking up changes made since the main migration, and a period where the old system stays readable.
| Check | Compared | Signed off by |
|---|---|---|
| Properties, tenancies, landlords | Counts in source and target | Your team |
| Landlord balances | Totals and per-landlord values | Agency accounts lead |
| Deposits held | Totals and per-tenancy values | Agency accounts lead |
| Documents | Files linked to the right record | Agency sample check |
| Open maintenance jobs | Status and contractor | Agency property manager |
Where the agency has client money rules or an accountant who must approve the balances, we produce the reports in the form they need. Decisions about those rules sit with the agency and its advisers.
What the director sees instead
In the sales process you show a sample reconciliation report from your test data, and explain the steps. During the migration, the agency's accounts lead receives a report with every total side by side and a list of differences, each with its cause. Two landlords with small differences turn out to be old manual adjustments, which are recorded and carried across with a note. The director signs off knowing what moved and what did not.
Signals that migration is losing you agencies
- Prospects on legacy desktop systems stall after asking about migration.
- Each migration is a fresh script written by whichever developer is free.
- You cannot show an agency a reconciliation of their money data before go-live.
- Balance or tenancy errors are found by landlords after go-live.
- There is no record of how each field in the old system was interpreted.