@jwilleke/accounting-donations-addon
v0.3.0
Published
Donations for the ngdpbase accounting add-on: donations on receipts and donation statements
Readme
Accounting donations
Donations for the accounting add-on of ngdpbase: donations recorded as receipt lines with donation details, the receipt slip's quid pro quo disclosure, in-kind donations and pledges, and year-end donation statements.
- Slug:
accounting-donations, equal to thenameexported fromindex.ts. - Type:
additive. Depends onaccounting; the forms add-on carries the donation screen. - Requires: ngdpbase 5.31.0 or later.
- Data: donations of money are receipts in the accounting add-on, reached only through its managers
(
LedgerManager.registerLineDetails,registerSlipNotes,ReceiptManager.recordReceipt), never its database (operator, 2026-10-20). In-kind donations and pledges are in this add-on's own database, declared asngdpbase.addons.accounting-donations.database. - Permissions: its own
donation-record(in-kind donations, pledges) andstatement-issue(issue, reissue and email donation statements); and core'sidentity-read(the donor list) andidentity-manage(Add a Donor). The add-on's policy grants all four to the treasurer role. Donors are ngdpbase contacts (persons and organizations, ngdpbase #1930); a donation keeps the donor's@idand name.
How donations work, and what the IRS asks for: docs/guides/donations-guide.md, the source of truth. Why: D-036.
Turn it on
{
"ngdpbase.addons.accounting.enabled": true,
"ngdpbase.addons.accounting-donations.enabled": true,
"ngdpbase.addons.accounting-donations.categories": ["4200"]
}categories lists the chart codes a donation may use. The disclosure's wording is
ngdpbase.addons.accounting-donations.wording["quid-pro-quo"]; check it with your accountant.
Upgrading to 0.3.0
One term, donation (D-042): the
gift-record form is replaced by donation-record. After the upgrade, the forms admin
(/addons/forms) lists gift-record as "No longer provided by accounting-donations". An
administrator deletes it there. It never stored submissions (each one became a receipt in the
ledger), so nothing is lost. Stored line details and statement counts are renamed by migration;
issued statements are unchanged.
Develop
cd addons/accounting-donations
npm install
npm test # builds first; the tests use the accounting add-on's ledger and test host