By David Willey
BBC News, Rome
Leaders say the new law will boost state revenue
Italy's parliament has approved a controversial tax amnesty on undeclared funds held overseas.
Prime Minister Silvio Berlusconi says the expected repatriation of 300bn euros ($437bn, £274bn) will help boost state revenues.
But the left-wing opposition says the amnesty will benefit organised crime.
This is Italy's third tax amnesty in only eight years and has drawn heavy criticism from opposition politicians who have branded it a reward for crime.
The new amnesty not only provides anonymity for anyone repatriating undeclared funds held illegally offshore, but also provides immunity for crimes of false accounting relating to these funds.
Italy has one of the highest rates of tax evasion in the European Union. Italian taxpayers who repatriate funds held illegally abroad will pay the government a relatively small 5% tax rate on their money.
Italy has thus celebrated the global crackdown on offshore tax dodgers decided at a recent G8 meeting by enacting this generous law which opponents say will only encourage more tax evasion in the future.
The governor of the bank of Italy, Mario Draghi, has noted that in similar amnesties in the United States and Britain, the identity of the taxpayer is not kept secret and beneficiaries are obliged to pay the full rate of tax owing plus interest.
Most of the Italian money held abroad is deposited in Switzerland and Luxembourg.
Italian President Giorgio Napolitano says he will sign the new tax amnesty into law during the weekend.