I am well aware that I make quite a bold claim against what is essentially a multi billion dollar industry. Let me attempt to explain the reasoning behind this heresy by considering the definition of Accounting.
The Wikipedia entry on the profession says:
Accounting or accountancy is the measurement, processing, and communication of financial and non financial information about economic entities
Expanding the definition a little, one might say that measurement involves the gathering of data about economic events, processing has to do with the classification of the events then recording the data therefrom in accordance with accounting rules, while communication is accomplished via financial reports.
While data gathering and recording are repetitive tasks that are quite easily automated using software, the processing and thereafter reporting of financial information is quite a different matter altogether. It involves the application of very specifically defined accounting rules to a set of quite abstract economic facts.
Lets take for example an economic event as simple as a Purchase Transaction of a good by cash. The double entry rules of accounting are very clear on the processing of the data from this event, which is to reduce the balance of the cash account and increase goods account balance and would be recorded like so:
Debit Goods Account
Credit Cash Account
The above treatment is quite correct, at least as far as accounting rules are concerned. Communicating this data in a report would however tell the reader very little about the impact of the event to the financial state of the entity, as it conveys no information about the nature of the good that was purchased. In fact, holding all other factors constant the effect on the entity if the good was a stock item being held for sale would be not as positive as if the good was machinery for use in production.
Thus the application of accounting rules by itself does not constitute accounting. It is only bookkeeping. Accounting requires the cognitive process of classifying the economic events before the data gathered from them can be turned over for bookkeeping, as well as interpreting the reports generated therefrom.
Economic events can and do yield a wide variety of complex economic data. Managing the complexity of these events is what a Professional Accountant does. Their job is to establish a scheme that classifies these events into a format that is capable of being parsed by accounting rules to yield an accurate picture of their impact on the financial state of the entity.
This brings me to the meaning of the title of this article. There is no such thing as Accounting Software. Software cannot do Accounting. At least not until AI is a reality. If it could, there would not be an Accounting Profession. In the meantime what exists is at best bookkeeping software that has been mistakenly construed as being capable of Accounting.
I should not be mistaken to be claiming that bookkeeping software is without its merits, rather my argument follows the classical relationship between Labor and Capital. For example a shovel is a very useful tool for digging trenches. Without a person to use it however, it is merely a piece of metal. The person on the other hand can still dig a trench without the shovel, albeilt less effectively.
Because accounting involves a cognitive process, one may conclude that while it is possible to have a generalist accountant capable of serving multiple entities, there cannot be generic accounting software. It is for this reason that looking for an accountant with experience in software X is counterproductive. It is no different from looking for a teacher with experience in using a specific brand of chalk. You might end up with an expert in the particular software who has little accounting skill. A competent accountant should be able to grasp the use of any well designed bookkeeping tool within a few hours of encountering it and going through its manual.
A second conclusion that could be arrived at is that because generic accounting software does not currently exist, each entity should have a bookkeeping tool that is tailored to their particular economic environment, and which could be configured by the any accountant to accurately gather, process and report the data from that particular entity’s economic activities.
This is the point where I expect objections to be raised about the cost of custom developed software, which is precisely why generic accounting software is so prolific as it is mass produced and therefore significantly less expensive. I present the following counter argument.
Every economic entity needs an accountant. This follows directly from the first conclusion above, but since generic accounting software is actually only bookkeeping, it turns out to be more expensive in the long run because a task that could be easily automated is performed by a highly trained, and thereby expensive professional. It makes more economic sense to divert the resources that would expended in 1. acquiring the generic software and 2. continuously paying the accountant for bookkeeping, towards obtaining a system that is designed to specifically fit the economic reality of that entity.
Often the entity already uses a software for the management of its operations, an extreme scenario of which is when entire operation is itself a software, such as is the case of an online shop. How much more sense does it make then, rather than purchasing external bookkeeping software to have instead a bookkeeping module built into the main system. On top of the advantages outlined above this strategy would have the additional benefit of eliminating the middleman problem of having to transfer data from one system to another for accounting treatment.
As an alternative to directly embedding the bookkeeping module directly into an existing application, it may be constructed as a bookkeeping microservice hosted by the entity. The data gathering and recording tasks would then be accomplished by the application making simplified API calls to the service.
In either of the above cases, the accountant would only be required during the initial setup for linking the events being recorded by the operations software with the classification they configure into the bookkeeping module. Afterwards their role becomes one of monitoring and making occasional changes to the configuration in response to changes in the entity.
As a practical example of how a bookkeeping module could be embedded into operations software, I developed a bookkeeping module that can be plugged by a developer into any Laravel application. Afterwards any qualified Accountant can configure the package to collect data from the operation of the overlying application and generate reports compatible with the International Financial Reporting Standards. Please contact me if you think this package could be of use to you, or if you are interested in a custom web based bookkeeping solution built upon the package.
What do you think about my thoughts concerning accounting? Let me know in the comments.