The Chart of Accounts or CoA defines how financial reports are organized and summarized. This section describes the various configuration options available when creating or editing the CoA.
LedgerSMB provides predefined Chart of Accounts that can be used out of the box for many businesses. Most new LedgerSMB setups start with one of the predefined Charts of Accounts and add or delete as necessary to customize it for their business.
There is also an option to import a Chart of Accounts. Importing is described in Section 18.3.5 on page 18.3.5.
The predefined CoA files are Extensible Markup Language (XML) format files.
LedgerSMB provides an XML Schema Definition (XSD) file, which might help in developing a custom CoA XML file, located at https://github.com/ledgersmb/LedgerSMB/blob/master/doc/company-setup/configuration.xsd.
To use a custom CoA XML file, it will need to be placed in the correct directory prior to running setup.pl. The correct directory will be one of the locale sub-directories in locale/coa.
The predefined Chart of Accounts are organized by country and localized. For the United States the following predefined Chart of Accounts are available:
General.xml
GeneralHierarchical.xml
Manufacturing.xml
Service.xml
UCOA-Form990.xml
UCOA-Form990EZ.xml
Similar predefined Charts of Accounts are available for other countries and languages.
The following examples use the GeneralHierarchical.xml account structure. This file can be found at https://github.com/ledgersmb/LedgerSMB/blob/master/locale/coa/us/GeneralHierarchical.xml.
The system allows ordering accounts into groups by assigning accounts to headers. Headers can themselves be assigned to other headers resulting in hierarchies of account groups.11 1 Although the database structure supports this type of account hierarchy from 1.3, it was not fully in use in reports until 1.4.17. In 1.3 accounts can be assigned a header, but headers can’t be assigned to headers themselves.
There are multiple reasons for wanting to use hierarchies. One of those reasons is that expense accounts in prior versions were listed as one long list under Expenses while income accounts are listed as a -usually shorter- list under Income. Personnel expenses are usually spread across multiple expense accounts. With lots of other expense accounts also listed, what’s the total expense on personnel?
Another use-case for using hierarchies might be because you’re running a ”margin business”. That is, you’re only buying what you’re selling and the cost of goods sold is the largest part of your expenses. In cases like this it can be a good idea to use a different setup of the income statement: one where cost of goods sold is immediately subtracted from income, leaving gross margin to cover all other expenses in the company.
In order to set a heading’s parent, go to the General Journal Chart of Accounts. Click on the account number. If the account is a heading account that has a parent heading, the resulting screen shown in Figure 18.1 on page 18.1.
If the account is a not a heading account, but has a parent heading, then the result is shown in Figure 18.2 on page 18.2.
Headers don’t have any configuration, other than their number and description.
Accounts also have a number and description, but require additional configuration for the application to work correctly.
The settings, which are shown in Figure 18.2 on page 18.2 are described in the following paragraphs.
The main setup consists of the following:
Income statements and balance sheets reports are ordered by account number. Traditionally, account numbers are 4 digits with accounts being grouped by the first digit, but this type of grouping is not enforced by LedgerSMB. Grouping is handled using headings as explained in Section 18.3.2 on page 18.3.2.
Should be a relative short, easy to understand description of what the account is used for.
Asset, Liability, Equity, Equity temporary, Income or Expense.
Optional entry. Used if this account is a child of a heading account.
Balance sheet account balances should - generally - not be reported as negative amounts22 2 Notable exception here are ”cumulative depreciation” accounts in fixed asset accounting, but these are usually marked as ”Contra” – causing them to be reported as positive numbers..: a negative asset is in fact a liability. This functionality reports the given account under the primary header as long as the asset/liability is positive and reports it under the ”negative balance heading” as soon as the asset/liability turns negative (the expectation is that the alternative header is a liability/asset header instead of an asset/liability header).
The items in the configuration box as shown in Figure 18.2 on page 18.2 are used to configure the account for use in LedgerSMB.
There are currently three types of optional summary accounts:
Marking an account as a summary account for AR means that all outstanding receivable amounts will be posted to this account. The Accounts Receivable administration will contain the details of which amount is owed by which customer.
Same as the AR account, except for amounts owed to vendors.
This account holds the monetary value equal to the items on stock.
Each account may have zero, one or more of the following options selected.
This checkmark identifies the account as a contra account, which means that the account is going to hold the opposite of an account it’s associated with. A good example of this kind would be the depreciation account associated with a fixed asset account where the depreciation account contains the credit amount to be added to the original asset (debit) value to get the current asset value.
This checkmark identifies the account as a Tax (VAT/Sales) account. Tax accounts need
This checkmark identifies the account as not being usable going forward. The account cannot be deleted because it may contain data.
In order to enhance the user interface, non-summary accounts may be added to drop down menus throughout LedgerSMB. Adding an account is done by checking the box. Each row in the UI is explained below.
This check mark adds the account to the list of accounts in the transaction screens which are used to post income on.
This check mark adds the account to the list of accounts to choose from in the Receipts (AR) and Payments (AP) screens as well as the payments lines on invoices and transactions. Additionally, it
Adds the account to the customer entry screen’s selection list for accounts to post payment term discounts on.
The payables UI works the same way as the receivables described in the previous list. The difference is that the technical names of the configuration identifiers are prefixed by AP_ instead of AR_.
The items on this line relate to stocked items, i.e. those tracked for inventory: parts and assemblies.
Adds the account to the selection list of income accounts on the part and assembly definition screens.
Adds the account to the selection list of COGS @@@ accounts on the part, assembly and overhead definition screen.
@@@
@@@ TODO Labor/Overhead, when part of an assembly, are capitalized in inventory and accounted for in COGS when the resulting assembly is sold. We should add an explanation to that extent somewhere in the book and refer to it from here.
@@@ TODO Labor sold isn’t ”inventory tracked”, so it is a service. Labor/Overhead used to manufacture assemblies is ”inventory tracked” and capitalized. We should explain somewhere that Labor sold immediately is a service instead.
The items on this line relate to untracked (non stocked) items, i.e. services.
Adds the account to the income account selection list in the service definition screen.
Adds the account to the expense account selection list in the service definition screen.
Marks the account as holding the original asset value for the fixed assets module, for some classes of fixed assets.
Marks the account as holding the cumulative depreciation amount for the fixed assets module, for some classes of fixed assets.
Account to hold book value gain upon disposal of a fixed asset.
Account to hold book value loss upon disposal of a fixed asset.
Special accounts are set by going to System Defaults and scrolling down to ”Default Accounts”.
As you can see, in Figure 18.4 on page 18.4 the heading ”3999 – NET MARGIN” has been selected and is the heading which is used as the highest level for the P&L and lowest level at which income and expenses are being reported in the balance sheet.
The other special accounts are used as follows:
Current earnings - Used to summarize the P&L result as a single line on the Balance Sheet,
Inventory - Used to summarize the inventory value on the balance sheet.
Income - Used to summarize income on the Income Statement.
Cost of Goods Sold - Used to summarize the cost of goods on the Income Statement.
Foreign Exchange Gain - Accounts for the gain in value differences in foreign currencies when recording payments to invoices in foreign currencies. In case an invoice is issued at 1 EUR == 1 USD, but payments arrive when 1 EUR == 0.80 USD, the amount of USD paid is still the invoiced amount, but the EUR amount differs. The EUR difference ends up in the Foreign Exchange Gain or Foreign Exchange Loss accounts. See Section 42.8 on page 42.8 for more information.
A custom Chart of Accounts can be imported in CSV format by going to General Journal Import Chart and selecting the import file.
The import screen list the required fields. Field content definitions are explained above.