Skip to content

wes/actual-reports

Actual Reports

Professional accounting reports for Actual Budget. Generate print-ready financial reports from your Actual Budget data with a clean web interface.

npm version License: MIT

Features

  • Read-Only Access - Your budget data is never modified
  • Professional Reports - Standard accounting report formats
  • Print Ready - Optimized layouts for printing
  • CSV Export - Export data for use in spreadsheets
  • Multi-Period Views - Compare data across months, quarters, or years
  • Modern Interface - Clean, responsive web UI

Available Reports

Report Description
Profit & Loss Income and expenses with optional grouping by month/quarter/year
Balance Sheet Assets, liabilities, and equity as of a specific date
Trial Balance All accounts with debit/credit balances, CSV export
General Ledger Detailed transaction listing by account
Chart of Accounts Complete list of all categories and accounts

Quick Start

Install with npm/bun

# Using bun (recommended)
bun add -g actual-reports

# Using npm
npm install -g actual-reports

Run

actual-reports

Open http://localhost:3000 in your browser.

From Source

# Clone the repository
git clone https://github.com/actualbudget/actual-reports.git
cd actual-reports

# Install dependencies
bun install

# Start the server
bun run start

Requirements

  • Bun v1.0+ (or Node.js 18+)
  • Actual Budget with local database files (typically in ~/Documents/Actual/)

Usage

  1. Select a budget from the dropdown menu
  2. Choose a report type (P&L, Balance Sheet, Trial Balance, etc.)
  3. Select the time period (Year, Quarter, Month, or Custom range)
  4. View, print, or export your report

Printing

Click the print button or use Cmd/Ctrl + P. Reports are optimized for landscape printing.

CSV Export

Trial Balance reports include a CSV download button for spreadsheet import.

Configuration

Port

Set a custom port using the PORT environment variable:

PORT=8080 actual-reports

Data Directory

By default, Actual Reports reads budget databases from ~/Documents/Actual/. This is where Actual Budget stores local data.

API Reference

Endpoints

Method Endpoint Description
GET /api/budgets List all available budgets
GET /api/budgets/:id/years Get available years for a budget
GET /api/budgets/:id/reports/pnl Profit & Loss report
GET /api/budgets/:id/reports/balance-sheet Balance Sheet report
GET /api/budgets/:id/reports/trial-balance Trial Balance report
GET /api/budgets/:id/reports/general-ledger General Ledger report
GET /api/budgets/:id/reports/chart-of-accounts Chart of Accounts

Common Query Parameters

Parameter Type Description
period string year, quarter, month, or custom
year number Year for the report
month number Month (0-11) when period is month
quarter number Quarter (0-3) when period is quarter
startDate string Start date (ISO) when period is custom
endDate string End date (ISO) when period is custom
includeOffBudget boolean Include off-budget accounts

P&L Specific Parameters

Parameter Type Description
grouping string monthly, quarterly, or annual for comparative view

Tech Stack

  • Runtime: Bun
  • Backend: Hono
  • Frontend: React 19, Tailwind CSS
  • Database: SQLite (read-only via bun:sqlite)

Contributing

We welcome contributions! Please see CONTRIBUTING.md for guidelines.

Development

# Start with hot reload
bun run dev

# Build client only
bun run build:client

Security

This application provides read-only access to your Actual Budget data. No modifications are ever made to your budget files.

License

MIT

Related Projects

About

Actual reports for Actual Budget users, printable standard financial reports

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors