So, you want to learn
Bookkeeping!
Chart Of Accounts
by Bean Counter's Dave Marshall

Lesson 2
Types Of Coding Systems


Introduction Lesson 1 Lesson 2 Lesson 3 Lesson 4 Lesson 5
Bean Counter
Types of Coding Systems and their Structure

Earlier we briefly discussed and illustrated some coding systems and how they are used in setting up a chart of accounts. In this section we'll continue to explore the different types of Coding Systems and how they relate to accounting and the chart of accounts.

(a) Sequential
Consecutive numbers are assigned to uniquely identify something. As related to accounting, this something is normally documents. The consecutive numbers are assigned to documents such as checks, invoices, purchase orders, receiving reports, customer payments, etc. in order to control and identify specific documents.

Pre printed forms such as checks or customer invoices with the numbers 0001 thru 9999 assigned are examples of using a sequential coding system.

(b) Blocks or Groups
Block codes use characters (numbers and/or letters) to assign or organize something into special unique groups or categories. The block is actually a range (block) of characters that uniquely identify something. Block codes usually have a fixed length.

As I stated earlier, Block Codes using number ranges, is probably the most frequent coding method used when setting up a manual or computerized charts of accounts.

Block coding often uses sub-blocks to further identify accounts. A Sub-Block is a grouping or range within a block or within another sub-block that identify subsets of data.

Let's continue our discussion utilizing our earlier example of a block numbering system. If you recall, the example looked like the following:

Example of a Simple Account Numbering System Using Block Coding with Numbers

Eight Blocks of Numbers have been used to assign account groups based on the types of accounts in the following example.

Block Assigned Type of Account
100-199 Assets
200-299 Liabilities
300-399 Owner's Equity
400-499 Revenues
500-599 Costs of Goods Sold
600-699 Expenses
700-799 Other Revenue
800-899 Other Expenses

One limitation of our earlier account codes presented above is that you're limited to 100 accounts of each type. How could I easily provide for 1000 accounts of each group or type ?

By simply making the account number 4 digits (numbers) in length instead of 3 digits (numbers) as illustrated below.

Our new account structure using 4 digits (numbers):

Block Assigned Type of Account
1000-1999 Assets
2000-2999 Liabilities
3000-3999 Owner's Equity
4000-4999 Revenues
5000-5999 Costs of Goods Sold
6000-6999 Expenses
7000-7999 Other Revenue
8000-8999 Other Expenses

Looking at our sample table above what does it tell us ?

  • The blocks or ranges identify the different major types of accounts -assets, liabilities, owner's equity, revenue, and costs/expenses.
    • The first block of numbers 1000-1999 is a range of numbers used to create and identify the different types of asset accounts.
    • The second block of numbers 2000-2999 is a range of numbers used to create and identify the different types of liability accounts.
    • The third block of numbers 3000-3999 is a range of numbers used to create and identify the different types of owner's equity accounts.
    • The fourth block of numbers 4000-4999 is a range of numbers used to create and identify the different types of revenue accounts.
    • The fifth block of numbers 5000-5999 is a range of numbers used to create and identify the different types of cost of goods sold accounts. 
    • The sixth block of numbers 6000-6999 is a range of numbers used to create and identify the different types of expense accounts.
    • The seventh block of numbers 7000-7999 is a range of numbers used to create and identify the different types of other revenue accounts.
    • The eighth block of numbers 8000-8999 is a range of numbers used to create and identify the different types of other expense accounts.
  • Our blocks have a fixed length of four ( 4 digits ).
    By choosing this coding structure we can only set up 1000 accounts for each block. Using our Asset Block as an example, it is possible to set up a maximum of 1,000 different asset accounts using the numbers 1000-1999. While this is probably more than adequate for small and medium size businesses a big business could possibly outgrow this coding system.

    Of course, you could also add sub blocks and extend the number of accounts that could be set up.

  • If you know the first digit of an account, you can tell what type of an account it is. If the first digit is a 1, the account is an asset, if its a 2, the account is a liability, and so on.
  • We are limited to where we can insert a new account by the numbers (codes) already used.
    If you used Account Number 1000 as Cash In Bank but later would like to add A Cash On Hand Account and have it listed ahead of Cash In Bank in your chart of accounts you can't without revising your structure. If you've already been recording transactions, reorganizing your chart of accounts is not an easy task.
Let's assign some account numbers using our new 4 digit (numbers) code structure like we did earlier with our 3 digit (numbers) structure:
  • The account Cash which is an asset account would be assigned a number using the block 1000 - 1999.
    1000 - Cash
  • The account Accounts Payable which is a liability account would be assigned a number using the block 2000 - 2999. 2000 - Accounts Payable
  • The account Sales which is a revenue account would be assigned a number using the block 4000 -4999. 4000 - Retail Sales

We would continue this process for all the individual accounts that are needed or required for recording and reporting your business transactions.

Your final chart of accounts might resemble the following simple chart of accounts:

Simple Chart Of Accounts

Assets (1000-1999)
1000-Cash in Banks
1001-Petty Cash Fund
1002-Accounts Receivable
1003-Inventory
1005-Materials and Supplies
1007-Prepaid Expenses
1008-Deposits
1200-Land
1201-Buildings
1202-Accumulated Depreciation -- Buildings
1203-Tools and Equipment
1204-Accumulated Depreciation -- Tools and Equipment
1205-Vehicles
1206-Accumulated Depreciation -- Vehicles
1207-Furniture and Fixtures
1208-Accumulated Depreciation -- Furniture and Fixtures
1300-Organization Expenses

Liabilities (2000-2999)
2000-Accounts Payable
2001-Notes Payable
2005-Sales Taxes-Payable
2006-FICA Taxes-Payable
2007-Federal Withholding Taxes
2008-State Withholding Taxes
2009-Unemployment Taxes
2200-Long-Term Debt
2205-Miscellaneous Accruals

Capital Accounts (3000-3999)
3000-Owner's Capital Account
3001-Owner's Withdrawals

Sales (Revenue) Accounts (4000-4999)
4000-Retail Sales
4001-Wholesale Sales
4002-Sales-Service

Cost Of Sales (5000-5999)
5000-Cost Of Goods Sold

Expenses (6000-6999)
6000-Salaries and Wages
6001-Contract Labor
6002-Payroll Taxes
6003-Utilities
6004-Telephone
6005-Rent
6006-Office Supplies
6007-Postage
6008-Maintenance Expense
6009-Insurance
6100-Interest
6101-Depreciation
6103-Entertainment
6102-Travel Expense
6104-Advertising
6105-Dues and Contributions

Other Revenue (7000-7999)
7000-Miscellaneous Income

Other Expenses (8000-8999)
8000-Miscellaneous Expenses

I'm not going to leave you hanging. I earlier mentioned sub-blocks and that they could be used to increase the number of accounts, but didn't illustrate or discuss them. One "flaw" in our chart of accounts is that if we have more than one bank account, we should set up an account for each one of them. How would we go about this ? In order to accomplish this we're going to use a sub-block to identify each of the accounts. Our sub-block for identifying locations is a 2 digit (number) and is represented by the range 00-99. Let's use our Cash Account to illustrate what our account structure now looks like.

Old Structure:
Cash Account
1000 - Cash In Banks

New Structure with a Sub-block Added:
Cash Account
1000-00 Cash In Banks Bank Account #1
1000-01 Cash In Banks Bank Account #2
1000-02 Cash In Banks Bank Account #3

Notice that our account structure can still accommodate ninety seven (97) additional bank accounts with the unused digits (codes) 03-99.

We can attach this sub-block range to each of our original accounts if we need to further identify our accounts. With our old structure we could accommodate a maximum of 8000 accounts (1000 - 8999). By adding our sub-block we can now accommodate 800,000 accounts. How did I arrive at this number ? Well, each account has now be expanded to 10 accounts. If I multiply correctly, 8000 X 100 = 800,000.

(c) Hierarchical

Structure that resembles an upside down tree structure. Information is classified and grouped into successive levels or layers. I say upside down tree because the root of the tree begins at the top and the tree branches go downward while a normal tree structure has it root at the bottom and the branches go upward. Some examples of this type of structure are a company's organization chart and an ancestry chart. The structure depends on defining parent and child relationships.

Using this type of coding system for developing a chart of accounts allows summary, subtotals, and detailed information to be reported.

If you recall, we stated earlier that block coding often uses sub-blocks to further identify accounts. A Sub-Block is a grouping or range within a block or within another sub-block that identify subsets of data. Here, we're going to use block coding with sub-blocks to build our hierarchical chart of accounts.

As they say, seeing is believing , so let's use an example to illustrate. To define our sample hierarchical account structure we're going to use 14 digits (x-xx-xxx-xxxx-xxxx).

The digits are grouped and are used to identify the following:

Digits Group
or Category
Maximum Number Of Groups Sub-Block
Assigned
Summary or Detail
Account
1st 1 10 0-9 Summary Account
2nd & 3rd 2 100 for each Group Defined in Category 1 00-99 Summary Account
4th, 5th, & 6th 3 1000 for each Group Defined in Category 2 000-999 Summary Account
7th, 8th, 9th, & 10th 4 10000 for each Group Defined in Category 3 0000-9999 Summary Account
11th, 12th, 13th, & 14th 5 10000 for each Group Defined in Category 4 0000-9999 Detail Account

Our example will use the first digit of each account number to indicate the major type of accounts and whether the account is a balance sheet or income statement account. Account numbers beginning with a 1, 2 or 3 will be part of the Balance Sheet. Accounts beginning with a 4 or 5 will be part of the Income Statement or Profit and Loss Statement.

Balance Sheet
1 - Assets
2 - Liabilities
3 - Owner's Equity

Income Statement
4 - Revenue
5 - Expenses

Let's use a chart to get an idea of how our hierarchical coding structure might look.

1 - Assets
  00
    000
      0000
        0001
        0002
      1000
        0001
        0002
      2000
        0001
        0002
2 - Liabilities
  00
    000
      0000
        0001
        0002
      1000
        0001
        0002
      2000
        0001
        0002
3 - Owner's Equity
  00
    000
      0000
        0001
        0002
      1000
        0001
        0002
      2000
        0001
        0002
4 - Revenue
  00
    000
      0000
        0001
        0002
      1000
        0001
        0002
      2000
        0001
        0002
5 - Expenses
  00
    000
      0000
        0001
        0002
      1000
        0001
        0002
      2000
        0001
        0002

Using this coding structure let's begin building our Chart Of Accounts starting with our Assets.

1 Assets - Category 1 Code - 1
Summary Account
Account Balance is the sum of all the Asset Account Balances
Parent of all the Asset Accounts

1-00 Current Assets - Category 2 Code - 00
Summary Account
Account Balance is the sum of all the Current Asset Account Balances
Child of Assets
Parent of all the Current Asset Accounts

1-00-000 Cash - Category 3 Code - 000
Summary Account
Account Balance is the sum of all the Cash Account Balances
Child of Current Assets
Parent of all the Cash Accounts

1-00-000-0000 Cash - Petty Cash - Category 4 Code - 0000
Summary Account
Account Balance is the sum of all the Petty Cash Account Balances
Child of Cash
Parent of all the Petty Cash Accounts

Sub-Accounts
1-00-000-0000-0001 Cash - Petty Cash -Fund #1 - Category 5 Code - 0001
Detail Account
Child of Petty Cash
1-00-000-0000-0002 Cash - Petty Cash -Fund #2 - Category 5 Code - 0002
Detail Account
Child of Petty Cash

1-00-000-1000 Cash - Register / Drawer - Category 4 Code - 1000
Summary Account
Account Balance is the sum of all the Cash - Register / Drawer Account Balances
Child of Cash
Parent of all the Cash - Register / Drawer Accounts

Sub-Accounts
1-00-000-1000-0001 Cash - Register / Drawer - Register Drawer #1 - Category 5 Code - 0001
Detail Account
Child of Cash - Register / Drawer Account
1-00-000-1000-0002 Cash - Register / Drawer - Register Drawer #2 - Category 5 Code - 0002
Detail Account
Child of Cash - Register / Drawer Account

1-00-000-2000 Cash - Bank - Category 4 Code - 20000
Summary Account
Account Balance is the sum of all the Cash - Bank Account Balances
Child of Cash
Parent of all the Cash - Bank Accounts

Sub-Accounts
1-00-000-2000-0001 Cash - Bank - Bank Account #1 - Category 5 Code - 0001
Detail Account
Child of Cash - Bank Account
1-00-000-2000-0002 Cash - Bank -Bank Account #2 - Category 5 Code - 0002
Detail Account
Child of Cash - Bank Account

To further illustrate our hierarchical chart of accounts structure I created the following table:

1 ASSETS Category 1 Code
  00 Current Category 2 Code
    000 Cash Category 3 Code
      0000 Petty Category 4 Code
        0001 Fund #1 Category 5 Code
        0002 Fund #2 Category 5 Code
      1000 Register / Drawer Category 4 Code
        0001 Register / Drawer #1 Category 5 Code
        0002 Register / Drawer #2 Category 5 Code
      2000 Bank Category 4 Code
        0001 Bank Account #1 Category 5 Code
        0002 Bank Account #2 Category 5 Code
    100 Receivables Category 3 Code
      0000 Accounts Receivable Category 4 Code
        0001 Customer Category 5 Code
        0002 Other Category 5 Code
  20 Property & Equipment Category 2 Code
    000 Property Category 3 Code
      0000 Land Category 4 Code
        0001 Land Development Category 5 Code
        0001 Land Plants Category 5 Code
    500 Equipment Category 3 Code

