Start with the disclosed cash definition
Our synthetic FY2025 example uses USD millions and cash and cash equivalents at both endpoints. Before copying numbers, check whether the report instead reconciles cash including restricted cash. An opening balance taken from a different definition cannot be repaired by more precise arithmetic.
Download the repository, open its directory, and run Python 3.11 or later. No package installation is needed.
git clone https://github.com/faigvain-ang/cashflow-bridge-check.git
cd cashflow-bridge-check
python cashflow_bridge.py examples/reconciled.json --jsonRead the signs, not just the labels
The sample supplies opening 100, operating 35, investing -20, financing -10, FX -2, and reported closing 103. These are decimal strings in JSON. An investing outflow is already negative; subtracting it a second time reverses its meaning. The tool adds all signed net flows.
100 + 35 + (-20) + (-10) + (-2) = 103
calculated_closing: 103
reported_closing: 103
difference_reported_minus_calculated: 0
matches: trueMake a failure visible
Copy the sample and change only closing to "104". Run the same command on that copy. The difference becomes 1, matches becomes false, and the process exits with code 1. Invalid input instead exits with code 2. This distinction lets a batch job separate a genuine mismatch from a malformed file.
FX is mandatory, not an optional afterthought. Enter "0" only when the source supports zero. A labeled additional adjustment is allowed, but a balancing plug would defeat the exercise.
Every number here is synthetic. A matching bridge is an arithmetic check, not proof of reporting quality or investment value. For further source-linked public-filing investigation, the related product is Eqvero company research.
← Field notes