Adrian Lopez joined Porto from Atletico Madrid on Saturday, linking up with the Primeira Liga club on their pre-season trip to Netherlands.
Atletico confirmed on their website that Adrian had passed a medical with Porto, allowing the 26-year-old striker to fly with the Portuguese outfit to Eindhoven.
The medical was the final hurdle for Adrian before his transfer from Atletico to Porto would be approved.
"Atletico de Madrid and Porto have reached an agreement for the transfer of Adrian Lopez to the Portuguese club," a statement on Atletico's website read.
"The striker from Asturias leaves for the team directed by the Spanish [coach] Julen Lopetegui."
Earlier, Porto had confirmed on their website that Adrian was part of their 24-man squad for the Dutch tour, posting photos of the forward in club gear, although they did not release any details of a transfer or confirm that one had occurred.
Porto, under new coach Julen Lopetegui, are looking to bounce back in the coming season, after missing out on silverware in 2013/14.
Adrian struggled for regular game time at Atletico last season, as Diego Simeone led them to a breakthrough La Liga title, with the striker starting just four league matches behind regulars Diego Costa, David Villa and Raul Garcia.
In three seasons with Atletico, Adrian scored 26 goals in 143 appearances in all competitions, having joined the capital club from Deportivo La Coruna at the start of the 2011/12 campaign.
With Villa already on his way to expansion franchise New York City in the MLS and Chelsea already agreeing to sign Costa, Adrian's exit to Porto will leave Simeone with a large hole to fill up forward as he looks to defend their Spanish crown.
Croatia striker Mario Mandzukic has already arrived from Bayern Munich during the transfer window.