Manchester City have signed Argentina forward Julian Alvarez from River Plate for 17m euros (£14.1m).
The 22-year-old has agreed a five-and-a-half-year deal with City but will remain at the Argentine champions on loan until July.
River president Jorge Brito said the Premier League champions met a release clause in Alvarez’s contract.
Alvarez has scored 36 goals in 96 appearances for River and won six international caps.
Considered one of the most gifted young players in South America, he made his Argentina debut last summer and was part of the Argentina squad that won the Copa America in July.
City director of football Txiki Begiristain said: “I really believe we can provide him with the right conditions to fulfil his potential and become a top player.”
Speaking on Sunday, Brito said Alvarez’s departure from River had become inevitable.
“If you look at everything Julian has done, it was always likely his release clause would be met,” Brito told Argentine network Fox Sports Premium.
“The hardest thing was to agree a loan move, because Julian is practically irreplaceable in the squad.”
River coach Marcelo Gallardo said: “It’s a good deal as he gets to stay with us for a little longer and joins a big club, one of the top sides in the world with huge economic power.
“At the moment, City don’t need him and we don’t have to look for a player of his quality, which would be very difficult.”