Paying monthly salaries
Each month you record attendance, bonuses, deductions and advances, then create one salary voucher that works out every employee's net salary and pays it. All of this is under HR Payroll › Monthly Payroll, one tab per step, with one month picker at the top (see Tabs and the month picker). First add the month on the Month Setting tab.
Dates and amounts on these pages and on the payroll reports use the date format, number format, time zone and base currency of your Company Profile.
Currencies
An employee is paid in the currency of their salary package: the package chosen for them in that month's Month Setting, or their default package when the month has none yet. With Show Multi Currency off, every package is in the base currency.
- A bonus, deduction or advance is entered in the employee's currency for its month. The code is shown next to the amount box, and the lists show the amount with its code (amounts in the base currency show no code).
- On the salary voucher, each employee's line is in their package currency. The voucher itself is in the base currency: each line is converted at its package's exchange rate, and the Total row is the base-currency total that is paid and posted.
- An advance is taken back at the base amount it was paid at, so the Employee Advance account is cleared exactly even if the rate changed.
Attendance: Present, Leave and Absent
Attendance › Add: choose the Date (it starts in the chosen month). Every employee starts as Present; change only the ones who were on Leave or Absent, add a note if you want, and Save.
| Status | Effect on the salary |
|---|---|
| Present | Paid |
| Leave | Paid, up to the designation's Leave Days in that month. Leave days above that are deducted like an absence |
| Absent | Deducted |
You don't have to record every day: a day you don't record counts as Present. The Attendance tab lists the recorded days of the chosen month with how many were Present, on Leave and Absent; click a day's edit icon to open it and change it. Saving the same date again replaces that day's attendance. Once the month's salary is paid, its attendance can't be changed or deleted ("This month's salary is already paid, so its attendance can't be changed.").
Bonuses and deductions
Bonus / Deduction › Add: choose the Employee and Month, and enter a Bonus Amount and/or Deduction Amount with a note. Neither can be negative, and at least one must be more than zero. They are added to or taken from that month's salary once approved: Save as Draft keeps one that does not count yet, Save and Approve (needs the approve permission) makes it count, and a draft is approved later with the check icon on the list. One bonus / deduction per employee per month ("This employee already has a bonus / deduction for this month. Edit that one instead."); this also applies when an edit moves it to another employee or month. Once the month's salary is paid, nothing can be added to or changed in that month ("The salary for … is already paid, so this can't be saved for that month."): the voucher was already worked out, so it would never be paid. A bonus / deduction can be edited or deleted (the delete icon on the list) until a salary voucher includes it.
Advance payments
Advances › Add: salary paid to an employee before payday.
- Choose the Employee, the Salary Month it will be deducted from, the Date and the Amount (more than zero).
- Choose Paid Through (cash or bank) and add the bank details for a bank payment.
- Enter a Note (required). Reference No is optional: your own reference, for example a receipt, transfer or request number (50 characters at most). It shows on the Advances list, the Advance Payment Report and the payslip.
- Save as Draft (nothing is posted, no cash goes out and the salary voucher does not take it back) or Save and Post (needs the approve permission). A draft is posted later with the check icon on the list; the month must still be unpaid. See Draft and approved documents.
One advance per employee per month ("This employee already has an advance for this month. Edit that one instead."), also when an edit moves it to another employee or month. If the amount is over the employee's designation Advance Amount, you are asked whether to continue; 0 on the designation means no limit. An advance can't be added to, or moved into, a month whose salary is already paid. Paying an advance from a cash account follows the Negative Cash setting: when it would make cash negative, it is refused while Negative Cash is off, and you are asked to confirm while it is on.
The advance is posted to the Employee Advance account set in Ledger Configuration: Dr Employee Advance, Cr cash/bank. That month's salary voucher takes it back. An advance used on a salary voucher can't be edited or deleted. Deleting an advance removes its ledger postings too, so the cash or bank account and Employee Advance go back to what they were. If the account isn't set, saving stops with "Set the Employee Advance account in Settings > Ledger Config."
The salary voucher
Salary Voucher › Add:
Choose the Month, Voucher Date, Paid Through account and Project. Reference No is optional (for example the bank transfer number); it shows on the Salary Voucher list and on the payslips.
Every employee in that month's Month Setting is listed (when the month has no Month Setting, a warning says so) with:
Column Meaning Bonus / Deduction From Bonus Deduction for that month Advance The advance for that month Absent Absent days in the month Leave Leave days taken / paid leave days allowed (red when over the allowance) LOP Days Absent days + leave days above the allowance LOP Loss of pay: salary ÷ 30 × LOP days Salary (net) package + bonus − deduction − advance − LOP When someone took more leave than their designation allows, a warning names them.
Check the lines and Save as Draft or Save and Post (needs the approve permission). A draft locks the month (its attendance, advances and bonuses / deductions can no longer change) but posts nothing and pays nothing until it is posted with the check icon on the list. Only posted advances and approved bonuses / deductions are counted. Saving is refused when:
- the Voucher Date is in a closed period;
- no Paid Through account or Project is chosen;
- an employee's net salary is below zero (their deduction, advance and loss of pay are more than their salary): lower the deduction or advance first;
- the total would make a cash account negative while Negative Cash is off (while it's on, you're asked to confirm).
- the month still has draft advances or bonuses / deductions ("This month still has draft advances or bonuses / deductions. Post / approve or delete them first.").
The voucher posts:
| Account | Debit | Credit |
|---|---|---|
| Salaries | net salaries + advances | |
| Paid Through (cash/bank) | net salaries | |
| Employee Advance | advances |
All three are in the base currency (see Currencies). So the salary expense is the full salary, and the advance paid earlier is cleared. Everything is saved together or not at all. Each month can be paid once ("Already payment this month."). A paid voucher can be deleted, for example to correct it, as long as the period is open. Deleting it removes the voucher, its lines and all its ledger postings together (salary expense, cash or bank, and Employee Advance), so the accounts go back to what they were; the month's attendance, advances and bonuses can then be changed and the month paid again.
The Monthly Salary Report lists each month's salaries per employee (it opens at the current month; set From Date earlier for past months), and the Advance Payment Report lists advances. To give each employee a printed payslip, use Payslips on the Salary Voucher tab (see Payslips).