GnuCash

GnuCash
Original author(s)Robin Clark - X-Accountant,[1][2]
Gnumatic (Linas Veptas)[3][4]
Developer(s)GnuCash development team
Initial release1998[5]
Stable release
5.9[6] Edit this on Wikidata / 29 September 2024
Repository
Written inC, Scheme, C++[7]
TypeAccounting and personal finance
LicenseGPL-2.0-only or GPL-3.0-only[8]
Websitewww.gnucash.org

GnuCash is an accounting program that implements a double-entry bookkeeping system. It was initially aimed at developing capabilities similar to Intuit, Inc.'s Quicken application,[9] but also has features for small business accounting.[10] Recent development has been focused on adapting to modern desktop support-library requirements.

GnuCash is part of the GNU Project,[11][12] and runs on Linux, GNU, OpenBSD, FreeBSD, Solaris, macOS, and other Unix-like platforms.[13] A Microsoft Windows (2000 or newer) port was made available starting with the 2.2.0 series.[14]

GnuCash includes scripting support via scheme, mostly used for creating custom reports.[15]

History

[edit]

Programming on GnuCash began in 1997, and its first stable release was in 1998. Small Business Accounting was added in 2001. A Mac installer became available in 2004. A Windows port was released in 2007.[5]

GnuCash for Android and GnuCash Mobile

[edit]

GnuCash for Android was initially developed as part of a Google Summer of Code Project.[16] This was an expense-tracking companion app for GnuCash, as opposed to a stand-alone accounting package, and is now discontinued. Currently, there are more than 100,000 downloads on the Play Store.[17]

In 2022 a companion version dubbed GnuCash Mobile is also available on the App Store and Play Store and unlike previous iterations was released under the MIT License.[18] GnuCash Mobile is developed using Flutter. Beyond mentoring the original GnuCash for Android developer and providing some publicity there was no connection between Gnucash for Android and the GnuCash project, nor is there any for the current so-called GnuCash Mobile app.

Backwards compatibility issues

[edit]

GnuCash maintains the ability to read older data files between major releases, as long as major releases are not skipped.[19] If a user wishes to access historical data saved in old GnuCash files, they must install intermediate versions of GnuCash. For example, upgrading from 2.2 to 4.1 may not be possible; the user should upgrade from 2.2.9 to 2.4.15, then to 2.6.21, then 3.11, then 4.1.

The other alternative is for users to export transactions files to a CSV format[20] prior to upgrading GnuCash. Exporting of the account tree must be done as a separate step.

Features

[edit]
  • Double-entry bookkeeping[21]
  • Scheduled Transactions[21]
  • Mortgage and Loan Repayment Assistant
  • Small Business Accounting Features[10]
  • OFX, QIF Import,[21] CSV Import
  • HBCI Support[21]
  • Transaction-Import Matching Support
  • SQL Support
  • VAT/GST tracking and reporting
  • Multi-Currency Transaction Handling[21]
  • Stock/Mutual Fund Portfolios
  • Online Stock and Mutual Fund Quotes
  • Built-in and custom reports and charts
  • Budget
  • Bank and Credit Card reconciliation
  • Check printing

Small business accounting features

[edit]
  • Invoicing and Credit Notes (Credit note functionality was added with version 2.6)[22]
  • Accounts Receivable (A/R)
  • Accounts Payable (A/P) including bills due reminders
  • Employee expense voucher
  • Limited Payroll Management through the use of A/Receivable and A/Payable accounts.[23]
  • Depreciation
  • Mapping to income tax schedules and TXF export for import into tax prep software (US)
  • Setting up tax tables and applying sales tax on invoices

Technical design

[edit]

GnuCash is written primarily in C, with a small fraction in Scheme.[7] One of the available features is pure fixed-point arithmetic to avoid rounding errors which would arise with floating-point arithmetic. This feature was introduced with version 1.6.[24]

Users

[edit]

Users on the GnuCash mailing list have reported using it for the United States 501(c)(3) non-profit organizations successfully. However, the reports need to be exported and edited.[25]

In April 2011, the Minnesota State Bar Association made their GnuCash trust accounting guide freely available in PDF format.[26]

Download statistics

[edit]

As of July 2018, SourceForge shows a count of over 6.3 million downloads of the stable releases starting from November 1999[27] Also, SourceForge shows that current downloads are running at ~7,000 per week.[28] This does not include other software download sites as well as Linux distributions that provide download from their own repositories.

Project status

[edit]

Open Hub's analysis based on commits up to May 2018 (noninclusive) concluded that the project has a mature, well-established code base[a] with increasing year-over-year development activity.[b][29] Moreover, "Over the past twelve months, 51 developers contributed new code to GnuCash. This is one of the largest open-source teams in the world, and is in the top 2% of all project teams on Open Hub."[30]

Notes

[edit]
  1. ^ Defined as having at least 5 years of commit activity.
  2. ^ Defined as having had a 25% increase in commits in the past 12 months compared to the previous 12 months.