What does our table illustrate ?

  • The table (chart) is structured hierarchically, with all the accounts listed below and to the right of a given account title adding together to make the total of that given account.
  • Accounts are either Summary or Detail accounts.
    • Summary Accounts sum the balances of other accounts.
    • Detail Accounts are the accounts actually charged.
  • All parent accounts are summary accounts.
  • Some accounts are both a parent and a child.
  • Sub block ranges can be the same as long as they are used with different account categories.
  • The full 14- digits define the detail accounts. The detail accounts are the accounts that actually receive the entries (charges).
  • The hierarchical structure is more adaptable to a computer than a manual system. Why ? With a manual system when we posted to a detail account we would also have to total and calculate all the balances for the summary accounts. In other words, we would be totalling each category or sublevel and maintaining the balance of the summary accounts. You can definitely count me out of this! Using a computer with the appropriate software, the summaries would automatically be calculated and maintained.

Going A Little Further

What if my business has several Locations and needs to easily determine the total assets for each of the different Locations ? What if my business has several Departments and needs to easily determine the total assets assigned to each Department ?

Unfortunately, the structure of the above chart does not provide us with this type of information. Could we fix it ? You betcha we can. How ? By expanding our coding system and adding additional account identifiers.

First, we'll add a Location Account Identifier.
1-00-000-0000-0001-01 Cash - Petty Cash -Fund #1 - Location # 1
1-00-000-0000-0002-01 Cash - Petty Cash -Fund #2 - Location # 1

Nest we'll add a Department Account Identifier
1-00-000-0000-0001-01-001 Cash - Petty Cash - Fund #1 - Location # 1 - Department # 1
1-00-000-0000-0002-01-001 Cash - Petty Cash - Fund #2 - Location # 1 - Department # 1

Now we have the capability of obtaining the information we want.

(d) Mnemonic

Mnemonic means something that aids the memory. Mnemonic coding systems use letters and/or numbers as an aid for identifying and remembering something. If you recall, I mentioned earlier that most codes are meaningless by themselves. This is an exception. This is a code that conveys meaning by itself. Abbreviations that we commonly use is an excellent example of using mnemonic codes.

A possible use of mnemonic codes used with a chart of accounts would be using codes similar to the following for identifying and assigning the type of accounts.

Mnemonic Code Identifies
Type Account
A Assets
L Liabilities
O Owner's Equity
R Revenue
C Cost of Goods Sold
E Expenses

(e) Faceted

Alphabetic characters and/or numbers are often used to identify pieces of information called facets that can also be used to define accounts. Each facet is a piece of information. The facets are combined like building blocks to construct an account.

A faceted code is one that is made up of group or category codes (code segments) each of which identifies a unit of information. In constructing a faceted chart of accounts, the complete account code is actually made up of many mini-codes (facets). Each mini-code (facet) tells us something about the account.

To illustrate the use of a faceted code, we're going to use our mnemonic code for the type of accounts from above as one of our facets (code segments) and add an additional mnemonic facet (code segment) representing the account's name to develop a simple chart of accounts using our earlier example of a simple chart of accounts that used block codes.

We already have our table for the type of assets, so now we need to define our other facet which is the account name. In this table we're going to use an abbreviated alphabetic code instead of a number (numeric) code like we did in an earlier example.

Mnemonic Facet
Account Short Name
Account Full Name
CA Cash In Bank
PC Petty Cash Fund
AR Accounts Receivable
INV Inventory
MS Material & Supplies
PREPAY Prepaid Expenses
DEP Deposits
LAND Land
BLDG Buildings
ADBLDG Accumulated Depreciation - Buildings
TE Tools & Equipment
ADTE Accumulated Depreciation - Tools & Equipment
VEH Vehicles
ADVEH Accumulated Depreciation - Vehicles
FF Furniture & Fixtures
ADFF Accumulated Depreciation - Furniture & Fixtures
ORG Organization Costs
AP Accounts Payable
NP Notes Payable
STP Sales Taxes Payable
FICA FICA Taxes - Payable
FWHT Federal Withholding Taxes
SWHT State Withholding Taxes
UT Unemployment Taxes
LTD Long-Term Debt
MA Miscellaneous Accruals
OCAP Owner's Capital Account
OWITH Owner's Withdrawals
RETSALE Retail Sales
WHSALE Wholesale Sales
SERVSALE Service Sales
COGS Cost Of Goods Sold
SW Salaries and Wages
CL Contract Labor
PRT Payroll Taxes
UTIL Utilities
TEL Telephone
RENT Rent
OFFSUP Office Supplies
POST Postage
MAINT Maintenance Expense
INS Insurance Expense
DEPREC Depreciation
ENT Entertainment
TRVL Travel
ADV Advertising
DCONT Dues and Contributions
MISCI Miscellaneous Revenue
MISCE Miscellaneous Expenses

