Switzerland's parliament has voted to approve a deal which would see information on suspected tax evaders passed to US authorities.
The lower house of the Swiss parliament backed the agreement, reversing its earlier decision to reject it last week.
The move is designed to head off US accusations that the Swiss bank UBS is aiding tax evasion.
The US alleges that 4,450 of its citizens hold secret accounts with UBS.
It has already agreed to drop legal action against UBS if the details of those account holders are handed over before the end of August.
But further delays could make meeting that deadline difficult.
The upper house of the Swiss parliament has still to vote on the deal, with a third and final vote from the lower house due on Friday.
There are also calls for a public referendum, which could delay a final decision even further.
Opponents of the agreement have expressed concern that it requires huge changes to Switzerland's banking privacy laws, which have helped its banks attract significant business from wealthy US and European customers.
But politicians and banking analysts also fear that failing to appease the US could result in the bankruptcy of UBS, which is still seen as too weak to withstand the legal action currently being threatened.
The Swiss banking giant was one of the banks worst hit by the financial crisis, having invested heavily in sub-prime loans.