BHP Group Ltd (LSE:BHP, ASX:BHP) underpaid current and former workers across Australia for 13 years, a review by the firm showed.
The Australian mining giant found that around 28,500 employees received less holiday than they were entitled to, while 400 workers did not get additional allowances "due to an error with the employment entity".
BHP said it has reported the incident to the authorities and the errors will cost the company up to £225mln.
Some affected employees had their leave incorrectly deducted on Australian public holidays, the company found, and as a result were owed a total of six days of leave on average.
"We are sorry to all current and former employees impacted by these errors. This is not good enough and falls short of the standards we expect at BHP," Geraldine Slattery, BHP's Australia president, said.
"We are working to rectify and remediate these issues, with interest, as quickly as possible," she added.
BHP, which is headquartered in Melbourne, is the world's biggest miner.
It has around 80,000 employees and contract workers at sites including the Escondida mine in Chile, which is the largest copper mine in the world.