An official announcement on the move from fellow Serie A club Fiorentina was expected later Friday.
Often compared to Zlatan Ibrahimovic, the Serb has 17 goals in Serie A this season and Juventus are ready to pay around 70 million euros for the youngster as they seek to fill the goal gap left by Cristiano Ronaldo.
Vlahovic’s signing is expected to help Juventus in its bid to get in the Champions League.
The team is currently a point off the top four, having played a game more than fourth-placed Atalanta.
Juventus tweeted a picture of a 21-year old smiling Vlahovic outside his medical, doing a double thumbs up.