Reports
Standard catalog
The Reports landing page shows the standard WMS operational catalog. Each card opens a real report route and uses the same filters for the on-screen table and CSV export.
Inventory Control
- Stock on Hand
- Stock Movement Ledger
- Inventory Aging & Expiry
- Inventory Valuation
- Low Stock / Reorder Exceptions
- Lot / Serial Traceability
Inbound & Quality
- Receiving Performance
- QC Inspections
- QC & Receiving Discrepancies
Outbound & Accuracy
- Order Fulfilment / Shipping
- Cycle Count Variance
- Disposals / Damages
Compliance
- Audit Trail
Filters and validation
Standard reports are tenant-scoped. Location, zone, campus, category, item, contact, supplier, customer, and document filters only use records from your organization.
- Foreign or invalid scoped IDs fail closed and do not return unfiltered rows.
- Date-filtered reports validate ISO dates and return a clear validation error when the range is invalid.
- Malformed nested parameter shapes are rejected instead of widening the query.
- Search uses literal substring matching, so `%` and `_` are treated as characters rather than SQL wildcards.
CSV export
Standard reports support CSV export from the page header. Exported rows use the same filters as the HTML view.
- Cells that begin with spreadsheet formula characters are encoded safely.
- Exports are limited to 10,000 rows per request.
- If the result exceeds the limit, the export is rejected with a clear error so you can narrow the filters.
Movement ledger
Stock Movement Ledger combines physical `ItemMovement` rows and stock-level `ItemConsumptionLog` rows in one source-labelled timeline.
- `movement` rows represent physical or location movement facts.
- `adjustment` rows represent stock-level in/out adjustments or consumption facts.
- The ledger does not infer deduplication from references or timestamps; each recorded source row is shown.
- Summary cards distinguish physical movement facts from stock adjustment totals.