The 30-year-old had flew into Milan early on Friday to complete the switch, ending his seven-year stint with the Old Lady.
Bonucci was a crucial component in Juventus' 'BBC' back three, on which the club have built their recent success on.
But reports have circulated in recent days that Bonucci's relationship with coach Massimiliano Allegri had deteriorated to a point of no return.
Rossoneri confirm signing
"AC Milan have reached an agreement with Juventus FC for the permanent transfer of Leonardo Bonucci, subject to medical completion," a statement on the club's official website read.
"Should the player pass the medical examination in the next few days, he will join the Club penning a five-year contract."
Bonucci will reportedly earn €8 million per-year, plus a further €2 million in bonuses, and the Rossoneri are said to have shelled out €40 million for his services.
The 30-year-old joined Juventus from a Bari and Genoa co-ownership deal in 2010, with the Old Lady securing his services for a fee of €15.5 million.
A player with pedigree
He has been a mainstay in Juve's last six Serie A successes, and has aided his side's last three Coppa Italia triumphs at the heart of the defence.
However, he had a bust-up with coach Allegri during Juve's 4-1 win over Palermo last season and was subsequently dropped for the Bianconeri's Champions League tie with Porto.
Italian newspaper La Stampa also reported that Bonucci had a go at Allegri at half-time during their 4-1 defeat to Real Madrid in the Champions League final in June.
Milan have already announced the arrivals of Andre Silva (Porto), Andrea Conti (Atalanta), Ricardo Rodriguez (VfL Wolfsburg) and Hakan Calhanoglu (Bayer Leverkusen) this window.
Franck Kessie has also completed his switch from Atalanta, while Mateo Mussachio and Fabio Borini will line-up in Rossoneri next term.