References

[edit]
  1. ^ Clark, Rob D. (12 Apr 1998). "X-Accountant". www.gnucash.org. Archived from the original on 2015-09-24. Retrieved 2018-07-30. 12 Apr 98 - The xacc project has changed names and become the GnuCash project.
  2. ^ Roblimo (July 5, 2001). "GnuCash Developer Robert Merkel Responds". linux.slashdot.org. GnuCash is based on the X-Accountant codebase, which was GPL'd when Robin Clark released it based way back in 1997
  3. ^ "gnome story". Archived from the original on February 24, 2001. Retrieved July 11, 2013. Gnumatic was incorporated in the year 2000 to work on financial software. Led by Linas Veptas, Gnumatic produces GnuCash, the personal finance software for Unix.
  4. ^ Vepstas, Linas. "Home Page". The GnuCash Personal Finance Manager[:] This is the biggest project I've ever worked on, and you can say I started it. I started by fixing a few bugs in a small piece of software called "X-Accountant", back in '96 or '97. Since then, I've put in thousands of hours of work into this software (yes, that's full time, overtime, evenings and weekends, for many years). Along the way, the name changed to "GnuCash", and it has had hundreds of volunteers adding features functions, documentation and translations, turning GnuCash into the leading personal finance management software on Linux today. It is now included in all major Linux distributions, and sees downloads in the tens-of-thousands whenever a new version is released.
  5. ^ a b "Free Accounting Software - GnuCash". GnuCash. Archived from the original on 2011-05-14. Retrieved 2011-03-13.
  6. ^ "Release GnuCash 5.9 Released · Gnucash/gnucash". Retrieved 29 September 2024.
  7. ^ a b "Why don't you rewrite GnuCash in programming language xyz so that I can contribute easily?". Frequently asked questions. GnuCash website. Retrieved 2010-05-14. GnuCash is a large body of code maintained by a small group of developers who are comfortable in C and Scheme (Guile). Actually, 80% of it is in C and approx. 13% is in Scheme/Lisp.
  8. ^ "LICENSE". GitHub. Retrieved 2021-06-30.
  9. ^ "X-Accountant". gnucash.org. Archived from the original on 2015-09-24. Retrieved 2011-03-13.
  10. ^ a b "1.1. What is GnuCash?". GnuCash Documentation. GnuCash. Archived from the original on 2010-06-12. Retrieved 2010-05-14.
  11. ^ "Index of /gnu". GNU Project FTP Server. GNU Project. Retrieved 2010-05-14.
  12. ^ "GNU Readme". GNU Project FTP Server. GNU Project. Retrieved 2010-05-14. Programs that are directly in this directory are actually GNU programs, developed under the auspices of GNU.
  13. ^ "Download GnuCash". GnuCash. Archived from the original on 2010-05-20. Retrieved 2010-05-14.
  14. ^ "FAQ GnuCash". Retrieved 2010-10-11.
  15. ^ "Documentation | GnuCash". www.gnucash.org. Retrieved 2023-12-12.
  16. ^ "Gnucash Mobile". Coding User. 2012-05-10. Archived from the original on 2013-01-06. Retrieved 2018-07-30.
  17. ^ "GnuCash - Apps on Google Play". play.google.com. Retrieved 2022-06-12.
  18. ^ "GnuCash Mobile". App Store. Retrieved 2022-06-12.
  19. ^ "Gnucahs FAQ". 2020-04-25. Archived from the original on 2020-04-01. Retrieved 2020-04-25.
  20. ^ "Gnucash Manual:Transaction Exports".
  21. ^ a b c d e Canterford, Conrad (2006-11-06). "Review: GnuCash 2.0". Linux.com. Archived from the original on 2008-04-19. Retrieved 2008-04-14.
  22. ^ "GnuCash 2.6 release tour". GnuCash. Retrieved May 2, 2015.
  23. ^ "Features/Advance Features". GnuCash. Retrieved May 2, 2015. Using A/Receivable and A/Payable accounts you can even manage payrolls for your employees.
  24. ^ "What's new in GnuCash 1.6?". gnucash.org. Archived from the original on 2010-09-24. Retrieved 2010-09-03.
  25. ^ "GnuCash for non profits". gnucash.org mail archive. 13 January 2010. Retrieved 2011-03-11.
  26. ^ "Keeping Client Trust Accounts with GnuCash" (PDF). Minnesota State Bar Association. Archived from the original (PDF) on 2017-04-10. Retrieved 2017-04-09.
  27. ^ "Download Gnucash software for free at SourceForge.net". Sourceforge.net. Retrieved 2018-07-04.
  28. ^ "Download Statistics: All Files". Sourceforge.net. Retrieved 2018-07-04.
  29. ^ "The GnuCash Open Source Project on Open Hub". openhub.net. Retrieved 2018-07-04.
  30. ^ "Project Summary: Factoids - Open Hub". openhub.net. Retrieved 2018-07-04.

Further reading

[edit]
[edit]