xMatix
Sign in Request demo
xMatix
PRODUCTS
SalesField Sales & SFACRMRewardsClaimsInventoryProcurementWarehouse ManagementField ServiceServiceSupportTelephony & MessagingFinance & AccountingPayrollExpense ManagementCommercePortalsAnalytics & ReportingData StudioMobile AppSee all products →
PLATFORM
Platform overviewApp BuilderAutomationIntegrationsSecurity & GovernanceChange ManagementDevelopers
SENSE AI
Sense AI overviewSense AssistSense ControlSense VisionAI StudioTrust & governanceIn Claude & ChatGPTUse cases
SOLUTIONS
Auto DMSConsumer Goods DMSSales Force Automation (SFA) FMCG & DistributionManufacturing & Dealer NetworksAutomotive & DealershipsPharma & HealthcareConsumer DurablesAgri-InputsBuilding MaterialsService NetworksWarehousing & 3PLFinancial AccountingERP SoftwareIndia GST ComplianceUAE VAT & e-InvoicingSaudi ZATCA & VATAll solutions →
RESOURCES
Knowledge CenterDeveloper & CLIBlogGuidesWhat is xMatix?Company facts
COMPANY
AboutCareersPartnersEventsContactAuthorsLegal
Sign in Request demo
Home/Docs/Payroll/ESI rules
HOW-TO · Last reviewed

ESI rules

An ESI rule holds a company's employee state insurance (ESI) settings: the monthly wage up to which employees are covered, and the employee and employer contribution rates. Each time a payroll run is calculated, the ESI lines on an employee's salary structure take their amounts from the rule in force for the payroll period. The deduction and the employer contribution are then posted to the ESI payable account, and you pay them over with a statutory challan.

Overview

ESI is a percentage of the month's earned wages. It is charged only while the employee's wages are at or below a threshold. Once an employee is covered, they stay covered until the end of the contribution period, even if their pay rises above the threshold. An ESI rule holds:

  • the company it belongs to (Partner Account), or no company, so that it serves every company without a rule of its own,
  • the Wage threshold, the highest monthly wage that is covered,
  • the Employee rate and Employer rate, as percentages,
  • the Effective from date, and an Active box.

The product ships with no ESI rule. You create one from the current statutory figures.

When to use it

  • Before the first payroll run of a company that has employees covered by ESI.
  • When the threshold or the rates change. Add a rule with the new figures and a later Effective from date. Leave the old rule alone.
  • When ESI on a payslip looks wrong. After the employee's ESI applicable box and the salary structure, check the rule.

How xMatix handles it

When you select Calculate on a payroll run, xMatix works out ESI as follows:

  1. Picks one rule for the run. It considers the active rules (Active not cleared, record not deleted) whose Partner Account is the run's company or is blank, and whose Effective from is on or before the end date of the payroll period. A blank Effective from also qualifies. A rule for the run's company always beats a rule with no company, even if the company's rule is older. Within the same group, the rule with the latest Effective from wins. The whole month is charged under that rule. Nothing is split at a mid-month change.
  2. Finds the ESI lines. A structure line is driven by the rule when its payroll component has Statutory type ESI. If the Component type is Deduction, the employee rate applies. If it is EmployerContribution, the employer rate applies. While a rule applies, the line's own Value, Min Amount and Max Amount are ignored, and the line is not prorated again.
  3. Works out the ESI wage. This is the total of the employee's earning lines that come before the ESI line in Sequence order, after any loss-of-pay proration. Reimbursements, payroll adjustments such as a bonus or arrears, and earnings placed after the ESI line are not included.
  4. Checks coverage. When the ESI wage is at or below the Wage threshold, ESI is charged. When it is above the threshold, ESI is 0, unless the employee is in a continuing contribution period (see the next step). A blank threshold means every wage is covered.
  5. Carries coverage through the contribution period. ESI contribution periods run from April to September and from October to March. If an employee had an ESI deduction in a run for an earlier payroll period of the same contribution period, they stay covered for the rest of it. ESI is then charged on the full wage, even above the threshold. A new contribution period starts fresh.
  6. Calculates and rounds. The amount is the ESI wage × the rate ÷ 100, rounded up to the next whole rupee. A blank rate gives 0.

