Accounting systems: a rant and a quest
The monthly accounting ritual involves importing a lot of data from the web site into the accounting application; in particular, subscription sales need to be properly fed in so that we can minimize our taxes on the income in the proper American tradition. This process normally works just fine, but, recently, it failed, saying: "Cannot import, not enough disk space or too many records exist." Naturally, in QuickBooks style, it failed partway through the import process, leaving a corrupted accounting file behind. But QuickBooks users usually learn to make backups frequently and can take such things in stride.
The inability to feed data into the system is a little harder to take in stride, though, especially once some investigation proved that disk space is not in short supply and the failure is elsewhere. It didn't take much time searching to turn up an interesting, unadvertised QuickBooks antifeature: there is a software-imposed limit of 14,500 "list items," which include products offered by the company, vendors, customers, and more. Once that limit is hit, QuickBooks will not allow any more items to be entered; the only supported way out is to upgrade to the "enterprise" version, which can currently be done for a special offer price of only $2400.
In other words: Intuit sells a program that is intended to become an integral part of a business's core processes, perhaps even functioning as a point-of-sale system. This program will, without warning, simply cease to function once the business accumulates an arbitrary number of entries. The only way for that business to get a working accounting system back is to "upgrade" to a new version that costs ten times as much. One can only conclude that this proprietary software package has not been written with its users' needs as the top priority. Instead, it contains a hidden trap to force them into more expensive offerings at a time when they may have little alternative. Who would have ever thought proprietary programs could be that way?
Here at LWN, we had no particularly urgent need to get things working again; other businesses may well not have the luxury of enough time to find an acceptable way out of this situation. It is, thus, unsurprising that there are entire businesses being built around this little surprise from Intuit. Needless to say, there is little enthusiasm in the LWN head office for the purchase of an expensive and proprietary "enterprise" accounting system. In the short term, a workaround has been found: sacrifice most of our accounting history to bring the record count to a level where the program will consent to function as advertised. That has other interesting side effects, like mysteriously changing the balances of reconciled accounts from previous years, but it does take the immediate pressure off. For now, we can continue to do our books.
But a clear message has been delivered here: it is about time that we at LWN read some pages from our own publication and realize that a dependence on proprietary software poses a real risk to our business. A company that is willing to put one such hostile surprise into an important application will put in others and, without the source, there is no way anybody can look for them or remove them if they are found. QuickBooks is too risky to continue to use.
It is, in other words, time to make the move to a free accounting program.
When we have looked at the available tools in the past, the results have always been a little disappointing. There is no shortage of software that can maintain a chart of accounts and a set of double-ledger books. But there has been, in the past, a relative scarcity of useful accounting tools for small businesses. Instead, what's out there is:
- Various personal finance utilities, including GnuCash, KMyMoney,
and others. For basic accounting they work well, but they fall short
of a business's needs.
- Massive enterprise-oriented toolkits that can be used to build systems implementing accounting, inventory-tracking, point-of-sale, customer relationship management, supply-chain management, human resources, and invoicing, with add-on modules for bill collection, weather prediction, automated trading, and bread baking. These systems have names like ADempiere, Compiere, OpenERP, LedgerSMB, and Apache OFBiz. The target users for these projects appear to be consultants and businesses with full-time people dedicated to keeping the system running. To a business like LWN, they tend to look like a box with hundreds of nearly identical parts and a little note saying "some assembly required."
What is missing in the middle is a package for a business with no special accounting needs, but which needs to be able to automate data entry, generate tax forms at the end of the year, and interface with an accountant so it can get its taxes done. Given how incredibly exciting small-business accounting is, it's surprising that so few developers have felt a burning need to scratch that particular itch. There is no accounting for taste, it seems.
That said, it has been a few years since we last made a serious effort to learn about free software accounting alternatives; clearly the time has come for another pass. So we'll be doing it, with an eye toward, hopefully, making the transition at the end of the calendar year. That gives us several months to forget about the problem while still allowing a few months of panic at the end, so the schedule should be plausible.
Stay tuned for updates, it should be an interesting ride. But we are
pretty well determined not to find out what other surprises our
proprietary accounting system may have in store for us. In 2012, it should
be possible to run a small, simple business on free software and never have
to wonder when the accounting system will stop functioning and demand more
money. We intend to prove it.
Posted May 8, 2012 20:37 UTC (Tue)
by bernat (subscriber, #51658)
[Link] (1 responses)
Posted May 17, 2012 10:27 UTC (Thu)
by ajmacleod (guest, #1729)
[Link]
When we started up we bought the basic Sage package (our only Windows-based software) and started using it - within two weeks it had infuriated me enough that it was dumped for GNUCash which has steadily continued to improve.
All our day-to-day small business needs are well covered; we keep customer records, do invoicing, reconcile with bank (initially using electronic bank data but soon found it just as easy to do manually).
At the end of the year I just run a few reports to get figures for the various income / expenditure categories required and send these to an accountant who uses them to fill in the necessary returns.
Yes, it would be nice if there was a more user-friendly way of customizing invoice layouts, but really other than that I really can't think of much to complain about - for a few years now it has been very stable indeed.
What exactly does LWN do that GNUCash can't comfortably deal with?
I should say that I handle payroll mostly outside of GNUCash, using a fairly simple LO spreadsheet for payslips; fortunately in the UK the government provides software to handle the payroll taxes which amazingly is available for Linux too.
Posted May 8, 2012 20:47 UTC (Tue)
by cantsin_ (guest, #74889)
[Link] (5 responses)
I really, *really* would like to learn about open source small-business accounting tools out there too. Like the article alludes to, there's a lot of activity on the personal finance software side but seemingly little on the small-business front. I do have to say, though, I'm somewhat relieved that I'm not the only one with this problem...
And at the same time, I'm not really surprised with the dearth of good open source accounting solutions. Quickbooks is the 800lb gorilla -- I don't think any of our small-to-medium sized clients use anything else. It's "good enough" for virtually all cases, so Intuit has a huge moat around that particular business.
Posted May 8, 2012 21:03 UTC (Tue)
by Cyberax (✭ supporter ✭, #52523)
[Link]
Russian accounting giant (1C Enterprise) has just entered the US market. So hopefully Quickbooks would get competition soon.
Posted May 9, 2012 8:48 UTC (Wed)
by dgm (subscriber, #49227)
[Link] (3 responses)
So, one productive thing that you could do to help yourselves is write a good specification of what features an adequate and free Quickbooks competitor needs, and how they should work. Maybe someone will pick it up and convert it into working code.
Posted May 9, 2012 9:49 UTC (Wed)
by jamesh (guest, #1159)
[Link] (1 responses)
Unfortunately, this data is fairly localised and there can be large penalties if the data is wrong. So it isn't clear that a community project could take over this role.
If the free accounting systems had a standard interface for this type of data, it could provide a business opportunity for companies who were willing to provide the data though.
Posted May 10, 2012 14:48 UTC (Thu)
by dgm (subscriber, #49227)
[Link]
Posted May 13, 2012 10:40 UTC (Sun)
by ortalo (guest, #4654)
[Link]
Personnally, I've been using KMymoney for a while for family money and, well, it definitely proved very helpful.
Posted May 8, 2012 20:59 UTC (Tue)
by djc (subscriber, #56880)
[Link] (4 responses)
http://www.softwarefreedom.org/blog/2011/sep/07/accountin...
Posted May 9, 2012 0:16 UTC (Wed)
by cworth (subscriber, #27653)
[Link] (3 responses)
I love that it has a plain-text input syntax, (so I manage all of my
The simple command-line interface has always proved sufficient to me
That said, I don't have any visibility into what the detailed needs of
So I would guess that ledger in its current form might fall short like
Presumably SFLC, (unlike me), actually deals with interfacing their
Posted May 9, 2012 11:55 UTC (Wed)
by emk (subscriber, #1128)
[Link] (2 responses)
https://github.com/jwiegley/ledger/wiki
I actually use Ledger for a consulting business, together with Emacs ledger-mode and FreshBooks for invoicing. For taxes, I just make sure that my expense categories correspond to those used by the IRS, run a report, and copy about 20 numbers over to the tax forms.
If I want to review something with my accountant, I just sit down and read the text file with him. Of course, everything is kept in version control, and I can add comments in the main ledger file.
The Ruby scripts download CSV data from my bank and Freshbooks, and convert it into raw ledger files.
Curiously, the whole system is actually pretty quick and painless — I spend a few hours each quarter on bookkeeping, and I can automate any annoyances with a 20-line script that munges text files. You'd think a GUI would be easier, but really, there's a lot to be said for plain text once you want to automate something. And it's nice to have a big comment at the top of the ledger explaining the relevant IRS rules.
So +1 for Ledger, despite the retro approach.
Posted May 11, 2012 18:37 UTC (Fri)
by daglwn (guest, #65432)
[Link]
Posted May 17, 2012 0:24 UTC (Thu)
by dmarti (subscriber, #11625)
[Link]
A web developer and designer could probably get 200 grand from Kickstarter to develop a robust open source small-business accounting system, then put a slick web API and front end on ledger and git and make the best accounting software in the world. (Not that the competition is great or anything.)
Posted May 8, 2012 21:26 UTC (Tue)
by Cyberax (✭ supporter ✭, #52523)
[Link] (6 responses)
That's right. Even QuickBooks is crap, it's a highly polished crap, but still crap. It's not configurable and its API is a PITA. It's also unreliable and slow.
A good accounting system should provide:
Posted May 8, 2012 22:36 UTC (Tue)
by cantsin_ (guest, #74889)
[Link] (5 responses)
Posted May 9, 2012 2:08 UTC (Wed)
by Cyberax (✭ supporter ✭, #52523)
[Link] (4 responses)
Now, it's not ideal of course. The IDE in 1C is atrocious, its internal language is dumb, it's hard to scale 1C applications, etc. But the core ideas in its design are pretty good.
Posted May 9, 2012 8:52 UTC (Wed)
by dgm (subscriber, #49227)
[Link] (3 responses)
Posted May 9, 2012 17:16 UTC (Wed)
by Cyberax (✭ supporter ✭, #52523)
[Link] (2 responses)
For example, each sale would result in a 'Receipt for customer' document. A document can have linked documents (a receipt would typically be linked to a shipping order, for example). Documents are generally immutable and are not changed once created.
The second fundamental idea are 'registers'. They represent a temporal database which accumulates the changes that are made when documents are created. I.e. you can have a register tracking your bank account balance and when you write a check it would be decreased by the check's amount. However, since registries are temporal, you can actually view your balance at any point in time.
Including the future.
Which very useful for things like warehouse management for things like: "Assuming I don't get any new orders and my current shipping orders are completed in time, how much widgets would I have in store on Monday next week?".
Also, it's useful for backdated documents (which happen all the time in small business) - you can enter a document in the past and 1C would recalculate all the reports/documents that are affected by the corresponding changes in registers.
Then there's an easy ability to create forms bound to documents/registers (a bit like MS Access but more powerful) and design reports.
A system like this is actually not that hard to create. But the amount of details you need to know is staggering.
For instance, a lot of 'ledger' software has a built-in CRMs (it's only logical). But only very few of them have a temporal CRM which becomes crucial quite soon when you start dealing with customers changing their company names and/or addresses and you need to reproduce historical documents.
Posted May 9, 2012 17:50 UTC (Wed)
by zlynx (guest, #2285)
[Link] (1 responses)
I love the idea of a database that can be queried "as of time t". I seem to remember that PostgreSQL used to support that as a neat trick of MVCC (version 4 or 5?) but on larger tables with heavy use the transaction IDs rolled over too quickly.
Posted May 9, 2012 18:04 UTC (Wed)
by Cyberax (✭ supporter ✭, #52523)
[Link]
Posted May 8, 2012 21:29 UTC (Tue)
by boog (subscriber, #30882)
[Link] (1 responses)
"That gives us several months to forget about the problem while still allowing a few months of panic at the end, so the schedule should be plausible."
DANGER! DATES ON CALENDAR ARE CLOSER THAN THEY APPEAR! :-)
I'm reminded of the birth of git. How hard can it be to generate a report from some database data?
Posted May 9, 2012 0:35 UTC (Wed)
by neilbrown (subscriber, #359)
[Link]
Surely just a couple of awk scripts with a php front end :-)
So what we need as the first follow-up article is detailed specifications of exactly what a small business *needs* in an accounting package. Then the many time-rich LWN readers can start a number of competing projects to implement a system meeting those needs in the hope of being featured in a subsequent article. And then .... profit!
Posted May 8, 2012 21:59 UTC (Tue)
by dankohn (guest, #6006)
[Link] (3 responses)
Switch to QuickBooks Online (this would also allow you to avoid Windows/WINE)
Buy this 3rd party app for $75
Posted May 8, 2012 22:17 UTC (Tue)
by corbet (editor, #1)
[Link] (1 responses)
Quickbooks14500.com was linked in the article. It's not the temporary solution we took, but the end effect is the same: trash your history, allowing list entries to be used for other purposes.
Posted May 11, 2012 12:40 UTC (Fri)
by jeremiah (subscriber, #1221)
[Link]
Posted May 9, 2012 8:08 UTC (Wed)
by DG (subscriber, #16978)
[Link]
In the end we moved to Kashflow which is working well for us. Unfortunately there appeared to be no viable FLOSS equivalents.
Posted May 8, 2012 22:02 UTC (Tue)
by geuder (subscriber, #62854)
[Link]
However, it sounds unbelievable that there is nothing suitable for the US market. For the 60 times smaller Finnish market there is Pupesoft.
I have no experience with the system or with business accounting in general. I have met 1 happy Pupesoft user and one non-user who recommeded to localize some international/American(?) system instead. Unfortunately I don't recall the name.
Posted May 8, 2012 22:14 UTC (Tue)
by job (guest, #670)
[Link]
Posted May 8, 2012 23:03 UTC (Tue)
by copsewood (subscriber, #199)
[Link]
I've seen account-based community currency packages used for business accounts a while ago. Not sure whether this approach is likely a very good fit to LWN.NET business needs, but double entry bookkeeping has more than one purpose I guess. Those developing CC software tend to prefer this to be Free Software/Open Source as a matter of principle. Money should be accountable to the community which uses it.
No harm using one of these engines and developing input forms and output reports to match the API. Possibly the Timebanks have similar software, so there might be a few other viable packages out there of a similar nature.
Posted May 8, 2012 23:57 UTC (Tue)
by ldo (guest, #40946)
[Link]
Posted May 9, 2012 0:03 UTC (Wed)
by dskoll (subscriber, #1630)
[Link] (6 responses)
We use LedgerSMB, but we cheat... our accountant re-enters everything into his proprietary system when it comes time to filing official tax returns.
LedgerSMB has another gotcha: We are on 1.2.x and as far as I can see, there is simply no upgrade path to the current 1.3.x. I've tried the upgrade several times and each time it has failed miserably. Also, 1.3.x relies on PostgreSQL to manage users: The application user is expected to be exactly the same as the database user. I understand the LedgerSMB team's motivation (put all the user management in the database and you can ensure one and only one place for permission checking), but it's a real PITA for us to run that way.
Posted May 9, 2012 4:38 UTC (Wed)
by ringerc (subscriber, #3071)
[Link] (4 responses)
If the app provides a basic tool to create/drop/alter Pg users, this should be no hassle at all to manage and no different to using users defined in application tables. I'm guessing they haven't.
Posted May 9, 2012 13:11 UTC (Wed)
by dskoll (subscriber, #1630)
[Link] (3 responses)
Yes, I know that. But just because I want to let people log in to an accounting application, that doesn't mean I trust those same people with the psql command-line. Conflating database users with application users is not a good idea, IMO.
Posted May 10, 2012 2:29 UTC (Thu)
by ringerc (subscriber, #3071)
[Link] (2 responses)
If they're using DB-level users but not doing strict access control and checking in the DB, so a user can still wreak havoc with DB command-line access, that's not cool.
Posted May 10, 2012 16:02 UTC (Thu)
by dskoll (subscriber, #1630)
[Link] (1 responses)
Hmm, I don't really know... I haven't been able to upgrade to 1.3. :(
Even if permission-checking is good, you can still do a lot more damage a lot more quickly with psql than the web interface. For example, you might be able to do a mass update in psql in the blink of an eye where the Web interface will slow you down before you can do too much damage. :)
Posted May 10, 2012 21:03 UTC (Thu)
by dskoll (subscriber, #1630)
[Link]
So I took another crack at upgrading from LedgerSMB 1.2.x to 1.3.16.
Total, utter failure.
The "setup.pl" script keeps asking for a login/password and rejecting whatever I give. Tracing through a hundred twisty perl scripts, all alike, I got nowhere.
I give up. At this point, we're frozen in amber at 1.2.21. My choices now are to do a clean installation of 1.3.16 at the end of the fiscal year and start fresh, pay someone (anyone out there?) to upgrade us, or switch away from LedgerSMB.
Posted May 10, 2012 0:04 UTC (Thu)
by glikely (subscriber, #39601)
[Link]
I switched from that to Postbooks which has worked extremely well. I particularly like that the database logic is implemented as Postgresql stored procedures which means it is safe to use other applications to manipulate the data (like to import transactions). I back the whole thing up with a plain-text dump of the database stored in a git tree. Most importantly, I've not had a complaint from my accountant since. :-)
Posted May 9, 2012 1:00 UTC (Wed)
by drh (guest, #65025)
[Link] (3 responses)
Beware of "shiny". And do not underestimate the power of CGI + scripting language + SQL.
Posted May 9, 2012 2:24 UTC (Wed)
by piggy (guest, #18693)
[Link] (1 responses)
Posted May 17, 2012 9:09 UTC (Thu)
by kragil (guest, #34373)
[Link]
Posted May 12, 2012 9:40 UTC (Sat)
by juliank (guest, #45896)
[Link]
Posted May 9, 2012 5:36 UTC (Wed)
by jcm (subscriber, #18262)
[Link] (9 responses)
Posted May 10, 2012 8:15 UTC (Thu)
by cmccabe (guest, #60281)
[Link] (8 responses)
Well, if you check out the QuickBooks EULA, you quickly find that it includes this little gem:
> TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL
So if you paid $50 for the software, that's the exact amount QuickBooks will owe you if it turns out to corrupt your files, cause the IRS to audit you, and kick your dog. See for yourself at http://www.software112.com/products/quickbooks-key+eula.html
The moral of the story is that you don't get enterprise-level support by buying shrink-wrapped software. You get enterprise-level support by paying enterprise-level prices.
Posted May 10, 2012 12:14 UTC (Thu)
by ekj (guest, #1524)
[Link] (7 responses)
Even a $10000/year license for Visma Global, will not give you a single cent from Visma if their software causes you to violate some tax-code or other law.
Yet you hear all the time that "you need proprietary software to be safe", when the reality is that paying trough the nose for proprietary stuff guarantees no such things.
Posted May 10, 2012 17:24 UTC (Thu)
by jcm (subscriber, #18262)
[Link] (6 responses)
Posted May 10, 2012 19:29 UTC (Thu)
by ekj (guest, #1524)
[Link]
Software-contracts where somebody actually promises to fix things if they break, costs *MUCH* more than off-the-shelf software. Typically orders of magnitude more.
Posted May 13, 2012 18:56 UTC (Sun)
by cmccabe (guest, #60281)
[Link]
Accounting and tax software needs to be very bug-free, due to how mission-critical it is for enterprises. Commercial vendors have an incentive to make their software bug-free because otherwise their reputations are tarnished. What kind of similar incentive can we produce for open source developers of accounting and tax software?
If Red Hat or someone else were to offer a commercial support contract for some open source accounting software, Red Hat would have an obvious financial incentive to keep things working. However, support contracts only really make sense for big companies, not for small organizations like LWN.net. This would also tend to drive the developers towards implementing complex features needed by large organizations, not simple things needed by a smaller operation.
Joel Sposky wrote a pretty interesting article about the pricing of software over here: http://www.joelonsoftware.com/articles/CamelsandRubberDuc.... Software offered with a proper support contract clearly falls into what he would call the expensive category.
In the end, I think that we could probably create a good open-source accounting package. It would have to be extensively unit tested, and the development paradigm might have to be a little more restrained than the usual rapid-release strategy. It might also be a good idea for some organization to hold a trademark on the actual name, sort of like how Mozilla holds the trademark to Firefox.
In contrast, I have a hard time imagining open source tax software coming to pass any time soon. It's just not a very rewarding thing to develop-- it doesn't scratch anyone's itch, and the rules change every year in subtle and complex ways. Perhaps the best thing we can hope for is that there will be an open standard for storing tax data. Unfortunately, the IRS's e-file standard seems to fall far short in this regard.
Posted May 17, 2012 4:00 UTC (Thu)
by fest3er (guest, #60379)
[Link] (3 responses)
Money is the lifeblood of every business; without it, the business dies. The purpose of accounting is to know where your money is coming from and where it is going. And, at times, how fast the flow is changing. Satisfying the tax man is secondary.
The basis of any accounting system must be the Generally Accepted Accounting Principles (GAAP). While there are localized variances, GAAP is almost as universally used as is the Uniform Commercial Code (UCC).
I've worked, on and off, for a small accountant for 15 years. He spent the previous 17 years building a fairly complete accounting system (general ledger for client data, time & billing for his work with clients, phone logging, lead tracking, etc.) His programmer essentially wrote 2½ programs a week for 17 years, on average; she did use sound practices, such as code-reuse and good structures. But it's still ISAM-based, business BASIC, one-letter variable names, and almost uncommented (to be expected; disk space was at a premium then: it started on an early BASIC system, moved to a DG NOVA, and finally to Unibasic on SCO UNIX).
If I were to build a small business accounting system, I'd start with his and re-implement it using modern languages and a modern UI. And the first premise of the database system would be as already mentioned: every record inserted must include a record insertion date/time, the record this one retired (or null if it's new), a record retirement date/time, the record that retired this one (or null if it's current) and who did each deed. Nothing is ever deleted from the database or updated in it: 'DELETE' and 'UPDATE' don't exist. Call it 40 bytes per record; in 100M records, that's all of 4GB: mice nuts compared to the bit trail you'd get. And accounting is all about traceability.
Posted May 20, 2012 19:31 UTC (Sun)
by renszarv (guest, #84721)
[Link] (2 responses)
Posted May 20, 2012 21:12 UTC (Sun)
by Cyberax (✭ supporter ✭, #52523)
[Link]
Instead you create a _new_ record pointing to the old record as the predecessor. So that all new documents from that point on would use the retiree's record, not the old ones.
Posted May 21, 2012 5:32 UTC (Mon)
by jackb (guest, #41909)
[Link]
Posted May 9, 2012 9:23 UTC (Wed)
by yodermk (subscriber, #3803)
[Link]
Would it be feasible to write a nice front end, probably with PySide and QML or something similar, to the likes of SMBLedger or ApacheOFB? It could come as close as possible to the Quickbooks interface and only provide the functionality needed by small businesses. A script could be provided to set up any necessary server software.
If so, for anyone who has compared these backends, which one would be the best starting point? I may take a look at them myself...
Posted May 9, 2012 11:05 UTC (Wed)
by SiliconSlick (guest, #39955)
[Link]
:) LOL... well put and nicely said (and vice-versa). :)
SS (with no taste for developing accounting software since running away from it 30 years ago)
Posted May 9, 2012 13:31 UTC (Wed)
by stuffa (guest, #74112)
[Link] (2 responses)
Posted May 9, 2012 13:53 UTC (Wed)
by gioele (subscriber, #61675)
[Link] (1 responses)
But are you tied to a particular file format? Can you export your data and back it up offline or import into another program?
Posted May 18, 2012 20:25 UTC (Fri)
by steffen780 (guest, #68142)
[Link]
Posted May 9, 2012 15:48 UTC (Wed)
by FileAwayLtd (guest, #82140)
[Link] (3 responses)
(I'm not associated with them).
I have the 1.4.7. code if you cannot find it on their site.
Posted May 9, 2012 18:44 UTC (Wed)
by charlieb (guest, #23340)
[Link] (2 responses)
The lack of current entries, and predominance of spam, in their mailing list archives, is not encouraging.
Posted May 10, 2012 0:33 UTC (Thu)
by menders (guest, #80486)
[Link]
Posted May 11, 2012 12:04 UTC (Fri)
by FileAwayLtd (guest, #82140)
[Link]
Posted May 9, 2012 17:19 UTC (Wed)
by man_ls (guest, #15091)
[Link]
Extra points for doing it the Unix way: building a basic text-based accounting system first, then layering a ruleset manager on it (which can be fed with byzantine tax system changes) and finally communicating with a GUI or a web application. If I read the comments right, the basic framework might be reused from one of the "ledger" packages.
Posted May 9, 2012 22:32 UTC (Wed)
by debacle (subscriber, #7114)
[Link] (2 responses)
Posted May 10, 2012 8:57 UTC (Thu)
by Seegras (guest, #20463)
[Link]
And we're moderately content with it. It has quirks, and it's often complicated.
What I really don't like are the upgrades. As it happens, OpenERP is a collection of plugins. Every plugin defines the database-fields in it's forms, which are inserted/generated upon installation of the plugin. Which means dozens of plugins modify the same tables.
This makes migrating, even to a never version of openerp, really unpleasant.
Posted May 10, 2012 15:14 UTC (Thu)
by jebba (guest, #4439)
[Link]
OpenERP is python/postgres too....
Posted May 10, 2012 2:51 UTC (Thu)
by Max.Hyre (subscriber, #1054)
[Link]
Posted May 10, 2012 9:02 UTC (Thu)
by tonyblackwell (guest, #43641)
[Link]
To their credit, QB are sending us the next year's version, but 2 accounting firms have wasted a lot trying to debug this, with its pass-on effect.
I'm a _very_ enthusiastic supporter of the hunt for a good open-source alternative.
Posted May 10, 2012 9:55 UTC (Thu)
by ceplm (subscriber, #41334)
[Link]
Posted May 10, 2012 15:48 UTC (Thu)
by cdmiller (guest, #2813)
[Link]
Posted May 12, 2012 10:25 UTC (Sat)
by yoe (guest, #25743)
[Link] (1 responses)
Yes, that probably means we pay them a little more for data entry. But I'd rather pay an accountant whom I trust a little something more than that I'd pay some money to a piece of software that might have this kind of sillyness in it.
Let the accountant deal with that.
Posted May 30, 2012 9:45 UTC (Wed)
by cthart (guest, #4457)
[Link]
* I scan all received documents (the ones that don't already come electronically as PDF).
* Periodically I export my bank statement from my online banking.
My accountant's hourly rate is less than mine so I let her do all the work -- including submissions to the tax office.
Posted May 12, 2012 16:53 UTC (Sat)
by jengelh (guest, #33263)
[Link]
Posted May 15, 2012 14:17 UTC (Tue)
by drh (guest, #65025)
[Link]
Posted May 17, 2012 1:52 UTC (Thu)
by welinder (guest, #4699)
[Link]
Now if your income is anywhere near 2^31-1 cents, you can afford the
Anyway, the short term solution was: (1) return said tax program
There might be a similar trial program for you to use.
Posted May 30, 2012 21:53 UTC (Wed)
by tuxino (guest, #84530)
[Link] (6 responses)
apt-cache search ledger gives some interesting strings, which I've not seen mentioned so far.
frontaccounting
Frontaccounting doesn't look bad to my (very) untrained eye.
hledger looks bare but its main disadvantage IMHO is its data format (formatted text files, IIUC) and the fact that it's written in haskell.
sql-ledger seems quite featureful. Postgresql and perl are a plus to my eyes, but obviously that's irrelevant :)
Just my 2 cents.
Posted May 31, 2012 0:29 UTC (Thu)
by nybble41 (subscriber, #55106)
[Link] (5 responses)
If those are the main _dis_advantages, it must be very nearly perfect. You're essentially saying that the disadvantages are that its storage is resilient and future-proof and that it's written in a language which is resistant against programming errors.
Personally, I'd list the user interface and security issues as the disadvantages, both due to its nature as an HTML-based webapp.
Posted May 31, 2012 7:17 UTC (Thu)
by tuxino (guest, #84530)
[Link] (2 responses)
Haskell is a problem _for me_ simply because I don't know it :-)
Text files don't seem to me like the best storage format for accounting data. RDBMS with ACID compliance where written for a reason, weren't they ? :)
Posted May 31, 2012 15:09 UTC (Thu)
by nybble41 (subscriber, #55106)
[Link] (1 responses)
Well, I was thinking that it's a lot easier to recover data from plain text file if something happens to go wrong. However, ACID compliance is also important, particularly if there are multiple users. Perhaps an RDBMS for active storage, and plain text for backups?
Posted Jun 1, 2012 12:04 UTC (Fri)
by tuxino (guest, #84530)
[Link]
Oh, and let's not forget things like foreign key constraints, stored procedures, views and other goodies, which are quite helpful when implementing accounting systems or any other similar application.
Posted May 31, 2012 19:42 UTC (Thu)
by mathstuf (subscriber, #69389)
[Link] (1 responses)
Posted May 31, 2012 20:13 UTC (Thu)
by nybble41 (subscriber, #55106)
[Link]
Oh, that's good. I saw the demo on their web site and assumed that HTML was the primary/only interface.
> It's also data-file compatible with ledger itself.
And here is a good reason for using plain text files: an RDBMS storage backend would have been unlikely to interoperate with other programs. Note that it couldn't be shared, of course, but the programs would need to agree on a precise database schema where text files, given an extensible syntax, offer more flexibility.
Posted Aug 19, 2012 23:53 UTC (Sun)
by pyrite (guest, #86316)
[Link]
The web page is:https://bbs.archlinux.org/viewtopic.php?id=106721
The output is just the trial balance for the accounts. So in the example output below the newt worth is q/Opening Balances: + i/ accounts + e/ accounts. If you wanted to clear the income and expenses to q/Opening Balances: you could just add the journal entries. Any how you could use the simplicity to develop your own.
$ bal ledger.sample
Also, Awk scrips could be a great way to transfer your stuff to quicken's software in column separated variable format.
Posted May 18, 2014 8:35 UTC (Sun)
by beemsoft (guest, #97128)
[Link]
Posted May 6, 2015 1:41 UTC (Wed)
by jlinkels (guest, #92141)
[Link] (1 responses)
I can recommend the accounting program *I* use because that is the best. Seriously, But of course I say that with reason.
I have been trying OpenErp, used it for 2 years. It has a number of very serious bugs. But bugs in provious versions are not confirmed anymore. Only in the current version. As you know, upgrading in OpenERP is a nightmare or a paid job. So if you stick with the old version there is no bug fixing. If you go through the effort of upgrading you are replacing known bugs by unknown bugs. And by the time you learned the new bugs, the next version is current and your new bugs are too old to be fixed. WIth serious errors I mean a balance which is unbalanced, etc. If the tax Dept. ever decides to audit my books over those years I am bankrupt.
SQL-ledger is more the spirit of real FOSS. But it doesn't do inventory. And I am not sure about multi-currency. Anyway it felt rather basic and lacked some functions I needed.
XTuple is a nightmare. Even the simplest things are extremely complicated. Correcting a wrong booking is so complicated you can't correct it without making other errors which have to be corrected, which causes you to make errors... Community support is almost non-existent. Very bad, everything is coded in PostgreSQL. Restoring a backup version takes 15 minutes on an i7 machine.
Then I found FrontAccounting. It comes close to Quickbooks in functionality. It uses MySQL. It is fairly simple. You can understand and hack the database. 30 tables or so. It has an undo function which voids a transaction, but leaves a trail. It has inventory and multi-currency. It has good reporting. It is flexible. Multi-language. Community support is good. Making a test copy is easy. Restoring previous versions or previous data is a breeze.
Frontaccounting is close to perfect for any small business.
jlinkels
Posted Apr 21, 2016 7:06 UTC (Thu)
by Ravioli (guest, #108349)
[Link]
Open a new set of books! Close your books at a year or quarter and carry forward the balances. Then you don't have a limit any more.
This is what people did in the time of paper journals and ledgers. Your accountant knows how to do it! The beauty is you and your accountant do not have to change software.
I don't know why your accountant did not suggest it, maybe to young?
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
I am sure this software, or another one, would definitely benefit from being given/asked for a wider but achievable target.
Accounting systems: a rant and a quest
A few notes on ledger
ledger data files with git, and use the One True Editor as the primary
interface for data input).
for quickly looping over the data file and generating whatever balance
or register reports I've needed.
small businesses are which our esteemed editor can't seem to find in
the various "basic accounting" packages. Two things mentioned in the
article are to "generate tax forms" and "interface with an
accountant". I don't know that ledger has much in the way of specific
support for either task.
many other software programs. But the fact that ledger has a real
"Unix way" about it, (focusing on the small task of defining a
human-readable data syntax, and generating reports from it), might
just make a great basis on which to build more sophisticated
data-entry and reporting interfaces.
ledger data with professional accountants. So those folks might have
some useful insight.
A few notes on ledger
A few notes on ledger
A few notes on ledger
Accounting systems: a rant and a quest
Developers of GnuCash and other accounting programs clearly have zero knowledge of good existing accounting systems. But they can be forgiven, since there are NO good accounting systems on the US market.
1) Way to construct custom forms and easily link them to entries in the accounting system.
2) A _temporal_ database for entries. I.e. it should be possible to do things like: "how had our accounts looked at 3:00PM June 11, 2011?", taking into account backdated documents and corrections.
3) A set of standard forms (which is actually the easiest part) with a way to construct new ones.
4) Easy way to integrate with logistics and warehouse management.
</rant mode>
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
https://qboe.custhelp.com/app/answers/detail/a_id/1089
http://www.quickbooks14500.com/
Strangely enough, we're not inclined to trust Intuit to hold all of our company accounting data in some online database. Even if we were, at least some years ago, QB Online was still Windows-only - would only work on IE. Perhaps they have fixed that.
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
A quick apt-cache search ledger on my Debian Unstable system turned up some interesting-looking possibilities.
Alternatives
Accounting systems: a rant and a quest
LDAP users?
LDAP users?
LDAP users?
LDAP users?
LedgerSMB... GAAAAAHHH!!!
Accounting systems: a rant and a quest
Accounting systems: Grow your own?
Accounting systems: Grow your own?
Accounting systems: Grow your own?
Accounting systems: Grow your own?
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
> against going for an entirely free (of charge) solution in the process of
> going to an Open Source accounting solution. You not only really want an
> open alternative, but you need to (I would say - but my opinion only) get
> it from a company that is willing to stand by the numbers through
> indemnification or at least be accountable (no pun intended). My concern
> is that otherwise you'll run the risk of getting into hot water later with
> various end of year filings. So, I wouldn't expect an open solution to
> necessarily cost less (and in fact, I'd expect it to cost a lot more -
> simply due to the relatively smaller market for a new offering).
> PASSWARE OR ITS SUPPLIERS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT,
> OR CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION,
> DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF
> BUSINESS INFORMATION, OR ANY OTHER PECUNIARY LOSS) ARISING OUT OF THE USE
> OF OR INABILITY TO USE THE SOFTWARE PRODUCT OR THE PROVISION OF OR FAILURE
> TO PROVIDE SUPPORT SERVICES, EVEN IF PASSWARE HAS BEEN ADVISED OF THE
> POSSIBILITY OF SUCH DAMAGES. IN ANY CASE, PASSWARE'S ENTIRE LIABILITY
> UNDER ANY PROVISION OF THIS SLA SHALL BE LIMITED TO THE GREATER OF THE
> AMOUNT ACTUALLY PAID BY YOU FOR THE SOFTWARE PRODUCT OR U.S.$5.00.
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
A bitemporal data model works like that. Information is only added to the database, never deleted or changed.
Accounting systems: a rant and a quest
building a nice front end to one of the "enterprise" projects
Given how incredibly exciting small-business accounting is, it's surprising that so few developers have felt a burning need to scratch that particular itch. There is no accounting for taste, it seems.
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Its cheap, doesn't rely on windows, is accessible from anywhere (you are not tied to a particular PC).
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Somehow I read in the title "a rant and a request"; I thought our esteemed editor had finally swallowed his pride and was coming to the LWN.net community (many surely with similar needs) to ask for help. In the comments there are already many suggestions and a few home-grown solutions. In the spirit if NIH syndrome fans I would think that there is a scratch to itch, there is a business need and the will to solve it. Bigger projects have grown from less promising prospects.
What, no request?
Don't rule out the big players prematurely (OpenERP etc.)
Don't rule out the big players prematurely (OpenERP etc.)
Don't rule out the big players prematurely (OpenERP etc.)
Have you asked Intuit what happens when you've upgraded to the $2400 version, and then you hit, say, 145,000 items? :-/
Question about the Quickbooks upgrade
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
used -- including in temporary calculations -- can exceed 2^31-1 cents.
Calculations just aren't right, if that happens.
business version. But there are other ways to get there without being
someone's rich uncle.
to Costco, and (2) sign up for a free trial version of their
professional tax software -- full version preloaded with $100
which, roughly, is fees for about five tax returns. (And (3) get
a tax accountant who knows what he's doing.)
Accounting systems: a rant and a quest
hledger
sql-ledger
From the FAQ:
"FA is PHP 4 and PHP 5 compatible and should run on MySQL 4.0 - 5.X.X Server"
They've got an online demo too,.
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Seriously, though, I was thinking about the popularity of the language the ERP is written in and the ease of finding a developer to customize and maintain it.
This is probably a moot point, though, as the software publisher would probably be glad to receive money for this type of work :)
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
a/Checking: 15.00
a/Checking*: -40.00
a/Savings: 620.00
e/Food: 85.00
i/Paycheck: -120.00
l/Credit Card: -35.00
q/Opening Balances: -525.00
How is the quest going?
Maybe the following open source project is interesting for you:
TechyTax is a web-based tax tool for small companies. It calculates VAT returns and generates fiscal overviews. No accounting knowledge is required. The goal of this project is to make the tax process as easy as possible for small companies.
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
Accounting systems: a rant and a quest
You might do this retro-actively at a previous date. Separate the transactions by that date. Clear all expenses and revenues to retained earnings, capital account. Carry all the balances forward to a new set of books. Then add all the journal transactions at that date or after.