NonprofitReports Excel Add-in

Complete User Guide — GAAP-Compliant Financial Reporting for Nonprofits

Contents

  1. Getting Started
  2. Importing Data
  3. Generating Reports
  4. Report Details
  5. NPR Formulas
  6. Transaction Drilldown
  7. Chart of Accounts
  8. Column Mapping & Presets
  9. Tips & Best Practices
  10. Troubleshooting

1. Getting Started

System Requirements

Opening the Add-in

  1. Double-click NonprofitReports-Portable.exe. No installation or administrator access is required.
  2. Select Open NonprofitReports in Excel. The launcher detects whether your Excel is 32-bit or 64-bit and loads the correct add-in automatically.
  3. Excel opens on the new Start Here worksheet, which remains the first workbook tab and shows the next required action.
  4. You will also see a new "NONPROFIT REPORTING" tab on the ribbon. Use its Start Here button whenever you want to return to the workflow guide.
Live workflow guide: Start Here tracks six stages: import data, confirm reconciliation, approve financial classifications, review SFE allocations, generate statements, and perform final checks/export. Its status is based on evidence in the current workbook and refreshes whenever you open the sheet.
Portable mode: Keep the EXE wherever it is convenient. The launcher does not install or permanently register the add-in. It securely caches the selected runtime file under your Windows user profile and loads it for the current Excel session.
Your seven-day trial: Downloading the EXE, opening the launcher, or opening Excel does not start the trial. The fixed 168-hour period begins only when you run your first licensed NonprofitReports feature and the server confirms it. Internet access is required for that first feature. After verification, the signed cache supports up to 24 hours offline between checks, but never extends the seven-day expiry. Deleting the cache, reinstalling, or changing the Windows clock does not create a new trial.
Security: A downloaded copy may produce a Windows security prompt the first time it runs. Confirm that the publisher is NonprofitReports before continuing. Do not run the file if the publisher or file hash is unexpected.

The Ribbon

The NONPROFIT REPORTING tab contains these groups:

GroupContainsPurpose
DataImport Data, Map Columns, Chart of AccountsImport and manage your transaction data
ReportsGenerate All, SOA, SFP, SFE, SCF, Detailed TB, Board SummaryGenerate GAAP-compliant financial statements and optional workpapers
FormulasInsert NPR.GL, Formula WizardBuild custom reports with live formulas
ToolsStart Here, Refresh Data, Period Selection, ExportWorkflow guidance, utilities, and settings

2. Importing Data

Step-by-Step Import

  1. Click Import Data on the ribbon.
  2. Step 1 — Select GL Export: Choose a CSV or Excel General Ledger Detail file. The wizard shows file size, row count when available, and column count.
  3. Step 2 — Confirm Export Format: The wizard uses the exported file headers to suggest a column-mapping preset. This is a file import only; it does not connect to the accounting system.
  4. Step 3 — Review Mapping: Review how your file's columns map to transaction fields and choose the source number format. Use decimal point for values such as 1,234.56 or decimal comma for 1.234,56. Auto-detect rejects ambiguous values instead of guessing. Date and Account Code are required.
  5. Click Import. A progress dialog shows real-time status with estimated time remaining.

Supported File Formats

FormatExpected Columns
Generic CSVTransaction ID, Date, Account Code, Account Name, Description, Debit, Credit, Amount, Fund, etc.
Blackbaud Financial EdgeJournal ID, Post Date, Account Number, Account Description, Debit Amount, Credit Amount...
QuickBooks Online/DesktopNum, Date, Account, Memo/Description, Debit, Credit, Amount...
Sage IntacctRECORDNO, WHENPOSTED, ACCOUNTNO, ACCOUNTTITLE, DEBITAMOUNT, CREDITAMOUNT...
XeroJournalNumber, JournalDate, AccountCode, AccountName, Debit, Credit...
AplosTransaction ID, Date, Account Number, Account Name, Fund, Tag, Debit, Credit...

What Gets Imported

Your transactions are written to a sheet called "Data Import" with 21 columns covering all financial data fields. The import uses high-performance batch writing — even 300,000+ rows complete in under 2 minutes.

Required reconciliation: After every import, review the Import Control sheet. Reports remain blocked until all source rows are accepted and total debits equal total credits within $0.01. Correct rejected rows in the source and re-import; do not omit them from a final report.
Tip: You can re-import at any time. The existing Data Import sheet will be cleared and refreshed with the new data.

Preparing Your Data

