A Python engine that converts bank statement PDFs into a clean master ledger for accountants.
This tool extracts transactions from bank statements, merges multiple statements into a chronological ledger, detects duplicates, and exports the final ledger to Excel for accounting review or import into systems like Xero or MYOB.
Accountants frequently receive incomplete or messy financial records such as:
- overlapping bank statements
- multiple bank accounts
- missing periods
- duplicate transactions
This engine helps reconstruct a clean financial ledger from those documents.
- Extract transactions from bank statement PDFs
- Merge multiple statements into a single ledger
- Detect duplicate transactions
- Build chronological master ledger
- Export ledger to Excel
- Designed for reconstruction work (tax, audit, legal)
Clone the repository:
git clone https://github.com/PrinceLalala/ledger-reconstruction-engine.git
cd ledger-reconstruction-engine
Install dependencies:
pip install -r requirements.txt
Run the engine:
python run_engine.py
Example configuration:
statements = [ ("data/Sample_cba_statement.pdf", "CBA"), ("data/Sampple_NAB_statement.pdf", "NAB"), ]
The engine will:
- Extract transactions
- Build a master ledger
- Detect duplicate transactions
- Export results to Excel