Foreign Worker SOCSO (PERKESO) & Mandatory EPF Accounting Journal Entries 2026
A 2026 Malaysia guide to foreign-worker EPF and PERKESO payroll treatment, with balanced accrual, remittance, and bank-settlement journal entries.
TL;DR (Key Takeaways)
- •For a covered non-Malaysian employee who is not a permanent resident, mandatory EPF generally starts with October 2025 wages at 2% employee and 2% employer under KWSP's published Part F rules; confirm exceptions and current rounding guidance before payroll.
- •From 1 June 2026, PERKESO's foreign-worker treatment includes the phased LINDUNG 24 Jam employee contribution; the applicable category depends on facts such as age at first entry or first contribution, so use the current official schedule rather than a generic local-employee table.
- •Accrue gross wages at debit 5100, employer EPF and PERKESO at debit 5200, and the complete obligation at credit 2500; employee deductions reduce net pay but are not extra expenses.
- •GetPay automates the aggregated payroll journal and qualifying bank settlements, but its current calculator has no citizenship-specific branch. A passport value alone does not select the 2026 foreign-worker schedules.
Start with the 2026 answer: classify the worker before calculating
A foreign-worker payroll journal has the same double-entry shape as any employee payroll, but the statutory amounts cannot be selected from nationality-neutral age brackets alone.
For a covered non-Malaysian citizen employee who is not a Malaysian permanent resident, KWSP's published rule generally uses a 2% employee share and a 2% employer share from October 2025 wages. KWSP places this treatment in the Third Schedule, Part F. Its guidance also identifies exceptions and different treatments, including permanent residents and certain people who became EPF members before 1 August 1998. The contribution amount and rounding must follow the current KWSP schedule, not an unrounded percentage copied into a spreadsheet.
PERKESO is also worker-specific. Its foreign-worker guidance distinguishes contribution categories using facts such as the worker's age when first entering or first contributing to the Invalidity Scheme. From 1 June 2026, foreign workers are also within the mandatory phased LINDUNG 24 Jam treatment. During Phase 1, PERKESO's current foreign-worker page shows:
| Share | Employment Injury | Invalidity | LINDUNG 24 Jam | Total headline rate |
|---|---|---|---|---|
| Employer | 1.25% | 0.50% | — | 1.75% |
| Foreign employee | — | 0.50% | 0.75% | 1.25% |
That table is not permission to multiply every foreign worker's wages blindly. Confirm the worker's category, covered wages, current wage ceiling, payroll month, and official contribution schedule. In particular, the second-category treatment may differ where the worker first enters the scheme at an older age or continues working after the relevant threshold.
What employee data must be resolved before payroll?
A reliable foreign-worker payroll record needs enough facts to select the legal schedule and to prove why that schedule was used:
- Citizenship and Malaysian permanent-resident status.
- Valid passport and work-pass status for the payroll month.
- Whether the person is employed under a contract of service or apprenticeship.
- Date of birth and age at the relevant PERKESO entry or first-contribution point.
- EPF membership number and, where relevant, membership cohort.
- PERKESO registration number and contribution category.
- The wages included under each agency's definition for that month.
- Any valid employee election to contribute above the EPF statutory employee rate.
- The official schedules and effective dates used to calculate the payslip.
Do not use a passport number as a substitute for these fields. A passport identifies a person; it does not prove PR status, contribution category, coverage, or a current work pass.
The same caution applies to the phrase “foreign worker payroll tax Malaysia.” EPF and PERKESO contributions are not PCB. Monthly tax deduction is a separate LHDN calculation that depends on the employee's tax facts and current published method. Keep PCB as its own payroll component and do not infer a tax amount from citizenship alone.
Which amounts are expenses, deductions, and liabilities?
The accounting becomes straightforward once employee shares and employer shares are separated.
- Gross wages are the employer's salary expense.
- Employee EPF and PERKESO shares are deductions from gross wages. They reduce cash payable to the employee but do not create a second expense.
- Employer EPF and PERKESO shares are costs on top of gross wages.
- PCB, when applicable, is withheld from the employee and remitted to LHDN; it is not an extra employer payroll expense.
- HRDF, when applicable, is an employer cost and is kept separate in GetPay's posting model.
Using GetPay's seeded chart-of-accounts constants, the earned entry is:
| GL account | Debit | Credit | Meaning |
|---|---|---|---|
| 5100 Salary, Allowance & Wage | Employee gross wages | — | Gross remuneration for EMPLOYEE rows |
| 5200 EPF & Socso | Employer EPF + employer SOCSO/PERKESO + employer EIS if legitimately applicable | — | Employer statutory cost |
| 5210 HRDF Levy | Applicable HRDF | — | Employer levy |
| 2500 Accrued Expenses | — | Total debits | Amount owed to employees and statutory agencies |
The core equation is:
Gross wages
+ employer EPF
+ employer PERKESO
+ any other applicable employer statutory cost
= payroll accrual
Employee deductions explain how the credit to 2500 will be divided among the employee, KWSP, PERKESO, and LHDN. They do not increase the debit total.
What does a worked foreign-worker journal entry look like?
Assume the following narrow example:
- monthly covered wages are RM4,000.00;
- the employee is a covered non-Malaysian citizen who is not a PR;
- the KWSP Part F calculation produces employee EPF RM80.00 and employer EPF RM80.00;
- the worker is in the ordinary PERKESO foreign-worker category represented by the Phase 1 headline rates above, producing employee PERKESO RM50.00 and employer PERKESO RM70.00;
- PCB and HRDF are omitted only to keep the example focused; and
- the official schedules have been checked for the month.
The payslip is:
| Component | Amount (RM) |
|---|---|
| Gross wages | 4,000.00 |
| Less employee EPF | (80.00) |
| Less employee PERKESO | (50.00) |
| Net wages before any PCB or other deduction | 3,870.00 |
The employer's additional statutory cost is RM150.00: RM80.00 employer EPF plus RM70.00 employer PERKESO. The earned journal is therefore:
| GL account | Debit (RM) | Credit (RM) |
|---|---|---|
| 5100 Salary, Allowance & Wage | 4,000.00 | — |
| 5200 EPF & Socso | 150.00 | — |
| 2500 Accrued Expenses | — | 4,150.00 |
| Total | 4,150.00 | 4,150.00 |
The credit is RM4,150.00, not the RM3,870.00 paid to the employee. Settlement is split by payee:
| Payee | Amount (RM) |
|---|---|
| Employee net wages | 3,870.00 |
| KWSP: employee RM80 + employer RM80 | 160.00 |
| PERKESO: employee RM50 + employer RM70 | 120.00 |
| Total cash required | 4,150.00 |
This example deliberately uses a wage amount that produces whole-ringgit EPF results. KWSP's published example shows that when the Part F percentage produces sen, each share may be rounded up to the next ringgit. Always use the official result rather than silently retaining cents.
How do the payment and remittance entries clear the accrual?
The earned entry and the cash entries are separate events. When net salary leaves the bank:
Dr 2500 Accrued Expenses RM3,870
Cr mapped bank account RM3,870
When the combined KWSP remittance clears:
Dr 2500 Accrued Expenses RM160
Cr mapped bank account RM160
When the combined PERKESO remittance clears:
Dr 2500 Accrued Expenses RM120
Cr mapped bank account RM120
After all three payments, debits to 2500 total RM4,150.00 and the example accrual is fully cleared. If only net wages have been paid, RM280.00 remains in 2500 for the statutory remittances. That is a real liability, not an error to sweep into salary expense.
GetPay's bank-import route can automate this settlement shape for debit rows that pass two gates. The category must be one of SALARY, OWNER, EPF, SOCSO_EIS, HRDF, or PCB_TAX, and the description must contain a payroll-related keyword such as salary, gaji, EPF, KWSP, SOCSO, PERKESO, EIS, SIP, PCB, LHDN, HRDF, or PSMB. A recognised bank name is also required so the credit leg maps to the correct bank GL.
That automation clears 2500; it does not prove that the upstream foreign-worker contribution was calculated under the right statutory schedule.
What does GetPay calculate and post today?
GetPay's journal automation is code-grounded. A payroll run aggregates:
EMPLOYEE.grossto debit 5100;- employer EPF + SOCSO + EIS to debit 5200;
- HRDF to debit 5210;
- genuine
PARTNERandDIRECTOR_OWNERdrawings to debit 2200; and - the total to credit 2500.
The payroll calculation is also per employee, but its current inputs are only grossSalary, age, and employee count. The employee record accepts an NRIC or a passport-like identifier, yet it has no dedicated citizenship, PR, work-pass, EPF membership-cohort, or PERKESO first-entry field.
That creates a material 2026 limitation:
- EPF currently branches by age and salary, not foreign-worker status.
- SOCSO currently uses the first-category bracket below age 60 and the second-category employer amount from age 60; it does not represent the foreign-worker entry-age test.
- EIS currently runs for every
EMPLOYEEbelow the calculator's age cut-off; there is no foreign-worker eligibility branch. - The 2026 LINDUNG 24 Jam foreign-worker employee contribution is not a separate calculator field.
skip_statutoryis not a foreign-worker solution because it sets EPF, SOCSO, EIS, PCB, and HRDF all to zero for that run.
Therefore, do not describe GetPay's current calculator as automatically applying the 2026 foreign-worker schedules. The automated GL entry faithfully posts the amounts that the payroll draft contains, but correct journal automation cannot repair an incorrect statutory classification upstream.
What is the safe implementation workflow until citizenship rules are encoded?
Use a control-first workflow:
- Classify each foreign employee using the current KWSP and PERKESO criteria.
- Calculate each share from the official schedule in force for that payroll month.
- Preserve the source schedule, effective date, worker category, and calculation evidence.
- Reconcile gross less employee deductions to net wages.
- Build the accrual with gross at 5100, employer statutory costs at 5200, applicable HRDF at 5210, and the total at 2500.
- Confirm total debits equal total credits before posting.
- Match each net-wage and agency remittance to the real bank debit.
- Investigate the remaining 2500 balance by employee, agency, and payroll month.
For software implementation, add explicit classification fields before adding a foreign-worker rate branch. A reliable rule engine needs to fail closed when citizenship, PR status, entry age, membership cohort, or work-pass eligibility is unknown. A generic “foreign” boolean is not enough to select every EPF and PERKESO exception.
Foreign-worker payroll month-end checklist
- Confirm the employee is legally covered for the payroll month.
- Record citizenship, PR status, valid passport, and work-pass evidence.
- Confirm the applicable KWSP Part and contribution result, including rounding.
- Confirm the applicable PERKESO category and the current LINDUNG 24 Jam phase.
- Keep PCB separate from EPF and PERKESO.
- Debit gross wages to 5100, never net wages.
- Debit only employer statutory shares to 5200.
- Credit the complete payroll obligation to 2500.
- Clear 2500 only against real net-wage and statutory bank payments.
- Do not treat a passport-shaped
ic_numberas a statutory classification. - Do not use
skip_statutoryto approximate foreign-worker rules. - Recheck official KWSP, PERKESO, and LHDN guidance whenever an effective date or employee status changes.
Frequently Asked Questions
What is the mandatory EPF rate for a foreign worker in Malaysia in 2026?
KWSP's published rules generally set both the employee and employer shares at 2% for covered non-Malaysian citizen employees who are not permanent residents, effective from October 2025 wages. Permanent residents, certain older EPF membership cohorts, domestic-worker exclusions, age, work-pass validity, and other exceptions must be checked against the current KWSP schedule.
What PERKESO rate applies to a foreign employee in 2026?
There is no safe one-line answer for every foreign employee. For the ordinary foreign-worker first-category case, PERKESO's current page shows a 1.75% employer share and, from 1 June 2026 during Phase 1, a total 1.25% employee share including LINDUNG 24 Jam. Category eligibility and the official contribution schedule must be checked for the worker and payroll month.
Are employee EPF and SOCSO deductions additional payroll expenses?
No. Employee EPF and PERKESO shares are withheld from gross wages and reduce net pay. The employer shares are additional payroll costs. Debiting both gross wages and employee deductions separately would overstate expense.
What is the foreign-worker payroll accrual journal entry?
Debit 5100 for employee gross wages, debit 5200 for employer EPF and PERKESO contributions, debit 5210 for any applicable HRDF amount, and credit 2500 for the total. When payments clear, debit 2500 and credit the mapped bank account for each net-wage or statutory remittance.
Does GetPay currently calculate foreign-worker EPF and PERKESO automatically?
Not as a citizenship-specific calculation. The current calculator receives gross salary, age, and employee count, but no citizenship, permanent-resident, work-pass, EPF membership-cohort, or PERKESO first-entry fields. Its journal automation is real, but foreign-worker statutory amounts must not be assumed correct merely because the employee record contains a passport number.
Sources & Ground Truth
Ready to automate your Malaysian e-invoicing & bookkeeping?
GetPay handles 100% compliant e-invoices, multi-bank reconciliation, and statutory payroll out of the box.
Related Articles
The Complete Malaysian SME Accounting & LHDN e-Invoicing Blueprint 2026
A practical 2026 blueprint for Malaysian SME accounting, MyInvois e-Invoicing, statutory payroll journals, net-settlement reconciliation, SST and entity controls.
Multi-Currency Invoicing & Foreign Exchange Gain/Loss Double-Entry Journaling
A Malaysia-focused guide to multi-currency invoices, realized and unrealized foreign exchange gains or losses, month-end revaluation, settlement journals, and MyInvois currency fields.
Form EA & Form E Generation: Employer Year-End Statutory Payroll Reporting
A practical Malaysian employer guide to Form EA, e-CP8D and e-E: close payroll, separate employees from contractors, reconcile annual totals, generate reports and file in the correct order.