For best results, export a General Ledger Detail report from your accounting system:

3. Generating Reports

Generate All Reports at Once

Enter the report Start Date and End Date on the Start Here sheet, then click Generate All. The add-in first runs the required in-memory Trial Balance control. When it passes, the four core financial statements are generated. The detailed account-by-account Trial Balance worksheet is optional.

Before the first report, complete the Account Map review. NonprofitReports pre-fills suggested financial and natural categories from the account code and name. Review the yellow rows, correct exceptions, then choose Account Map > Approve Valid Suggestions. The Chart of Accounts contains financial-statement classifications only; it does not assign functional expense categories. Approval automatically creates an expense-only SFE Allocation Workpaper with actual amounts for the Start Here period when data is available.

Dynamic reporting period: After reports exist, changing either reporting date on Start Here reruns the required TB control and refreshes the generated statements and SFE workpaper. An existing detailed TB workpaper is also regenerated; otherwise it remains optional. If the selected period has no transactions, the last valid applied period remains authoritative. SFE allocation inputs are saved by period and restored when you return to those dates.

Generate Individual Reports

Click any individual report button to generate just that statement:

Tip: The period cell at the top of each standard report is linked to the validated Start Here dates. Change reporting dates only on Start Here so every statement and control remains synchronized.

4. Report Details

Statement of Activities (SOA)

Shows revenue, expenses, and change in net assets for a period — the nonprofit equivalent of an income statement.

Statement of Financial Position (SFP)

The nonprofit balance sheet showing what the organization owns and owes.

Statement of Functional Expenses (SFE)

Required by ASC 958 — shows expenses by both natural classification and functional allocation.

Statement of Cash Flows (SCF)

Shows how cash moved in and out of the organization.

Trial Balance

Generate All always performs the required opening, period, and closing debit/credit controls in memory before producing statements. Click Detailed TB only when you need the optional 8-column account workpaper for internal review, auditors, or export:

ColumnDescription
Account CodeAccount number from your chart of accounts
Account NameAccount description
Opening Dr / Opening CrBalance at start of period
Period Dr / Period CrActivity during the period
Closing Dr / Closing CrBalance at end of period

The detailed workpaper uses pre-aggregated account values for speed, retains ordinary subtotal and control formulas for auditability, and supports account-level drilldown. Each column pair (Dr/Cr) should balance. Debit-normal accounts (Assets, Expenses) show in the Dr column; Credit-normal accounts (Liabilities, Net Assets, Revenue) show in the Cr column.

Board Summary

A concise executive summary designed for board meetings — key financial highlights on a single page.

5. NPR Formulas

NPR formulas are live Excel functions that query your imported data. They recalculate automatically when you change parameters or refresh data. Use them to build any custom report.

NPR.GL — General Ledger Query

The primary formula. Returns account balances, debits, credits, or movements for any period.

=NPR.GL(accounts, type, [period], [grant], [fund], [class])
ParameterRequiredDescriptionExamples
accountsYesAccount codes to query"4000", "5000-5399", "5100,5200,5300"
typeYesWhat to return"bal", "dr", "cr", "mov", "open"
periodNoTime period filter"FY2025", "2025-01", "2025-Q1", "YTD"
grantNoGrant code filter"GRANT-001"
fundNoFund code filter"UNRE", "TEMP"
classNoClass/program filter"PROG", "MGMT"

Type Parameter Values

TypeReturnsUse For
balClosing balance (all activity through end of period)Balance sheet accounts, net asset balances
openOpening balance (all activity before period starts)Beginning balances, prior period comparisons
movNet movement during the periodRevenue/expense activity, changes
drTotal debits in the periodGross debits analysis
crTotal credits in the periodGross credits analysis

Period Formats

FormatExampleMeaning
Fiscal Year"FY2025"Full fiscal year (Jul 2024 – Jun 2025 or Jan – Dec based on your data)
Calendar Year"2025"January 1 – December 31, 2025
Month"2025-03"March 1 – 31, 2025
Quarter"2025-Q1"January 1 – March 31, 2025
Date Range"2025-01-01:2025-12-31"Custom date range
Year-to-Date"YTD"Jan 1 of current year through today
Omitted(leave blank)All time — inception to date

Account Specification Formats

FormatExampleMeaning
Single account"4000"Just account 4000
Range"5000-5999"All accounts from 5000 to 5999
List"5100,5200,5300"Accounts 5100, 5200, and 5300
Mixed"4000-4999,5100"Range 4000-4999 plus account 5100

