Skip to main content

Statement of Activities

Statement of Activities

Route / tool: /reports/statement-of-activities

Statement of Activities is the nonprofit-facing audit presentation. It does not replace the existing Income Statement.

Contract

  • Data source: get_statement_of_activities(p_org_id, p_start_date, p_end_date, p_fund_ids, p_exclude_close_entries).
  • Scope: posted revenue and expense ledger rows.
  • Excludes: voided rows, void-reversal rows, and fiscal-year close rows by default.
  • Columns: without donor restrictions, with donor restrictions, total.
  • Restriction source: V1 maps accounts.restriction_class.
  • NULL and unrestricted -> without donor restrictions.
  • temporarily_restricted and permanently_restricted -> with donor restrictions.
  • Includes a net assets released from restriction line from posted restricted_net_asset_releases.

UI

  • Date range.
  • Fund filter.
  • Exclude close entries toggle.
  • CSV, XLSX, and PDF exports.
  • Desktop-first dense table with nonprofit/audit labeling.
  • Mobile uses DesktopOnlyWarning and hides the full table UI with the required hidden md:block gate.
  • Client-side pagination uses shared PaginationControls with 100 / 250 / 500 row-size options.

Implementation Files

  • src/features/reports/components/StatementOfActivitiesReport.tsx
  • src/lib/db/fund-accounting-readiness-reports.ts
  • supabase/migrations/20261201030000_fund_accounting_reporting_readiness.sql

Acceptance Checks

  • Total revenue and expenses reconcile to Income Statement totals when grouped to the same scope and period.
  • Restriction columns follow the V1 accounts.restriction_class mapping.
  • Close entries are excluded by default.

Synced from IFMmvp-Frontend documentation: pages/reports/22-STATEMENT-OF-ACTIVITIES.md

Ready to Get Started?

See how Alignmint can simplify your nonprofit's operations. Schedule a free demo with our team and we'll walk you through everything.

Questions? Email us at steven@getalignmint.org

Ready to get started?Start Plus Trial