Lesson 03 · 5 min
When Reports Disagree
Pairing, matching, breaks, and rewrites: the running cost of everyone interpreting alone.
Both sides file
EMIR made a design choice the US did not: both counterparties report every trade. The repository then pairs the two reports by UTI and matches them field by field. The intent was a built-in cross-check. The effect was that every private interpretation difference became a visible, countable failure.
Run the October unwind through it as a thought experiment, with both sides in scope. Goldman books the cut to 6,000,000 the same afternoon and reports it. The fund's side goes through a reporting agent that processes overnight. For a day the repository holds two reports of the same trade, one saying 6,000,000 and one saying 10,000,000. Nobody is wrong in any interesting sense. The data still disagree, and someone now has to spend time proving that the disagreement is boring.
Pairing and matching fail differently
Pairing joins the two reports on the UTI; if either side mangles the identifier, there is nothing to compare at all. Matching compares field values within tolerances. Both failed, constantly, for years.
Most breaks are honest
Two faithful systems applying two defensible readings, or two clocks a few hours apart. The break is real, the error usually is not, and telling those apart is manual work.
Reconciliation became an industry
Break queues, chase emails, monthly cycles, vendor tools, ops teams whose whole job is explaining differences that should never have existed. Work that moves no risk and helps no client.
Then the rulebooks rewrote themselves
The CFTC Rewrite (December 2022), EU EMIR Refit (April 2024), UK Refit (September 2024). Better, harmonized rules, and every firm re-ran the entire translation chain for each one, on deadline.
What the regulators saw
For years, the EU supervisor's own data-quality reports said a large share of dual-reported trades failed to pair or match. Misreporting drew fines in the tens of millions per case at major dealers. And the aggregated data the G20 wanted, the view of who is exposed to whom, arrived blurred: when two reports of one trade disagree, the aggregate contains at least one wrong number, and nobody knows which.
{ "uti": "W22LROWP2IHZNBB6K528RT4K7Q20PXM3", "paired": true, "matched": false, "differences": [ { "field": "notionalAmount", "reportA": 6000000, "reportB": 10000000 } ], "status": "break, assigned for investigation"}
action: Correct, appended and never overwriting, which is the one mercy in the process.The rewrites
The second-generation rules were a real improvement: globally harmonized critical data elements, the UTI and UPI as standards, ISO 20022 as the wire format, field counts up (the EU went to 203) but defined far more precisely. The catch is operational. Each rewrite meant every firm re-read hundreds of pages, re-derived requirements, re-built mappings, and re-tested against every repository, in parallel, again. The interpretation chain never stops being re-run; the rewrites just made the runs bigger.
01A repository pairs two reports but fails to match them. What happened?