Formula Examples

=NPR.GL("1100", "bal", "FY2025")
  Cash balance at end of FY2025

=NPR.GL("4000-4999", "mov", "2025-03")
  Total revenue for March 2025

=NPR.GL("5000-5999", "mov", "2025-Q1")
  Total expenses for Q1 2025

=NPR.GL("5100", "mov", "FY2025", , "UNRE")
  Salary expense for FY2025, Unrestricted fund only

=NPR.GL("6100,6110,6120", "bal")
  Combined balance of Rent + Utilities (all time)

=ABS(NPR.GL("4000-4999", "mov", "FY2025"))
  Absolute value of revenue (removes sign)

NPR.Lookup — Utility Lookups

=NPR.Lookup(key, type)

Returns metadata about your data. type can be "account_name", "grant_name", "source", or "refresh_time".

Using the Formula Wizard

Click Formula Wizard on the ribbon to build NPR.GL formulas interactively:

  1. Select the accounts from a dropdown of your chart of accounts
  2. Choose the return type (balance, movement, debits, credits)
  3. Pick the period
  4. Add optional filters (fund, class)
  5. The wizard inserts the formula into the active cell

6. Transaction Drilldown

Double-click any blue underlined number on a report to see the individual transactions behind it.

How Drilldown Works

  1. A new worksheet tab is created (e.g., "Drilldown - Revenue")
  2. All matching transactions are listed with full details: Date, Account, Description, Debit, Credit, Fund, Class, Vendor, etc.
  3. The sheet includes a summary header showing what was drilled into
Tip: Drilldown works on both pre-generated reports and cells containing NPR.GL formulas. It traces the formula parameters to find the right transactions.

Drilldown on Formula Cells

If you double-click a cell that contains an NPR.GL formula (or a cell that references one, like =ROUND(H8*0.35, 2)), the drilldown traces the formula back to find the underlying NPR.GL call and shows those transactions.

7. Chart of Accounts

Click Chart of Accounts (in the Data group) to view or export the chart of accounts extracted from your imported transactions.

For financial-statement classification, use Account Map on the Nonprofit Reporting ribbon. Choose Review Suggested Classifications, correct any exceptions on the prefilled sheet, and then choose Approve Valid Suggestions. You do not need to approve every valid row individually.

If a workbook contains older yellow suggestions after an add-in update, choose Refresh Unapproved Suggestions. This reapplies the latest rules without changing any rows already marked Approved.

8. Column Mapping & Presets

Click Map Columns (in the Data group) to manage how your file's columns map to transaction fields.

The Mapping Dialog

The mapping dialog shows every transaction field and lets you select which column from your file corresponds to each one. Fields are organized into sections:

Custom Fields

Click + Add Custom Field in the mapping dialog to map additional columns from your file that don't fit the standard fields. Custom fields are stored with your transactions and available for filtering.

Saving Presets

If you regularly import from the same system, your mapping is remembered. The next time you import the same file format, the wizard will pre-select the correct columns.

9. Tips & Best Practices

Working with Reports

Building Custom Reports

Performance

Data Quality

10. Troubleshooting

Common Issues

ProblemSolution
Add-in tab doesn't appear Close Excel, then double-click the XLL file again. If prompted about security, click "Enable."
Formulas show #N/A Data hasn't been imported yet, or the Data Import sheet was deleted. Re-import your data.
Wrong totals on reports Check that your date range covers the full period. Press F9 to force recalculate. Verify account code mappings.
Import is slow Normal for 300K+ rows (1-2 minutes). The progress bar shows estimated time. Do not interact with Excel during import.
Trial Balance doesn't balance Your source data may have unbalanced journal entries. Check the Debit/Credit totals on the Data Import sheet.
"32-bit" error on load Close Excel and reopen the product through NonprofitReports-Portable.exe. The launcher will select the matching add-in automatically.
Security warning blocks the add-in Verify that the EXE came from NonprofitReports and that its digital signature is valid. If the publisher is missing or unexpected, do not run it.
Formulas show @ prefix This is normal in Excel 365 with dynamic arrays. The formulas work correctly — the @ is cosmetic.

Checking the File (Windows Security)

Before opening a downloaded copy:

  1. Right-click NonprofitReports-Portable.exe
  2. Click Properties
  3. Open the Digital Signatures tab and confirm the NonprofitReports signature is valid
  4. If a SHA-256 value was provided with your purchase, compare it with the downloaded file
  5. Do not run the file if either check fails