On the eve of his 2015 re-election bid, Mayor Rahm Emanuel signed an executive order requiring city contractors to pay their employees $13 an hour – 9 percent more than the $11.93 then required – and broadened the “living wage” umbrella to include airport concessionaires.

He called it a “downpayment” on the broader promise delivered three months later: raising Chicago’s minimum wage to $13-an-hour by 2019 for all employees, helping Emanuel undercut the progressive base of his strongest challengers in the 2015 race for mayor.

Now, Inspector General Joe Ferguson is accusing the Emanuel administration of falling down on the job of enforcement — allowing three sub-contractors to underpay their employees by $291,816 over-a-three-year period.

Ferguson tested compliance with the mayor’s executive order by reviewing wages paid by four companies hired by the city to provide security guard and janitorial services along with their sub-contractors.

The four prime contractors “consistently paid” their employees the wage required by the city – which currently stands at $12.30-an-hour.

But three of their four subcontractors paid anywhere from two-cents-to-$3.04-an-hour less than the city mandate.

The accused companies were identified as: All Points Security Services; Majestic Protective Service, Inc. and Digby’s Detective and Security Services.

Together, they allegedly underpaid 150 employees by $22,664 over a four-to-six-week period reviewed each year in 2014, 2015 and 2016. That allegedly resulted in an estimated underpayment of $291,816 over the course of three years.

In addition, Ferguson found “several smaller wage discrepancies” resulting from “misapplication of state law” or city code pertaining to “overtime and training hours.” Companies accused of those lesser violations were Universal Security, All Points Security Services and Digby’s.

“The city did not implement sufficient controls to provide reasonable assurance that prime contractors and subcontractors comply,” Ferguson wrote in an audit released Thursday.

Ferguson urged Chief Procurement Officer Jamie Rhee to flex her muscle – and start by requiring the three sub-contractors in question to pinpoint the base, overtime and training wages employees were shorted and to pay them what they are owed.

If the contractors and sub-contractors refuse to cooperate, Ferguson recommended that Rhee “pursue contractual remedies” that include the “death penalty”: barring companies from doing business with the city for a three-year period.

To prevent widespread abuse, Ferguson urged Rhee to move aggressively to “promote compliance.” That includes sending annual wage increase announcements and requiring contractors to submit “annual certification of wage rate compliance” for themselves and their subs.

All city departments managing contracts with wage requirements should also be provided with “specific procedures” to confirm “proper base, overtime and training wages paid by both primes and subs,” the inspector general said.

The audit findings are an embarrassment to a mayor better known for touting his own accomplishments than for his follow-through.

Rhee said Thursday she has sent “default notices and requests to cure” to the two prime contractors that demand proof that their subs have “paid the correct base wages to all of their employees throughout the life of their contracts.”

If employees were underpaid, Rhee said she has demanded a “schedule” for reimbursement and “periodic updates confirming compliance” going forward.

She also plans to work with user departments to develop “methods for actively monitoring” wage rate compliance by city contractors.

“We need to make sure people are making the proper wages, which is why we have a complaint form on our website,” Rhee told the Chicago Sun-Times.

“The primes were all in compliance. It’s the subs that were not. The prime needs to ensure that the sub-contractors are paying the proper wages as well as making sure those subs are in compliance with all of the city’s regulations.”

Rhee denied that City Hall dropped the ball on enforcement.

“What really sparked this was folks availed themselves and said, ‘I’m not being paid the proper wages.’ We’ve been working with them through the entire process,” she said.