An employee whose ESI applicable box is cleared on their Employee record gets 0 on every ESI line, whether or not a rule exists. A ticked or blank box means ESI applies.

If no rule applies to the run, the ESI lines are calculated from their own settings on the salary structure, exactly as for any other component.

The employee line lowers net pay and adds to the employee's ESI total in the payroll register. The employer line is an employer contribution. It is a cost to the company and does not reduce net pay. When the run posts, both are credited to the Payable GL account of their payroll component.

Prerequisites

  • The payroll company exists as one of your own companies (a partner account).
  • Two payroll components, each with Statutory type ESI. One has Component type Deduction. The other, if the employer contribution is to be recorded, has EmployerContribution. Both need an ESI payable account as their Payable GL account, and the employer component also needs an expense GL account. See Payroll components.
  • The salary structures carry a line for each of these components, placed after every earning in the Sequence. Any calculation type will do, because the rule sets the amount. See Salary structures.
  • Your profile can open the Payroll Settings area and create ESI rule records (see Permissions).

Procedure

Step 1 — Open the ESI rule list

Open the App Launcher, search for Payroll and select the app. Choose Settings, then under Statutory rules choose ESI rules. The All ESI rules view lists every rule with its company, wage threshold, rates and Effective from date.

Step 2 — Create the rule

Select New. The form asks for:

  1. Partner Account: the company whose payroll uses the rule. Leave it blank for a rule that serves every company without a rule of its own. On a tenant with a single company the field is not shown, and the rule applies to that company.
  2. Employer rate and Employee rate: type each as the whole percentage. For example, type 3.25 for 3.25% and 0.75 for 0.75%. Never type the fraction (0.0075).
  3. Effective from: the first day the figures apply.
  4. Wage threshold: the highest monthly wage that is covered, for example 21000.
  5. Active: leave it ticked.

Select Save. The rule gets a number such as ESI-27102026-000001 and opens on its record page. The Details card on that page shows the wage threshold, Effective from, the two rates and Active.

If the save is refused, the message names the field to correct (see Common problems).

Step 3 — Check the result on a run

Calculate a payroll run for a period of the same company that ends on or after the rule's Effective from date. Open an employee's row and check the ESI lines. For an employee whose earned wage is 18,000, the employee line shows 135 (0.75%) and the employer line shows 585 (3.25%). If an amount is wrong, correct the rule, the employee or the structure line, and select Calculate again. Calculate replaces the previous pass for as long as the run has not been posted.

Step 4 — Change the figures when the law changes

  1. Create a new rule for the same company with the new figures and an Effective from date on the first day they apply. It must not start on the same date as another active rule of that company.
  2. Leave the old rule active. Runs for periods that end before the new date keep using it, and later runs take the new rule because it has the later date.

Do this before you calculate the first run under the new figures. A run that is already posted keeps the amounts it was posted with.

Step 5 — Correct or retire a rule

Open the rule and select Edit to change a value. Edit opens the same form as New, including Partner Account. A change affects only runs you calculate afterwards. To stop using a rule, clear Active and save. An inactive rule is never picked, and it is not checked when saved, so you can always retire a rule with a bad value. Clearing Active keeps the rule on record, so prefer it to deleting.

Fields

