The accord, expected to be formally signed by the two finance ministers in Berlin later on Wednesday 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.
From 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 holding assets in Switzerland from 2000 onwards will have to pay a rate of between 19 and 34 percent, depending on the size of their holdings and how long the cash has been in a Swiss bank.
When the accord comes into force, Swiss banks will pay two billion francs ($2.24 billion) to the German tax authorities.
Once authorities in Berlin receive payments from the taxpayers, they will then reimburse the Swiss banks, increasing the incentive in Switzerland to pressure clients to stump up.
According to German media, between €130 and €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 into a major spat 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 Steinbrueck told the Die Zeit weekly: "It would be better not to have a new double-taxation agreement with Switzerland than to have this bill."
Current Finance Minister Wolfgang Schäuble, however, told the Berliner Zeitung daily he was confident the bill would sail through both houses of parliament.