The GnuCash application doesn’t have a built-in payroll processing module. However, this is the same scenario as you might encounter when dealing with other commercial accounting /bookkeeping software such as Sage 50 or Quickbooks. In the case of most of the commercial accounting software packages, you might have to pay extra to get the payroll module added.
In the case of GnuCash, the general approach to handle payroll is to calculate the payroll taxes and deductions separately using Excel as well as other tools and then use GnuCash for tracking payroll expenses and liabilities. This will be okay for companies employing a small number of employees (e.g., 1 to 10).
Let us describe how to do this with the help of a small business based in Ontario, Canada. Let us assume that “Joyce Schmidt” and “Jacob Bright” are two fictitious employees of the fictitious company “I.T. Software Professional Consulting”, who receive monthly salaries of CAD 5000 and CAD 2000 respectively. Their payroll tax and deductions can be calculated using Canadian tax authority (CRA)’s online tools. We can keep an Excel spreadsheet which shows the deductions and other details such as how much the company has to contribute, etc. Following picture shows sample data for a month:
The following steps describe how GnuCash is updated with the above payroll information.
1] Let us create the expense accounts to keep track of Gross Payroll expenses, another one to track company contribution to CPP and one more account for tracking company contribution to EI premium.
Expenses:Payroll Expenses:Gross Salary
Expenses:Payroll Expenses:CPP Company Contrib
Expenses:Payroll Expenses:EI Company Contrib
2] We also have to create liability accounts in order to track the amount of payments to be made for taxes as well as for CPP and EI premiums.
Liabilities:Govt Payroll Payments:CPP payable
Liabilities:Govt Payroll Payments:EI payable
Liabilities:Govt Payroll Payments:Govt Tax payable
3] Open the checking accounts register and create a new entry for first employee with the name of the employee in the “Description” field. Then, click on split button and then enter the transactions as in the screenshot below. Then click save and then click “Split” icon to compress the transactions to a single row.
4] Click on the payroll transaction row of employee Joyce (step 3) and click on “Duplicate” button to duplicate the transactions on the next row. Click on the newly created row and then click “Split” icon to open all transaction rows. Edit the rows to update the transactions for the second employee as shown below. Save it.
5] Open the chart of accounts and then take a look at the “Expenses -> Payroll Expenses” to view the total cost to company due to payroll expenses
6] At the chart of accounts, select “Liabilities -> Govt Payroll Payments” to view the liability payments to be made to the tax authority
7] In order to view the payroll information of a specific employee, from the top menu, select Edit -> Find and then type the name of the employee (e.g. Jacob), which will display the details.
8] With the window of step 7 open, click on “Reports -> Account Report”, to get a printable view of the employee’s payroll information
It is also possible to use the check printing capabilities of GnuCash to print the employee payment check. You might want to take a look at File -> Print check option.