Solavel Solavel Docs

Reports

docs/solavel-finance/reports.md

Who can use this: Owner, Manager, Accountant. The Approver role-permission set does not include reports.view. URL / Route: /finance/reports (finance.reports.index). The reports area registers 120 routes total: 1 index, 41 viewer endpoints, 48 PDF exports, 12 CSV exports, 7 scheduled-report management routes, plus per-area sub-paths for budgets, projects, dimensions, and fixed-asset reports. Plan / feature gate: the reports group as a whole is gated by a multi-flag feature: middleware that requires at least one of the major reporting flags to be on (P&L, Balance Sheet, Trial Balance, Cash Flow, Tax Reports, Sales Analytics, Purchase Analytics, Asset Reports, Budgeting, Projects, Timesheets, Project Revenue, Project Profitability). Each individual report adds its own narrower feature: check on top. Permissions: reports.view is the broad gate. Specific reports may also require: reports.vat.view, dimensions.view, fixed_assets.reports.view, etc. Scheduled reports use a separate set under "Scheduled Reports" (gated by feature:tracker.schedule_reports).

Purpose

The reports area is the read-only output of every other section in Solabooks. There are 41 distinct report controllers grouped by area — financial statements, AR, AP, banking, tax, COGS / expense, fixed-asset, budget, dimension, and project. Most reports support both a screen view (HTML) and a PDF download; some also support CSV.

This page is the overview. Detailed pages for individual reports are listed under the Settings area as future deep-dives.

How to read the table below

  • Report — friendly name shown in the UI.
  • Route name — the named route under finance.reports.*.
  • Area — the bucket the report belongs to.
  • Feature gate — the tracker.* (or other) flag required for this report. If empty, the report is part of the broad reports group and uses the group-level gate.
  • PDF / CSVY if a corresponding finance.reports.pdf.* / finance.reports.csv.* route exists.

Financial statements

Report Route name Area Feature gate PDF CSV
Profit & Loss finance.reports.pnl Financial statements tracker.profit_loss_report Y
Balance Sheet finance.reports.balance-sheet Financial statements tracker.balance_sheet_report Y
Trial Balance finance.reports.trial-balance Financial statements tracker.trial_balance_report Y
Trial Balance — Comparative finance.reports.trial-balance-comparative Financial statements tracker.trial_balance_report Y
Cash Flow finance.reports.cashflow Financial statements tracker.cash_flow_report Y

General ledger / accountant

Report Route name Area Feature gate PDF CSV
General Ledger finance.reports.general-ledger Accountant Y
Journal Report finance.reports.journal-report Accountant Y
Account Balances finance.reports.account-balances Accountant Y

AR (sales)

Report Route name Area Feature gate PDF CSV
Sales Summary finance.reports.sales-summary AR tracker.sales_reports_by_customer_item Y
Sales by Customer finance.reports.sales-by-customer AR tracker.sales_reports_by_customer_item Y
Sales by Item finance.reports.sales-by-item AR tracker.sales_reports_by_customer_item Y
AR Aging Summary finance.reports.ar-aging-summary AR Y
Open Invoices finance.reports.open-invoices AR Y
Customer Balance Summary finance.reports.customer-balance-summary AR Y
Invoice Details finance.reports.invoice-details AR Y
Payments Received finance.reports.payments-received AR Y

AP (purchases)

Report Route name Area Feature gate PDF CSV
Purchases by Supplier finance.reports.purchases-by-supplier AP tracker.purchase_reports_by_supplier_item Y
Purchases by Item finance.reports.purchases-by-item AP tracker.purchase_reports_by_supplier_item Y
Purchases by Category finance.reports.purchases-by-category AP tracker.purchase_reports_by_supplier_item Y
AP Aging Summary finance.reports.ap-aging-summary AP Y
Open Bills finance.reports.open-bills AP Y
Supplier Balance Summary (route name is vendor-balance-summary for legacy reasons) finance.reports.vendor-balance-summary AP Y
Bill Details finance.reports.bill-details AP Y
Payments Made finance.reports.payments-made AP Y

Banking

Report Route name Area Feature gate PDF CSV
Bank Summary finance.reports.bank-summary Banking Y
Bank Detail finance.reports.bank-detail Banking Y
Cash Summary finance.reports.cash-summary Banking Y
Cash Detail finance.reports.cash-detail Banking Y

Tax

Report Route name Area Feature gate PDF CSV
Tax Report finance.reports.taxes Tax tracker.tax_reports Y
VAT Detail by Rate finance.reports.vat-detail-by-rate Tax vat_enabled (via permission map) Y

COGS and expense

Report Route name Area Feature gate PDF CSV
COGS Summary finance.reports.cogs-summary COGS Y
COGS Detail finance.reports.cogs-detail COGS Y
Expenses by Category finance.reports.expenses-by-category Expense tracker.purchase_reports_by_supplier_item Y

