I am not new to GnuCash, but have just been made accountant for a new non-profit. The law states that we have to mail tax-beneficial donation-confirmations after each year to all donors.

So I need to track for each donor all their donations during each year.

I cannot make separate accounts for each donor, since we are using the account structures to distinguish our different help-projects that the NGO operates. So having seven projects and twenty donors would force me to drown in accounts. Even if each donor would only give to one or two projects, the accounts-hierarchy would become very crowded.

I guess that I could best use the business features and assign a customer-number to each donor. (We sell them "what the NGO does (good works) and they "pay" in cash.)

I find about each new donation from our bank statements.

This is my main question: I have found how to enter a "payment" for a customer, but only if I first make an "invoice". I have learnt how to make dummy-invoices for each donation (after I find it, and I date it on the same day). But it feels clumsy. Is there a better, more elegant way to enter donations into GnuCash (without dummy invoices) and assign each to the inbuilt customer-feature please?

Update: The first answer by @Greg Schmidt has inspired me to do more research:

I like keeping the descriptions of each transaction well standardized to have efficiency and automagic when entering. So I like using the "remarks" (in German GUI "Bemerkungen") or second lines for individual notes.

I just found that there is a powerful search feature in GnuCash. I could use a donor-number system with unique tags like d#0001 in the remarks. Rather than trying to keep a second database all year, I would only have to run three searches at the end of each year for the only three accounts where I enter donations (in three different currencies). Some donors only give once per year and nobody will (probably) give very often, so a very simple spread-sheet and then some mail-merge for the confirmation letters would do.

All I would need during the year is a shortcut to my donors spread-sheet to open on my second monitor, so that I can quickly look up donor numbers or assign a new number to any new donor.

What do you think? Is this too simple? Anything I overlooked? Any known issues with the search feature?

If anybody is already using remarks to create some extra "features", I would gladly read and learn details and experiences. And give points of appreciation of course.

  • 1
    I had not even noticed initially that this exchange is about personal finance. Search engine took me here about my GnuCash question and I found plenty know how about GnuCash. Also I trust StackExchange. My "personal" aspect is that our new NGO is currently in an incubator-state and we (handful of founding members) are learning the ropes. Depending on how things grow, we might indeed move to more specific tools for non-profits later. Personally I have used GnuCash for years and like it, that is why we are starting with this tool. Aug 10, 2022 at 17:18
  • 1
    Searchable hashtags should work - but I'm a bit nervous about the concept of NOT STORING the name of the donor with your only record of the amount donated. If all you have is a codename that relies on having a separate codebook to determine who donated what sum, this may not stand up to audit. And as a recipient of tax-deductible donations I'm sure that you would be subject to government audits. It's probably worth consulting your accountants or internal auditors to see if they are happy with the robustness of your records. (This comment applies equally to my separate answer.) Aug 11, 2022 at 15:06
  • 1
    @GregSchmidt you are right of course, I have summarized too much: I tend to enter names also, in the remarks line. But for generating anual confirmation letters, I would not trust my spelling of names and there could be doubles in names, but not in purpose-codes. Also we are obliged by law to keep all bank statements for 10 years, and those bank statements are the "original" source of data, of what donations are incoming and from whom. So if an auditor wants to dig into any transactions, source is available too. Thanks for all your input, really appreciated. Aug 12, 2022 at 12:01
  • I'd start with "don't use GnuCash for this"! Use actual bank statements + actual donor records.
    – warren
    Aug 25, 2022 at 16:23
  • @warren Not doing any accounting and just collecting bank statements (paper or PDF) would be insufficient (=illeagal) in many countries, including ours. We have to do accounting anyway, and we have to account for the actual money-movements of the donations. So trying to include some sort of tagging for "who gave how much" is another way of managing "donor records". Aug 26, 2022 at 12:34

2 Answers 2


One option is to use a separate database to record the individual amounts contributed by specific donors, and use GnuCash to record the amalgamated effect of the donations. So if 3 donors donated $10,000 each next Monday, you might record one entry of $30,000 income in GnuCash.

In your separate database, you record the individual $10,000 payments, and who made them, and when. Your separate database may, or may not, be an Excel spreadsheet.

Of course, there are a number of drawbacks to this approach, starting with the fact that you're now running two distinct systems to record all the details of a group of financial transactions, and you will need to keep reconciling the two systems to keep them in step. And Excel spreadsheets, or LibreOffice databases, and similar systems are quite easy to accidentally delete, or be corrupted by an inexperienced "helper".

But it would avoid the complication of trying to use GnuCash to record something that it's not ideally suited for in your instance.

  • 1
    Thank you for giving an honest answer in the sense that you also see GnuCash as not ideally suited. Often experts in certain systems become very attached and defensive. Of course running two systems in parallel will cause extra challenges and I will carefully consider your answer. It would need to be open like GnuCash, so I would probably try LibreOffice. Or even a very simple text file, where I track which GnuCash transactions came from what donor. Then I can maybe find a "location" inside GnuCash where I can "store" such text file, to have at least all data in one file for backups... Aug 10, 2022 at 15:16
  • 1
    @MartinZaske Consider using a tool like CiviCRM which is geared towards the needs of non-profits. There is a Stack Exchange site for CiviCRM: civicrm.stackexchange.com
    – Flux
    Aug 10, 2022 at 16:07

Since you're asking the question in more than one format, I'll try to give you the heads up,

Making dummy invoices will double the work and mistakes, it's better to let the customers fill an online form that gets edited/printed anytime by you, for that you either use google tools or a project/client management system of your own called CRM's, you can find ones made by GNU or other free open source scripts that you most times install as web pages but not a software, then embed it to your website somehow, that's web development work.

Check this list of free online software that you can install, most of them are licensed by GNU license which is the father of GnuCash, you can see their demos too. Link : https://www.softaculous.com/apps/projectman

In terms of filtering the donors and amount and times of donation you can use word tags, colors and in an extra table without having to create a different database. Making a new DB will take lots of time to manage when you don't have to. This is difficult in concept not in application. Some issues are fixed with thought not with tools.

What do you want to obtain here ? accuracy or time ?

  • 1
    I mentioned the law and taxes in my second question. So we need accuracy. Saving time will be a bonus and an efficient system will also avoid human mistakes, so more accuracy. I do not understand what you mean by "in an extra table". Are you talking about the search results which GC automatically brings up in an extra tab? My question is titled "in GnuGash" so I am not asking about (more) tools, but openly ask for ideas on how to do it best. Aug 10, 2022 at 17:13
  • An extra table in your log sheets, Well it just seems that your GnuCash needs to be embedded with more tools, there is a clear line between accounting and client management.
    – user118577
    Aug 10, 2022 at 17:15

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .