Form EA and Malaysian payroll year end

Malaysian payroll year end is three separate documents that people routinely confuse. Form EA goes to the employee, Form E goes to LHDN, and C.P.8D goes with Form E. Here is what each one carries and what has to be true about your employee data before any of them can be produced.

Updated . Figures verified June 2026 against KWSP, PERKESO, LHDN and HRD Corp guidance. General information, not tax or legal advice.

Three documents, three jobs

The three Malaysian year-end payroll documents
DocumentOfficial nameGoes toPurpose
Form EAC.P.8AEach employeeStatement of that employee's remuneration for the year
Form EC.P.8LHDNThe employer's own annual return
C.P.8DC.P.8DLHDN, with Form EListing of every employee's particulars and remuneration

Form EA is not filed. It is handed to the employee, who uses it to complete their own tax return. Form E is the filing, and C.P.8D is the schedule that accompanies it. All three are built from the same approved payroll runs, so they should reconcile to the ringgit.

What goes in each part of Form EA

The current form, Pin. 2024, runs from Part A to Part F. The structure matters because misplacing income between parts changes the employee's tax return, not just the presentation.

Structure of Form EA (C.P.8A, Pin. 2024)
PartContents
AEmployee particulars, including the tax identification number
BEmployment income, benefits and living accommodation
CPensions and other payments, including compensation for loss of employment
DTotal deductions, including PCB, zakat and TP1 reliefs claimed through payroll
EContributions to approved provident funds and SOCSO
FTax-exempt allowances, perquisites, gifts and benefits
Employee SOCSO and SKBBK are reported together
The Pin. 2024 form has no separate line for Lindung 24 Jam, so SKBBK is folded into the annual SOCSO employee total. That is worth revisiting if the form gains a line for it in a later revision.

Mapping pay items to EA lines

Form EA is only as good as the mapping behind it. Every earning in your payroll has to be assigned to an EA income line: basic salary and most cash allowances to the employment income lines in Part B, benefits in kind and living accommodation to their own lines, and genuinely exempt items to Part F.

  • Unmapped income is the risk. Anything without an explicit mapping should default into ordinary employment income rather than being dropped, so nothing silently disappears from the employee's statement.
  • Exempt pay is the other risk. Items placed in Part F are excluded from the taxable totals, so a mapping error there understates income.
  • Do the mapping when you create a pay item, not in January. Retrofitting a year of runs is where reconciliation errors come from.

C.P.8D and the data it needs

C.P.8D is a per-employee record with a fixed field layout, and several of its fields come from the employee record rather than from payroll:

  • The tax identification number, reduced to its digits, and an identity document number.
  • A retirement or end-of-contract date, which is compulsory. A leaver reports their actual leaving date. A permanent employee still in post reports date of birth plus 60, the minimum retirement age. Fixed-term staff need a real contract end date, because a retirement age says nothing about when their term ends.
  • Total gross remuneration, which is the whole Part B and Part C total rather than a residual, with the benefit and accommodation columns repeating as memo breakdowns.

Getting employee data clean first

Year end fails on data, not arithmetic. Before generating anything, check that:

  • Every employee has a tax identification number of the right length.
  • Every employee has an identity document number, with an NRIC's dashes stripped and a passport's letters preserved.
  • Fixed-term employees have a contract end date recorded.
  • Every month of the year has an approved payroll run behind it.
  • Every pay item used during the year maps to an EA income line.

Half a tax number files the wrong person, so a missing or over-length identifier should be surfaced as a gap to fix rather than padded with zeroes and filed.

The year-end sequence

  • Through the year — keep pay item mappings correct and approve each month's run, since the annual forms aggregate approved months only.
  • By the end of February — issue Form EA to every employee who worked during the year, including leavers.
  • By 31 March — file Form E with C.P.8D.

The figures on all of this come from the monthly statutory calculations. If those are right, year end is a formatting exercise. See the PCB guide for the deduction totals that land in Part D and the EPF guide for the contribution totals in Part E.

Frequently asked questions

What is Form EA?
Form EA, formally C.P.8A, is the statement of remuneration an employer gives each employee for a calendar year. Employees use it to complete their own income tax return. It is handed to the employee rather than filed with LHDN.
What is the difference between Form EA and Form E?
Form EA is issued to each employee. Form E, formally C.P.8, is the employer's own annual return filed with LHDN, and it is submitted together with C.P.8D, the listing of employee particulars and remuneration.
When must Form EA be given to employees?
By the last day of February following the year of assessment, ahead of the employer's own Form E filing.
What information do I need before generating Form EA?
Each employee needs a valid tax identification number and identity document, and the year's approved payroll runs must be complete. Pay items also need to be mapped to the correct EA income lines so that allowances, benefits in kind and exempt pay land in the right part of the form.

Related guides

Let the software do the arithmetic

Payroll applies these rates on every monthly run and produces the payslips, submission files and EA forms that follow from them.