RJ DowellPERSONAL PORTFOLIO
← All projects

PROFESSIONAL WORK · Finance & review

Financial reconciliation

A dashboard that parses inconsistent aging and collections exports and reconciles them into a clear financial view with history.

BuiltProductionDocumented September 4, 2026

My contribution

Designed and built a reporting dashboard, including source parsers, historical snapshots, and reconciliation checks.

Tools
Python · Streamlit · SQLite · Spreadsheet parsing

How it works

  1. Upload the aging and collections exports.
  2. Identify their real formats and normalize detail rows.
  3. Reconcile totals, preserve a reporting snapshot, and render the financial view.

Decisions that mattered

File extensions are not a schema

The import path handles standard spreadsheets and XML SpreadsheetML delivered with an .xls extension.

Totals must not become transactions

A footer totals row was being counted as another collection. Requiring transaction identifiers and preferring detail sheets fixed footer and pivot duplication.

History is part of the interface

Durable snapshots let users compare reporting periods rather than replace yesterday’s numbers with an untraceable current view.

Optional integrations stay optional

A downstream chat snapshot can fail without preventing a successful financial save.

Results

The September 2026 reconciliation record documents penny-exact comparisons against source statements, regression checks across three reporting weeks, and a 60-test suite.

Scope & limits

Uploads are manual and deliberate. The tool reports and reconciles; it doesn’t initiate payments or edit accounting records.

Related projects

Next projectPartner quote calculator