Financial Reports

CEF Core provides three standard financial reports -- Trial Balance, Profit & Loss, and Balance Sheet -- plus a visual report builder for custom queries. All reports can be exported to CSV, Excel, PDF, or JSON.

Standard Financial Reports

Access standard reports from Accounting → Reports in the sidebar. Each report pulls data directly from the GL journal entries and presents it in the standard accounting format.

Trial Balance

Lists every GL account with its debit or credit balance as of a specific date. The total debits must equal total credits. Use this report to verify the GL is in balance before closing a period.

  • Parameter: asOfDate (defaults to today)
  • Shows: Account code, account name, debit balance, credit balance
  • Footer: Total debits, total credits (must match)

Profit & Loss (Income Statement)

Shows revenue versus expenses for a date range, calculating net income. This is the primary report for understanding the fund's operating performance over a period.

  • Parameters: startDate, endDate
  • Revenue section: All 4000-series accounts (Interest Income, Fee Income, etc.)
  • Expense section: All 6000-series accounts (Interest Expense, Operating Expenses, etc.)
  • Bottom line: Net Income = Total Revenue - Total Expenses

Balance Sheet

Point-in-time snapshot showing all assets, liabilities, and equity. The fundamental accounting equation must hold: Assets = Liabilities + Equity.

  • Parameter: asOfDate (defaults to today)
  • Assets: 1000-series accounts (cash, loans receivable, accrued interest)
  • Liabilities: 2000-series accounts (notes payable, accrued interest payable)
  • Equity: 3000-series accounts (retained earnings + current-period net income)
  • Verification: Total Assets = Total Liabilities + Total Equity

Running a Standard Report

  1. Navigate to the report: In the sidebar, go to Accounting and select the report type: Trial Balance, Profit & Loss, or Balance Sheet.
  2. Set parameters: Choose the as-of date (for Trial Balance and Balance Sheet) or the date range (for Profit & Loss). The report defaults to the current date or current month.
  3. Click "Generate": The report loads in the browser with account hierarchies expanded. Parent accounts show subtotals; child accounts show individual balances.
  4. Review the totals: Verify the trial balance is in balance (debits = credits) or the balance sheet equation holds (assets = liabilities + equity). Any imbalance indicates a data issue.
  5. Export: Click the Export button and select your format: CSV, Excel, PDF, or JSON. The export includes all visible data with the same formatting and grouping.

Pro Tip: Run the trial balance at the end of each business day to catch posting errors early. If debits do not equal credits, investigate recent journal entries for unbalanced postings.

Custom Report Builder

For reports beyond the standard three, CEF Core provides a visual query builder through the Reports service. Create custom reports by selecting data sources, columns, filters, and groupings without writing SQL.

Report Templates

The report builder uses templates as starting points. CEF Core ships with built-in templates for common reports such as active loans, maturing notes, aged receivables, and interest income by borrower. You can also create your own templates.

  1. Browse templates: Navigate to Reports → Templates to see all available report templates. Each template lists its description, parameters, and output columns.
  2. Select a template: Click on a template to open it. Review the default parameters and modify as needed (date ranges, filters, grouping).
  3. Execute the report: Click Run to execute the report. Results appear in a sortable table with charts powered by Highcharts where applicable.
  4. Save as custom report: After customizing parameters, click Save As to create a named report that you can re-run later with the same settings.

Visual Query Builder

The visual query builder allows you to construct reports by selecting fields from available data sources (GL, Loans, Notes, Cash, CRM). Drag columns into the report layout, apply filters, set sort order, and add grouping with subtotals. The builder generates the underlying query and stores it as a template for re-use.

Note: The visual query builder requires ADMIN or TREASURY role. STAFF users can run existing templates but cannot create new ones.

Export Formats

All reports -- both standard and custom -- can be exported in four formats.

CSV

Comma-separated values for import into spreadsheets or data tools. Best for data analysis and bulk processing.

Excel (.xlsx)

Formatted Excel workbook with column headers, number formatting, and sheet tabs. Best for sharing with stakeholders who use Microsoft Office.

PDF

Print-ready PDF with the fund's header, report title, date, and page numbers. Generated using jsPDF. Best for board presentations and regulatory submissions.

JSON

Machine-readable JSON array of report rows. Best for API integrations and programmatic consumption by external systems.

To export, click the Export button on any report and select the desired format. The file downloads immediately to your browser.

Saved Reports and Sharing

Custom reports can be saved and shared with other users in your organization.

Saving a Report

After running a report with custom parameters, click Save to name it and store the configuration. Saved reports appear in your Reports → My Reports list and can be re-run at any time with the latest data.

Sharing Permissions

  • View: Other users can run the report and see the results but cannot modify the template or parameters.
  • Edit: Other users can modify the report parameters, columns, and filters. Changes are saved back to the shared template.

To share a saved report, open it from My Reports, click Share, select the users or roles to share with, and choose the permission level (View or Edit).

API Reference

Financial reports are available through two API services. All requests require JWT authentication.

GL Reports (Standard)

MethodEndpointDescription
GET/api/v1/gl/trial-balanceTrial balance (?asOfDate=YYYY-MM-DD)
GET/api/v1/gl/profit-lossProfit & Loss (?startDate, endDate)
GET/api/v1/gl/balance-sheetBalance sheet (?asOfDate=YYYY-MM-DD)
GET/api/v1/gl/income-statementAlias for profit-loss

Reports Service (Custom)

MethodEndpointDescription
GET/api/v1/reports/templatesList all report templates
POST/api/v1/reports/templates/:id/executeRun a template with parameters
POST/api/v1/reports/templates/:id/exportExport to CSV, Excel, PDF, or JSON

Next Steps

After reviewing your financial reports, learn how to execute the month-end close process to finalize the accounting period.

Month-End Close Guide