The Geneva state prosecutor says the federal authorities are not doing enough to fight money laundering and corruption. Bernard Bertossa said in nine out of ten cases, the crime is committed abroad and the money laundered in Switzerland.
In an interview in German-language newspapers, Bertossa, who is known for his outspoken views, said Swiss laws effectively blocked the necessary co-operation needed at the international level to fight such crimes.
He admitted that Switzerland was no worse than many other countries, but said this was no reason not to improve its record.
He said Switzerland's banking secrecy laws were not in themselves responsible for attracting dirty money. "In principle, banking secrecy is a good thing," he said, but that he was "against its being used in an unlawful way."
He said that was the case when it was used by those seeking to evade paying taxes.
"If I say I'm in favour of doing away with banking secrecy, that doesn't mean that Switzerland should act unilaterally, that could be suicidal. We should work together with other financial centres because financial transactions and capital flows - legal or illegal - know no borders," Bertossa added.
He also repeated his criticism that the justice authorities in other cantons are not as willing to fight corruption as his Geneva office.
In many cases, Swiss prosecutors do only as much as they have to when responding to a request for legal assistance from abroad, Bertossa said. "They often say, 'I'll send you the documents in a year' and then they return to the golf course. In Geneva, we start a criminal investigation."
swissinfo with agencies