FieldWhat it meansNotes
Partner AccountThe company the rule is forLists your own companies. Blank = every company that has no ESI rule of its own. A company's own rule always beats a blank-company rule. Hidden on a tenant with a single company. Not shown on the record page's Details card, but is in the list and on the Edit form.
Employer rateThe employer contribution, % of the ESI wageWhole percent: 3.25 = 3.25%. Must be between 0 and 10. Blank = 0.
Employee rateThe employee deduction, % of the ESI wageWhole percent: 0.75 = 0.75%. Must be between 0 and 10. Blank = 0.
Effective fromThe first day the rule appliesCompared with the payroll period's end date. Blank = applies from any date, but loses to any dated rule in the same group. Two active rules of one company may not share a date (two blank dates count as the same date).
Wage thresholdThe highest monthly wage that is coveredA wage equal to the threshold is covered. Must be greater than zero when filled. Blank = no threshold: every wage is covered.
ActiveWhether the rule can be picked by a runTicked or blank = active. Clear it to retire the rule.
NameThe rule's numberFilled automatically when the rule is first saved, in the form ESI-DDMMYYYY-NNNNNN.

Business rules

  • One rule per run. A run picks a single ESI rule for its company and period end date: the company's own rule first, then a rule with no company, and the latest Effective from within each group.
  • No end date. An ESI rule stays in force until a later rule replaces it. That is why two active rules of one company may not start on the same date.
  • Threshold, not ceiling. ESI is charged on the whole wage up to and including the threshold, and is 0 above it. Nothing is capped at the threshold.
  • Contribution periods. April–September and October–March. Any earlier run in the same contribution period that gave the employee an ESI deduction keeps them covered for the rest of it. Only runs that are linked to a payroll period count.
  • Rounding. Each line is rounded up to the next whole rupee, separately for the employee and the employer.
  • The ESI wage. It is made up of earned earnings before the ESI line, after loss of pay. It excludes reimbursements and payroll adjustments.
  • Employee flag. A cleared ESI applicable box zeroes the ESI lines for that person.
  • Register totals. Only the employee Deduction line adds to the run's ESI column. The employer share is counted in the employer contributions.
  • Deposit. ESI is not deposited automatically. Record the payment with a Statutory Challan of type ESI.
  • TDS calculation sheet. The sheet works out ESI from the same rule, but it does not apply the contribution-period carry-over.

Example

A company sets up ESI for its staff. The payroll administrator creates one rule for the company: Wage threshold 21,000, Employee rate 0.75, Employer rate 3.25, Effective from 1 April. The Store Staff salary structure has Basic at Sequence 10, HRA at 20, Special Allowance at 30, then ESI Employee (Deduction, Statutory type ESI) at 60 and ESI Employer (EmployerContribution, Statutory type ESI) at 70.

MonthEarned wageEmployee ESIEmployer ESIWhy
April20,000150650At or below the threshold
May20,450154665153.375 and 664.625, rounded up
July23,000173748Above the threshold, but covered since April in this contribution period
October23,00000A new contribution period starts, and the wage is above the threshold

In October the employee's ESI applicable box is still ticked. ESI is 0 only because the wage is above the threshold at the start of a new period. Each month, the administrator posts the run and records the deposit as an ESI Statutory Challan.

Training

Practice exercise

In a sandbox company whose salary structure already has ESI Deduction and EmployerContribution lines after the earnings:

  1. Create an ESI rule for the company with Wage threshold 21,000, Employee rate 0.75, Employer rate 3.25 and an Effective from before the period.
  2. Calculate a payroll run for an April period, and open an employee whose earned wage is 21,000 or less.
  3. Try to save a second active rule for the same company with the same Effective from.

Expected result: the employee line equals 0.75% of the wage rounded up, and the employer line equals 3.25% rounded up. The second save is refused with a message saying that the first rule is already active for this company from that date.

Quick reference

  • Path: Payroll → Settings → Statutory rules → ESI rules.
  • Type rates as whole percentages: 0.75 and 3.25, not fractions.
  • A wage equal to the threshold is covered. A wage above it gives 0, unless the employee is in a continuing contribution period.
  • Contribution periods: April–September and October–March.
  • Amounts are rounded up to the whole rupee.
  • The company's own rule beats a rule with no company. The latest Effective from on or before the period end wins.
  • For a change of figures, add a new rule with a later Effective from. Don't edit the old one.
  • Put the ESI lines after every earning on the structure.
  • Recalculate an unposted run after changing a rule.

Permissions

