Evaluating accounting systems
reviewing it's customization capabilities
By J. Carlton Collins, CPA
In my opinion, customization capabilities are the most
important features to consider when selecting accounting software. You know, that is really worth saying again. The ability
to customize the software is the most important feature in all of accounting software. The basis for my bold statement can
be found by reviewing the comments made by Doug Burgum (Founder of Great Plains Software) at the 1991 AICPA Technology Conference
in New Orleans. At this conference I moderated a panel of accounting software presidents in front of approximately 450 participants.
During this session, Mr. Burgum pointed to the other presidents and stated:
“The entire accounting software industry, including those seated
on stage, had spent a good part of the eighties adding every conceivable feature they could think of to their accounting software
package. The idea was to have more features so your product would rate higher than competing products in the “feature
charts from hell” comparison reviews included in many computer magazines and trade journals”. According to Burgum,
"The unfortunate consequence of continuously adding so many features to an accounting software package is that you ultimately
produce a product that is bloated and too difficult for most users to use.”
Following this line of thinking, many accounting
software publishers have pursued a strategy to produce accounting software products that contain only the most popular and
widely used features. These products are designed to meet 80% to 85% of the needs of a common business. Thereafter, these
publishers have added built-in easy-to-use customization tools, which allow end users to tailor the product further to meet
90% to 95% of their needs. This approach has worked well. Publishers who have adopted this strategy have found that their
products have wider appeal and usability across multiple industries. This has also allowed hundreds of thousands of businesses
to purchase off-the-shelf accounting packages and tailor them to meet their specific needs.
Customization Has Proven to Be A Better Answer Than
Source Code Modification
In the eighties, the most successful accounting software products allowed
the end user to modify the product's source code to add additional fields, calculations, and other capabilities to accommodate
the end user's unique needs. Some of the more successful packages of that era included products from Real World Corporation,
Open Systems, Inc. and SBT Corporation. It was a good strategy at the time, but this approach had several drawbacks, as follows:
- Modifying the source code is a very involved process
that often required months of programming and costs tens of thousands of dollars.
- While modification was successful for many customers,
too often the results were less than desirable for others. Modification projects often resulted in blown budgets, exceeded
time frames, and non functioning code.
- Poor programming often led to unsatisfied customers
that eventually adversely affected the product's reputation.
- Customers who modified their source code often found
that doing so prohibited them from upgrading to future versions of their accounting software package. Much like painting yourself
into a corner, modifying your source code left you no path to move forward without losing all of your modifications. As the
vendor released new versions of the accounting software, the customer was unable to implement these improvements - thereby
"freezing the capabilities of their product". This was a problem for both the customers who were not able to implement new
product enhancements, and also for the vendors who were unable to generate additional revenue by selling product enhancements
to their existing customer base.
Methods of Customization
The graphic image above depicts the flow of information
through an accounting system. Users input data into data input screens. There are approximately 6,000 data input screens in
the typical mid-range accounting package. The data is held in a database (which is really a bunch of tables that are related
to one another, hence the term relational database. From here, filters are used to extract certain data from the database
to be displayed on the reports and forms. For example, filters may be used to extract balances for certain customers for a
certain data range, and the results are arranged logically on a report with appropriate formatting.
It is essential to understand these elements
before asking whether a given product can be customized. To some publishers, they think that their product is customizable
simply because you can edit the financial statement format on the income statement by inserting more columns or applying different
fonts. Yes, this is customization technically speaking, but it falls well short of true customization. I call this report
Other publishers provide users with the ability
to edit the data input screens. This includes changing the terminology used on the data input screen (you may want to refer to my article on terminology by clicking here), re-positioning fields on the data input screens, and inserting blank user fields on the data input screens. Indeed, this
is very strong and I highly recommend that you seek out this capability. I call this screen level customization.
The most customizable of all products also allows
the user to access the database itself in order to edit and create new tables and fields within the database itself. This
level of customization is much more complicated to build into the product, but the results are that users can freely adapt
a product to their specific needs with some hard work from some experienced programmers. I call this database level customization.
Finally, some products provide the capabilities
to integrate the product with data from third party applications and add specific text to the help screens. Let us review
these three different levels of customization and provide some examples.
- Financial Statement-Level Customization – The most simplistic customization capabilities involve the ability to customize financial statements and reports.
This process usually entails the ability create new financial statements or edit existing financial statement formats. Some
products also allow you to change the font, add lines, and even add graphic pictures, such as a company logo, directly to
the financial statement. This type of customization is fairly common as most products do offer this level of customization;
however, some products offer much easier-to-use tools than others. You should evaluate your prospective products by asking
the reseller to demonstrate the process of inserting a new column and moving an element on both a report and form.
- Report-Level Customization - Another type of customization involves the ability to customize the accounting system forms such as checks, invoices,
picking lists, packing slips, etc. This ability allows the end user to edit the form formats by adding new information to
the form or rearranging the information so that it will print properly on pre-printed forms. As an example, this ability might
allow a user to continue using an old box of pre-printed checks, even though the company has just upgraded to a different
accounting system. As another example, this feature would allow a company to tailor their customer invoice to contain exactly
the information they desire.
- Screen-Level Customization – Allows the user to edit, change and add to the data input screens. You should evaluate your prospective products
by asking the reseller to demonstrate the process of changing data labels, rearranging data fields on screen, changing the
tab order of the fields, inserting new data fields, setting defaults and inserting new tabs on tabbed dialog boxes. It should
be noted that some products provide full control over the data input screen design while others do not. For example, both
QuickBooks Pro 2002 and Peachtree Complete Accounting 2002 allow you to set up a handful of user-definable fields; however,
neither product allows you to change terminology or rearrange the fields on the screen. Other products such as Simply Accounting
allow you to toggle between terminology typically used by accountants and terminology used by the layperson. Still other products
such as Microsoft Solomon IV, Navision Attain, and Exacts’ Macola Progression provide much greater customization capabilities.
The more sophisticated customization tools allow the user to validate data as it is entered into the system, force data (ie:
the user can not leave the data field blank), and even calculate data based on other data entered elsewhere in the system.
Other sophisticated capabilities include the ability to set the tab order of the user fields, insert drop down boxes, and
embed third party applications with the accounting software user input screen.
- Blank User Definable Fields - One of my favorite features is the blank user-definable field. Instead of requiring the end user to modify the product's
source code to add new data fields, many of today's accounting software publishers have already added hundreds of unused fields
throughout the accounting system. The end user need only assign a name to that new field and begin inputting data. You should
make sure to inquire as to how many blank user-definable fields are included in the product. For example, Macola Progression
provides a total of five blank user definable fields in most setup screens. Microsoft Dynamics offers two to ten blank user-definable
fields throughout the relevant user screens. QuickBooks Pro 2002 provides ten blank user-definable fields in key places while
Peachtree Complete Accounting 2002 provides five blank user-definable fields where pertinent to do so.
- Default Settings –
Some accounting software products allow the user to specify default settings on a field-by-field basis. For example, a company
that works primarily in Georgia might pre-configure the customer and order entry screen to automatically display Georgia as
the default state for each new record. This can save time and improve accuracy. At first glance this might not seem to be
much of a time saver, but consider this. Many companies process tens of thousands of invoices each year. Without a default
setting, your order entry clerks would need to enter “Georgia” or “GA” tens of thousands of times
– once for each order. How many hours would it take for you to simply type out the word “Georgia” or “GA”
fifty thousands of times? Assuming that it takes only one second to perform this task, it would still take 14 hours to type
“GA” 50,000 times. A default setting allows the user to simply tab over the data field altogether and skip the
data entry portion for this particular field. Now multiply 14 hours times all of the other fields where default settings are
likely to apply. Most companies have default terms, shipping methods, categories, sales person codes, currency codes, etc.
By simply establishing default data, even modest sized companies can save hundreds, if not thousands of hours each year in
data entry time. As a twist to this feature, some accounting packages allow the user to setup Boolean lists, or drop down
lists to improve speed and accuracy. Still other products enable the user to setup automatic calculations, which enter the
default data on the fly. For example a product may use the system’s date and payment terms to automatically calculate
and enter the discount date or due date.
- Database-Level Customization – Allows the user to change, edit, or add fields and tables to the database. Typically, this is not a feature
designed for end users – instead this feature is usually intended for use by the reseller or consultant. Products that
are particularly strong in this area are Navision Attain, Microsoft Solomon IV, ACCPAC ProSeries, Microsoft Axapta, and MAS
500. There are others. Navision Attain has earned a reputation for extremely powerful, yet fairly easy to use when it comes
to this level of customization.
- Third Party Integration Customization – Yet another aspect of customization capabilities that you may want to consider is that of integrating third
party products with the financial application. Some products are much better than others at achieving this feat. Most popular
products have an import feature that allows you to import a comma separate value (CSV) file from another application like
Microsoft Excel or Microsoft Access. BusinessWorks and Peachtree Complete Accounting 2002 for example allow you to do this.
Other products provide a higher level of integration by providing tools that allow you to link data fields in the accounting
software to data contained in outside applications. For example, Navision Attain provides dataports, which allow the user
to link Attain data fields to virtually any data source outside of Attain. ACCPAC Advantage series is another product with
a good reputation for third party integration capabilities.
- Help-Level Customization – Some products offer the ability to enter additional text directly into the help screens. If done correctly,
this can be a great way to enhance the system. Novice users need only click the menu sensitive help buttons to access specific
instructions pertaining to their company. This feature is contained in many popular products including. This feature is not
Help Level Customization
Products Without Help Level Customization
Open Systems TRAVERSE
MAS 90 &
E by Epicor
JD Edwards One World
ACCPAC Advantage Series
Peachtree Complete Accting
QuickBooks Pro 2002
Avoiding the Source Code Modification Trap
To their credit, accounting software publishers
have implemented customization tools in which users no longer lose their customizations when they upgrade their accounting
software to newer versions. To accomplish this, accounting software vendors have redesigned their code to save user-specific
customizations as separate programming objects or in separate data dictionaries.
For example, Navision Financials employs an elementary
idea to preserve end-user customizations. Navision Financials is written in an object-oriented programming language and accordingly
the resulting product consists of an assortment of numbered "objects" or "programs". The company has designated that those
objects numbered 1 to 9,999 are reserved from use by Navision Software a/s - Navision's parent company based in Denmark. Those
objects numbered 10,000 to 49,999 are reserved for Navision Software -US, the US subsidiary that controls and distributes
the product in the United States. Those objects numbered 50,000 to 99,999 are reserved for end users (and their value added
resellers). With this simple numbering reservation system, customizations and source code modifications can be made by the
parent, subsidiary, and users alike, and the resulting objects will not conflict. This is a simple trick, but one that was
overlooked in the eighties by much of the accounting software community.
Customizations by User, Group, or Globally
Some products allow you to implement customizations
by user, group of users, or globally for all users. For example, customizations could be added that would allow the order
clerk to see an streamlined order entry screen, while other power users might use a more complex order entry screen with more
options. As another example, customer inquiry screens may be customized so that sales reps see summary information or current
information only, while the accounting department’s queries produced detailed and historical customer information.
Customization Tools – Built-in or Add-on?
Some accounting vendors provide the customization
tools as part of the standard product while others require the user to purchase a "customization tool kit" or similar module
in order to implement user customizations. For example Peachtree Complete Accounting, QuickBooks, and Exact’s Macola
Progression have built-in customization tools included in the product. However, Microsoft Navision, Microsoft Great Plains,
and Best Software’s MAS 90 require the user to purchase additional customization modules.
Should Customizations Be Performed by the Value Added Reseller (VAR)
or the End User?
In my opinion, most customization work should be performed
by the value added reseller. The value added reseller has all of the necessary tools, training, and experience to get the
job done right. By comparison, end users will usually include a substantial learning curve, and the results run a greater
risk of not working properly. I am a proponent of doing what you do well, and allowing others to do what they do well. Some
accounting vendors actually discourage end users from customizing their accounting software application by requiring the purchase
of expensive customization tools that may cost as much as $5,000 to $10,000 or more. When evaluating customization capabilities,
it is important to find out if those capabilities are included as part of the standard accounting system, or available only
through the purchase of additional rights, tools, or modules.
In conclusion, the most important feature to
look for in accounting software is the ability to customize the product and tailor it to your specific needs. However, there
are varying levels and degrees of customization capabilities, therefore you must understand these differences and ask the
correct questions of your reseller when evaluating this capability. The ten questions you should ask related to customization
capabilities are as follows:
- Can you customize the financial statements? Show me.
- Can you customize the system reports? Show me.
- Can you customize the checks, customer invoices, and
other forms? Show me.
- Can you customize the data input screens? Show me.
- Does the system provide blank user-definable fields?
- Can you customize the database tables? Show me.
- Can you customize the system by user, group, or globally?
- Can you customize the help screens? Show me.
- Do you lose your customizations when you upgrade to
a newer version of the product?
- Are the customization tools included in the system,
and if not, how much do they cost?
For more information, you may want to read
my individual reviews of the customization capabilities of the following products:
|Oracle Small Business|
|ACCPAC Pro Series|
MAS 90 & MAS 200|
|Open Systems Traverse|
|E by Epicor|
|Microsoft Navision |