The law, which follows a string of recent scandals in which politicians allegedly paid family members for fake jobs, will scrap cash handouts for lawmakers to spend on areas and NGOs of their choice.
The Parliament had last week already voted through aspects of the law banning MPs and ministers from employing their family members, as Macron's new centrist government seeks to restore public trust in politicians.
“Practices... that were probably tolerated, maybe accepted for some time, are no longer accepted today,” Prime Minister Edouard Philippe told French radio.
The 2017 presidential campaign was rocked by allegations that his rival and Les Républicains candidate François Fillon employed his wife as a publicly-funded assistant for years despite little evidence of any work.
Fillon was the strong favourite to win the election until revelations at the end of January that he had employed his wife Penelope.
But his poll standings plunged as he struggled to convince voters that his wife and their children had worked to justify their pre-tax income of around 900,000 euros over 15 years.
- with AFP
Fillon was charged with misusing public money in March, just weeks before crashing out of the first round of the presidential election. He denies any wrongdoing.
The passage of the ethics bill will be a welcome achievement for 39-year-old Macron, who has seen his approval ratings plummet after less than three months in office.
One survey published last week showed just 36 per cent of respondents held a positive view of the former economy minister.