Report rows are presentation, not data
Xero · QBO · NetSuiteHeader, section and summary rows are interleaved with data rows, nesting depth carries meaning, and identity is inconsistent. Parsing is possible; drilling from a parsed row back to the transactions behind it generally is not.
Do — Build interactive statements from ledger data. Use the report endpoint on a schedule, assert equality, and surface a variance when it appears.