Budget

Group gate: feature:tracker.budgeting. Budget reports are CSV-exportable as well as PDF.

Report Route name Area Feature gate PDF CSV
Budget — Summary finance.reports.budgets.summary Budget tracker.budgeting Y Y
Budget vs Actuals finance.reports.budgets.budget-vs-actuals Budget tracker.budgeting Y Y
Variance by Period finance.reports.budgets.variance-by-period Budget tracker.budgeting Y Y
Variance by Account finance.reports.budgets.variance-by-account Budget tracker.budgeting Y Y

Dimensions (reporting tags)

Group gate: feature:tracker.reporting_tags_dimensions. Permission: dimensions.view.

Report Route name Area Feature gate PDF CSV
Dimensions — P&L finance.reports.dimensions.pnl Dimension tracker.reporting_tags_dimensions Y
Dimensions — Expenses finance.reports.dimensions.expenses Dimension tracker.reporting_tags_dimensions Y
Dimensions — Revenue finance.reports.dimensions.revenue Dimension tracker.reporting_tags_dimensions Y

Project

Group gate: a wide feature:tracker.manage_projects,tracker.timesheets,tracker.project_revenue,tracker.project_profitability,tracker.budgeting. CSV exports exist for every entry.

⚠️ Risk: feature key tracker.manage_projects is declared in finance_features.php but the project module also references projects.core, projects.members, projects.tasks, projects.time_tracking, projects.time_approval, projects.ai_assistant — feature keys used by middleware but not declared in finance_features.php — may always block.

Report Route name Area Feature gate PDF CSV
Project — Summary finance.reports.projects.project-summary Project (group gate) Y Y
Project — Details finance.reports.projects.project-details Project (group gate) Y Y
Project Budget Control finance.reports.projects.project-budget-control Project (group gate) Y Y
Project Cost Summary finance.reports.projects.project-cost-summary Project (group gate) Y Y
Project Performance Summary finance.reports.projects.project-performance-summary Project (group gate) Y Y
Project Revenue Summary finance.reports.projects.project-revenue-summary Project (group gate) Y Y
Timesheet Details finance.reports.projects.timesheet-details Project (group gate) Y Y
Timesheet Profitability finance.reports.projects.timesheet-profitability Project (group gate) Y Y

Fixed-asset

Group gate: feature:tracker.asset_reports. The four entries below all live under finance.reports.fixed-assets-* and are served by one controller (FixedAssetReportController).

Report Route name Area Feature gate PDF CSV
Fixed Asset Register finance.reports.fixed-assets-register Fixed Asset tracker.asset_reports Y
Depreciation Schedule finance.reports.fixed-assets-depreciation-schedule Fixed Asset tracker.asset_reports Y
Disposals finance.reports.fixed-assets-disposals Fixed Asset tracker.asset_reports Y
Transfers finance.reports.fixed-assets-transfers Fixed Asset tracker.asset_reports Y

How to use

View a report

  1. Open /finance/reports. The index lists every available report grouped by area.
  2. Click a report. Set the date range and any filters in the toolbar.
  3. The screen view shows totals and drill-down rows.

Export to PDF

Each viewer has an Export PDF button which calls the matching finance.reports.pdf.<slug> route. The PDF uses the same date range and filters.

Export to CSV

Where supported (Budget and Project reports), the Export CSV button calls finance.reports.csv.<slug>. CSV is line-level and is intended for downstream spreadsheet work.

Schedule a report

Routes: finance.reports.scheduled.index, create, store, edit, update, destroy, toggle. Feature gate: feature:tracker.schedule_reports (default: off on Free).

  1. From the report's toolbar, click Schedule.
  2. Set the cadence (Daily, Weekly, Monthly), the recipient list, and the format (PDF or CSV).
  3. Save. The schedule shows up at /finance/reports/scheduled.

Behaviour and rules

  • Reports show only posted documents by default. Drafts can be included via a filter on the toolbar where supported.
  • All reports respect the active organization — switching organizations swaps the data set.
  • Period range is the primary filter. Most reports default to "this month" or "this fiscal year".
  • Currency: reports are produced in the base currency. Multi-currency lines are converted at the document's exchange rate (not the current rate).
  • Permission filtering: a user without permission for a particular section (e.g. AR) will not see the AR-area reports in the list.

Permissions / restrictions

  • Reports group: reports.view plus the broad feature middleware described above.
  • VAT reports: reports.vat.view (also gated by vat_enabled).
  • Dimension reports: dimensions.view plus tracker.reporting_tags_dimensions.
  • Fixed-asset reports: fixed_assets.reports.view plus tracker.fixed_assets and tracker.asset_reports.
  • Scheduled reports: anyone in the reports group, plus tracker.schedule_reports.

Related

Source: docs/solavel-finance/reports.md ← All documentation