Our last step to build our new simple chart of accounts is to combine or assemble our two facets (code segments), type of assets and abbreviated account name.

Simple Chart Of Accounts
Using Mnemonic Codes and Facets

To create our first account we'll use the A facet to identify the account as an Asset and the CA facet to further identify the account as Cash. A-CA is our first account. We would continue this process of assigning our facets (code segments) to arrive at the following completed chart of accounts:

Account Account Name
A-CA Cash In Bank
A-PC Petty Cash Fund
A-AR Accounts Receivable
A-INV Inventory
A-MS Material and Supplies
A-PREPAY Prepaid Expenses
A-DEP Deposits
A-LAND Land
A-BLDG Buildings
A-ADBLDG Accumulated Depreciation - Buildings
A-TE Tools and Equipment
A-ADTE Accumulated Depreciation - Tools and Equipment
A-VEH Vehicles
A-ADVEH Accumulated Depreciation - Vehicles
A-FF Furniture and Fixtures
A-ADFF Accumulated Depreciation - Furniture and Fixtures
A-ORG Organization Expenses
L-AP Accounts Payable
L-NP Notes Payable
L-STP Sales Tax Payable
L-FICA FICA Taxes Payable
L-FWHT Federal Withholding Taxes
L-SWHT State Withholding Taxes
L-UT Unemployment Tax
L-MA Miscellaneous Accruals
O-OCAP Owner's Capital Account
O-OWITH Owner's Withdrawals
R-RETSAL Retail Sales
R-WHSAL Wholesale Revenue
R-SERVSAL Service Sales
C-COGS Cost of Goods Sold
E-SW Salaries and Wages
E-CL Contract Labor
E-PRT Payroll Taxes
E-UTIL Utilities
E-TEL Telephone
E-RENT Rent
E-OFFSUP Office Supplies
E-POST Postage
E-MAINT Maintenance
E-INS Insurance
E-DEPREC Depreciation
E-ENT Entertainment
E-TVL Travel
E-ADV Advertising
E-DCONT Donations and Contributions
R-MISCI Miscellaneous Income
E-MISCE Miscellaneous Expenses

Just a quick review. What does the first character of our chart of accounts tell us ? Hopefully, you said the type of account.
A-Asset
L-Liability
O-Owner's Equity
C-Cost Of Goods Sold
R-Revenue
E-Expenses

How about the remaining characters ? They identify the specific accounts, cash, accounts receivable, etc.

If you recall, the advantage of using mnemonic codes is that they help trigger your memory. Which one of these accounts triggers your memory
1000 or A-CA ?

Although they both are acceptable and identify the Cash Account, personally, I prefer the mnemonic code structure (A-CA).

(f) Combination Coding System
While it might appear that you have to select one type of coding system to use for your chart of accounts this is not necessarily the case. Unless the accounting software you plan on using dictates a specific coding system that has to be used , you can use numbers and/or alphanumeric characters and a combination of hierarchical codes, block codes, faceted codes, and mnemonic codes to develop your chart of accounts.

Mixed codes can sometimes offer more understandability and flexibility than using one type of coding system by itself.

Actually, we've already used a combination coding system for our above simple chart of accounts. We first set up our mnemonic codes that identified and defined information about our accounts and then combined the pieces of information (facets).

Coding Summary

Using codes is not a difficult concept. After becoming familiar with the codes, they allow us to convey a lot of meaning with just a few characters. Think of them as an abbreviation for something. My full name is David William Marshall but my name can be conveyed to those who know me using DWM, a code called initials.

Codes when used with a chart of accounts identify and convey all the attributes (characteristics) of an account that are either needed or required for reporting on and controlling the financial activities of a business. In general, an attribute is a property or characteristic. Color, make, and model, for example, are all attributes of a car. Some attributes that may be assigned to an account are the account name, account description, type of account, normal balance type - debit or credit, etc.

<--BACK        NEXT-->
Introduction Lesson 1 Lesson 2 Lesson 3 Lesson 4 Lesson 5
Bean Counter