Multi-Entity Consolidation
across $46.4M in Assets
Five Alaska hospitality companies. Three source systems. A 33-tab manual workbook one bad paste away from unrecoverable. Rebuilt from source into an auditable, restatable monthly-close system a non-technical president can trust.
The problem
Month-end close had become a liability.
The President was running close on a 33-tab manual Excel workbook. Every month meant hand-copying five trial balances and reconciling intercompany by hand, hoping nothing broke along the way. Nobody fully understood the formula chains. There was no audit trail, and restatement meant hours of manual work.
The portfolio ran on three completely different source systems: Softrip for tour operations, Xero, and QuickBooks Online. Each had its own TB format and period basis, and there was no common chart of accounts across the group.
The approach
TB-first and append-only, with eliminations stored as auditable data rather than formulas.
Rather than fix the existing workbook, I rebuilt from source. A Python normalizer ingests all five TB formats, resolves to single-month basis, classifies every account against a 43-category common COA, and writes a flat Fact_Table. The Excel workbook reads it with pure SUMIFS, so there are no volatile functions or external links to break.
The workbook is append-only. Each month adds rows and updates one date cell. Every statement and chart re-dates automatically. Prior periods are never touched.
Eliminations as data. Intercompany entries are stored as Fact_Eliminations in journal-entry form, period-stamped. Adding a new period’s eliminations is an append, not a formula edit.
Technical depth
A few things that made this harder than it looks.
parent:child:leaf). The normalizer extracts the leaf code and suppresses parent aggregate rows when children are present. Otherwise every line item double-counts.fullCalcOnLoad and a strict row-ordering invariant.The deliverable
One Excel file. Opens on Mac. Forty tabs.
Outcome
The prior process was fragile and undocumented. It has been replaced with a system that is auditable, restatable across 40 months of history, and maintainable by a non-technical operator.
Monthly close is now a defined, repeatable process: drop five TB files, run the normalizer, verify the integrity guard, bump one cell. The entire workbook re-dates.