EPF ECR 2.0 file format

The ECR is a plain text file with one line per member and eleven fields separated by #~#. Here is the exact layout this tool generates.

The eleven fields, in order

#FieldRule
1UAN *12-digit Universal Account Number. Must be unique in the file.
2NAME *Member name as per EPFO records. Letters, digits, spaces and "." only.
3GROSS_WAGES *Total gross wages earned in the month.
4EPF_WAGESBasic + DA used for EPF. Cannot exceed gross wages.
5EPS_WAGESEPF wages capped at ₹25,000. Cannot exceed EPF wages.
6EDLI_WAGESEPF wages capped at ₹25,000.
7EPF_CONTRIBUTION_REMITTEDEmployee share, 12% of EPF wages.
8EPS_CONTRIBUTION_REMITTEDEmployer EPS share, 8.33% of EPS wages.
9DIFF_EPF_EPS_CONTRIBUTION_REMITTEDEmployer EPF residual: 12% of EPF wages minus the EPS share.
10NCP_DAYSNon-contributory days, a whole number from 0 to 31.
11REFUND_OF_ADVANCESRefund of advances, if any. Leave blank or 0.

* Required. The order must not change.

What one line looks like

Fields are joined by #~#, one member per line, with no header row and no blank line at the end.

100000000001#~#RAHUL SHARMA#30000#25000#25000#25000#3000#2083#917#0#0

This sample is a made-up member earning ₹30,000 with EPF wages of ₹25,000: employee ₹3,000, EPS ₹2,083, employer EPF ₹917.

Common reasons EPFO rejects an ECR file

  • A UAN that is not 12 digits, or appears twice.
  • EPF wages above gross wages, or EPS wages above EPF wages.
  • EPS or EDLI wages above the ₹25,000 ceiling (effective 17 September 2026).
  • Special characters in the name, such as commas or accents.
  • NCP days outside 0 to 31, or a decimal.
  • Wrong delimiter or a changed field order.

The generator checks every one of these before you download, and the blank template already has the right columns.