VfB Stuttgart striker Mario Gomez will join Bayern Munich in a deal that could make him the most expensive Bundesliga player ever.
Both clubs and the player confirmed they had agreed a deal that media have estimated will be worth about €30m. This would be the biggest in German league history.
Manchester United paid €25m for Owen Hargreaves in 2007.
"I am looking forward to Bayern," Gomez told the club website at the start of an Asian tour with the German national team. "The club is something special. I want to compete for the championship with it and look forward to the Champions League."
Gomez scored 24 times for Stuttgart this season, a personal best, and has long been on Bayern's shopping list. He also won the 2007 championship with Stuttgart.
The move could increase the chances of Bayern playmaker Franck Ribery staying on.
Ribery, courted by most major European clubs, has repeatedly called on Bayern to buy other players to create a more competitive team.
"We managed to hold on to him twice," Stuttgart manager Horst Heldt said about Gomez. "But he has now decided on a change. The fact is that if Bayern meet our conditions then the transfer will be complete in a few days.
The 23-year-old German, whose father is from Spain, has won 23 caps for Germany, scoring six goals, the last more than a year ago.
Gomez said he understood why some Stuttgart fans would be surprised that he was joining rivals Bayern.
"But I hope they will fondly remember the amazing times we lived through together," he added.
The deal only became possible after Bayern clinched the second Bundesliga spot leading to automatic Champions League qualification, guaranteeing them several million euros worth of added revenues.
Bayern confirmed their interest hours after grabbing the spot with a 2-1 win against Stuttgart on Saturday.
"We are delighted that Mario Gomez has decided to join us," said Bayern General Director Karl-Heinz Rummenigge. "He is a first class striker, one of the best in Germany."
Bayern have already signed Anatoliy Tymoschuk from Zenit St. Petersburg, Ivica Olic from Hamburg SV and Alexander Baumjohann from Borussia Moenchengladbach.