How to record a payroll entry?

MoneyWorks is accounting software, not a payroll system; it will not auto-compute the staff salary (e.g. bi-monthly part-timer’s hourly wages or change of CPF contribution according to the employee’s age). A payroll system or a spreadsheet (if it is simple) will do a better job than an accounting system. 

Of course, although the accounting system does not compute payroll, you still have to record the monthly payroll via a general journal or payment transaction to update the ledger.

If you are entering the payroll in a lump sum via a general journal, then the journal could be:

DR. Salary expense (PL)
DR. CPF employer contribution (PL)
     CR. Accrued CPF payable (BS)
     CR. Accrued salary or the bank account (BS)

CPF, the Central Provident Fund, is like the Social Security fund in some countries. The contribution rate will change according to the employee’s age. The employer contribution is a company expense, whereas the employee contribution is deductible from the employee’s salary. Both CPF contributions will be accrued together with the SHG funds and paid out to the CPF Board on the next due.

SHG funds (Self-help group funds) include:

  • Chinese Development Assistance Council (CDAC) Fund
  • Mosque Building and Mendaki Fund (MBMF)
  • Eurasian Community Fund (ECF), and
  • Singapore Indian Development Association (SINDA) Fund.

Assuming the monthly payroll for the company is:

Salary: 10,000
CPF Employer (17%): 1,700
CPF Employee (20%): 2,000
Self-help group funds: 2

Then, the general journal will be:

DR. Salary (PL): 10,000
DR. CPF Employer (PL): 1,700
     CR. Accrued CPF (BS): 3,702
     CR. Accrued salary or the bank account (BS): 6,298

Credit the accrued salary account instead of the bank account, and then use a payment transaction to pay the employee individually with the accrued salary account to facilitate the bank reconciliation later. Of course, you should consider setting a security level on those payroll-related accounts to prevent unauthorised MoneyWorks users from viewing the transaction history.

Set the account security level
Setup Security Level

Payment transaction method

You may also consider using a payment transaction to enter the monthly payroll of each employee instead of using a general journal to record the payroll for the month in a lump sum. This method works if you prefer to view the ledger detail by the employee.

Assuming you have two employees. 

Employee A:
Salary: 3,000
CPF employer contribution (17%): 510
CPF employee contribution (20%): 600
SHG fund: 1

Employee B:
Salary: 4000
CPF employer contribution (17%): 680
CPF employee contribution (20%): 800
SHG fund: 1

To enter the employee payroll for the month, you have to add the expense and less the accrual within a payment transaction. In the payment transaction, select the appropriate bank account and payee, and in the detail section, enter as:

Row1: Salary expense: 3,000
Row2: CPF employer contribution: 510
Row3: Accrued CPF payable: -510 (for CPF employer contribution)
Row4: Accrued CPF payable: -600 (for CPF employee contribution)
Row5: Accrued CPF payable: -1 (for SHG funds deduction)

So, the transaction gross for the payment will be 2,399.00

Payroll payment transaction
Payment transaction

You can enter all the accrued CPF payable into a single row (lump sum) or multiple rows as in my above example, but having rows with descriptions separating different type of deduction facilitate inquiry and printing reports. 

Assuming you wish to print a report by the employee by account. You can first create an account inquiry, then shortlist the employees or transactions and print the list with subtotal by the employee.

Payroll report. By employee by account.
By employee by account report

A payroll system will be more complex in reporting, and more features available (e.g. adjusting CPF rate based on the employee age, calculating the hourly wage for each employee, etc.). Using an accounting system for recording payroll may be workable for those SOHO or small businesses with fewer employees or require only basic payroll entry.

Do visit the Cognito website if your development team would like to integrate the payroll system with MoneyWorks accounting software, or engage a MoneyWorks consultant if you wish to import transactions into the accounting system.

Leave a Reply