Cross-System Audit Reconciliation Engine
A Java engine that reconciles benchmark vs test audit records across multiple back-office systems, turning a full week of manual record-by-record testing into a minutes-long automated batch.
1 week → mins
full test cycle per batch
Multi-system
pluggable comparators
55
automated regression tests
Problem statement
A banking platform ran the same transactions through multiple back-office audit systems. Validating a change meant comparing audit records from a benchmark environment against a test environment, field by field, across several systems. A single transaction could span many legs and amendments, and the audit files were dense fixed-width records. Analysts did this by hand, which was slow, easy to get wrong, and couldn't cover a full regression pass.
The goal was an engine that discovers the right audit files, parses them, compares them by the rules each system needs, and reports the differences, in batch, without manual effort.
Architecture
A Java 21 engine compares benchmark versus test audit records for each case-and-system pair. It first discovers the right audit file, either by running a remote grep over SSH against the audit host or by scanning a local directory, using the same per-system file patterns either way. It then parses the matched records with a per-system fixed-width field mapping defined in JSON, and compares them using configurable rules for which fields to ignore and which to check for presence only.
Output comes at three levels: a per-comparison detail report, a per-system batch dashboard, and an overall summary across systems, all as self-contained HTML.
Batch automation and extensibility
Batch runs are driven from an Excel sheet. Each row expands into one plan per flagged system, and every plan runs in isolation so a single failure never stops the rest of the batch. Region and product dimensions, file patterns, and field mappings are all configuration, not code.
Adding a new audit system is deliberately mechanical: drop in its field mapping and comparison config, add its file pattern, implement one interface, and register it. The executors, renderers, and Excel reader need no changes.
Value delivered
A full testing cycle that used to take about a week of manual record diffing now completes in minutes as a single batch run. Failure isolation means no one has to babysit a run, and because the comparison rules and mappings are configuration, onboarding a new system or field layout is hours of config rather than a new tool.
Engineering quality
The engine ships with 55 automated tests across 11 classes, covering parsing, comparison, file discovery, Excel handling, plan expansion, and edge cases like malformed encodings and timestamp boundaries.
Remote and local fetch modes are interchangeable and share the same comparator and reports, so the same suite that runs against the live audit host also runs fully offline for development and repeatable QA.
Facing a similar problem?
Let's talk