The accord, due to be formally signed by the two finance ministers in Berlin later in the day and come into force in 2013, could net billions of euros for the German taxman and snare up to 1,000 tax cheats over two years.
As of 2013, German citizens with assets parked in Switzerland's notoriously secretive banks will pay a tax rate of 26.4 percent on these holdings but will be able to remain anonymous.
Germans who have been avoiding tax by hiding their money in Switzerland since at least 2000, will have to pay a rate of between 19 and 34 percent, depending on how much they have and how long it has been hidden.
As part of the agreement, Swiss banks will pay two billion Swiss francs (€1.64 billion, $2.24 billion) to the German tax authorities.
This will gradually be repaid by the German authorities - from monies paid by the new tax-payers. This is intended to increase the incentive in Switzerland to pressure clients to stump up.
According to German media, up to €180 billion in German assets are hidden in Switzerland, meaning the tax proceeds for Berlin could be as high as €54 billion.
The accord aims to close a dispute between the two neighbours that blew up in July 2010, when German authorities raided branches of Credit Suisse bank after buying data on suspected tax dodgers.
Switzerland reacted angrily, saying the data – bought for a reported €2.5 million – was stolen in violation of its banking secrecy laws.
The deal now needs to be approved in both countries' parliaments, with the opposition in Germany already vowing to block it, angry that the accord allows tax evaders to stay anonymous.
Senior Social Democrat and former finance minister Peer Steinbrück told the weekly newspaper Die Zeit,"It would be better not to have a new double-taxation agreement with Switzerland than to have this bill."
Finance Minister Wolfgang Schäuble, however, told the daily newspaper Berliner Zeitung he was confident the bill would sail through both houses of parliament.