Access follows the ESI rule entity permissions in each security profile:

  • See, create, edit and delete. These need read, create, edit and delete on ESI rule. The seeded System Admin, Standard User and Sales Executive profiles have full access.
  • Reach the list. The rule list is in the Payroll Settings area. Of the seeded profiles, only System Admin has that settings app. Other users can find the rules through the App Launcher search only if their profile can read the entity.

Because an ESI rule changes the net pay of every covered employee, restrict create, edit and delete to payroll administrators in your own profiles.

Configuration

WhatWhereEffect
The rules themselvesPayroll → Settings → Statutory rules → ESI rulesThe ESI amounts in every run of the company.
The ESI payroll componentsPayroll → Settings → Pay structure → Payroll componentsStatutory type ESI makes a line rule-driven. Component type decides employee or employer rate. The Payable GL account receives the posting.
The ESI structure linesThe salary structure's component linesTheir Sequence decides which earnings count as the ESI wage. Put them after every earning.
Per-employee exemptionThe Employee record, ESI applicableCleared = ESI is 0 for that person.
Rule namingThe ESI rule document name setting (ESI series)The format of rule numbers.
Depositing ESIPayroll → Pay and comply → Statutory challansA manual challan of type ESI clears the payable. See Statutory challans.

Common problems

"ESI wage threshold must be greater than zero"

The rule has a threshold of 0 or less. Type the threshold, for example 21000, or leave it blank if every wage should be covered.

"Employee rate must be between 0 and 10 percent" or "Employer rate must be between 0 and 10 percent"

The rate is negative or above 10. The rate is a whole percentage, so 0.75 means 0.75%. Check that the employee and employer figures are not swapped, and that no value was typed as a whole number by mistake (for example 75 instead of 0.75).

"ESI rule … is already active for this company from …"

Another active rule of the same company (or another rule with no company) starts on the same date. If two rules both have a blank Effective from, they count as the same date. Give the new rule a different Effective from, or clear Active on one of them.

ESI is 0 for an employee

Check these in order:

  • The employee's ESI applicable box is not cleared.
  • The ESI wage is at or below the threshold, or the employee had ESI earlier in the current contribution period.
  • The ESI line's payroll component has Statutory type exactly ESI.
  • The rule's rates are filled in.

Correct the cause and select Calculate again.

ESI is the line's fixed value, not the rule's percentage

No rule applies to the run. There is no active rule for the run's company or with no company, or every rule starts after the payroll period's end date. Create or correct the rule and calculate again.

ESI is lower than expected

The ESI wage counts only earnings placed before the ESI line, after loss of pay. Earnings with a higher Sequence, payroll adjustments and reimbursements are left out. Move the ESI lines after all earnings.

The new rule did not apply

Either the company still has its own older rule and the new rule has no company, or the new rule's Effective from is after the period's end date. A company's own rule always wins over a rule with no company. Create the new rule for the company itself.

Common questions

Why is ESI still deducted after a pay rise above the threshold?

Coverage lasts for the whole contribution period. If an employee had ESI deducted in an earlier payroll period between April and September (or between October and March), they stay covered until that period ends, and ESI is charged on their full wage. From the first run of the next contribution period, a wage above the threshold gives 0. If the employee should not be covered at all, clear ESI applicable on their Employee record.

Do I need an ESI rule if no employee is covered?

No. Leave the ESI lines off the salary structures and no rule is read. If the lines are on the structures, an employee whose wage is above the threshold pays nothing anyway, and you can clear ESI applicable for anyone else who should be excluded.

Can I change a rule after a run is posted?

Yes, but the posted run keeps the amounts it was posted with and cannot be recalculated. Changes apply to runs you calculate afterwards. If an employee was under- or over-charged, put the difference on a later period as a payroll adjustment linked to the ESI component.

Why does the employer contribution not appear in the ESI column of the register?

The register's ESI column adds up only the employee deduction lines. The employer contribution is a cost to the company, so it is counted with the employer contributions. Both amounts post to the ESI payable account, and both are part of the deposit you record on the challan.