The euro rose against the dollar to a level last seen 11 months ago Friday, thanks to unexpectedly strong ECB loan repayments and an upbeat confidence report in eurozone powerhouse Germany.
The yen meanwhile hit multi-year lows against the dollar and the euro a day after Japan's vice finance minister indicated the new stimulus-focused government would step in to prevent the currency from regaining strength.
The euro bought $1.3457 around 2200 GMT, up from $1.3376 at the same time Thursday. Earlier it had climbed to $1.3480, its highest level since February 29, 2012.
"The euro rose to an eleven-month high on news that European banks would pay back a larger than expected amount of long-term lending to the European Central Bank," said Nick Bennenbroek of Wells Fargo Bank.
Experts said the rush to repay the emergency ECB funding was a sign of the improved health of the financial markets, that banks were enjoying better access to funding.
"It is no wonder that the euro exchange rate is going up. We see the voluntary return of excess liquidity to the ECB as a strong vote of confidence in the euro," said Berenberg Bank economist Holger Schmieding.
There was more positive news for the eurozone: The Ifo institute's closely watched business climate index for Germany, Europe's top economy, rose in January to a seven-month high.
The yen tumbled, with the dollar buying 90.87 yen compared with 90.40 yen late Thursday. At one point the greenback fetched 91.19 yen, its highest level since June 2010.
"The Japanese yen fell to fresh multi-year lows against the US dollar, taking out the 91-yen mark only a day after Japan's deputy economy minister said that a move towards 100 yen would not be a problem," said David Rodriguez at Daily FX.
In a Wall Street Journal interview published Thursday, Japan's vice finance minister, Takehiko Nakao, said the government was closely watching the yen's movements, adding that "appropriate action" would be taken if it got too strong.
The pound held steady against the dollar, buying $1.5794 compared with $1.5792 late Thursday.
The dollar weakened against the Swiss currency, to 0.9264 francs from 0.9290 francs.