Invoice List Cache

The Invoice List Cache (denormalised data) page lets you manage cached totals on invoices for fast list loading.

What It Does

To make the invoice list load quickly, computed totals and labels are copied onto each invoice row:

Cached FieldSource
Invoice totalSum of line items × quantities + taxes
Amount paidSum of all payments applied to the invoice
Amount owingInvoice total - amount paid
Biller nameBillers table
Customer nameCustomers table
Currency codeCurrencies table

This avoids recalculating from line items and payments every time the invoice list loads.

Verify

Compares the cached (denormalised) values against live calculations from line items and payments. Reports:

  • Number of invoices where cached values match calculated values
  • Number of invoices where cached values do not match

Use Verify periodically to detect data drift.

Rebuild

Recalculates all denormalised fields for every invoice in the domain.

Run rebuild after:

  • Data imports or manual database edits
  • SQL patch upgrades (especially patches 338-340)
  • When Verify reports mismatches
  • After restoring from a backup

Access

  1. Go to Settings → Options
  2. Click the Invoice List Cache tab

Common Issues

IssueSolution
Mismatched totals after bulk data changesRun Rebuild
Mismatched totals after SQL patchesRun Rebuild (especially after patches 338-340)
Slow rebuild on very large databasesRebuild processes all invoices in one pass; allow time for large datasets
Unsure if data is correctRun Verify first, then Rebuild if mismatches are found