TB upload parses no rows
After Upload Trial Balance the preview shows zero rows or only headers; the engagement may stay at DRAFT if the handler explicitly failed.
What this means
The smart-column detector could not find a valid column structure in the file.
Causes
- Headers don't match the recognised shapes. Recognised shapes:
account_code,description,debit,creditaccount_code,description,current_year,prior_year- Case-insensitive, underscore/space-agnostic. So
Account Code,account code,Account_Codeall work;GL CodeandReferencedo not.
- Multi-row header. Some exports stack two header rows. The detector reads only the first. Re-export with a single header row, or hand-edit to merge.
- Merged cells in XLSX top-left. Unmerge before upload.
- File is not a TB at all. A journal export, a GL listing, or a draft P&L instead. Verify with the client.
- Encoding issue on CSV (BOM, non-UTF-8). Re-save as UTF-8 CSV.
Diagnose
bash
# Inspect the first 5 lines of the CSV
head -5 /path/to/tb.csvFor XLSX, open the file and check:
- Row 1 contains the headers
- Headers spell out something the detector will recognise
- No merged cells in the data area
- The "Sheet1" (or first sheet) is the TB; the parser reads the first sheet
Fix
- Reformat to a recognised shape:
account_code,description,debit,credit 1010,Cash at Bank,15000,0 2010,Trade Creditors,0,4500 ... - Re-upload.
When the column shape is unusual
If the client's accounting platform exports an irreducible shape, build a one-time intermediate transformation (Excel formulas, a small script) and document the source format on the engagement notes.