The Italian attacker will join the Ligue 1 title challengers on an initial loan deal and will complete the transfer on Monday following a medical, goal.com reported on Saturday.
The 22-year-old broke into Milan’s ranks in 2012-13 but a plummet in form after the mid-season arrival of Mario Balotelli was followed by a long-term foot injury.
The Italy international never truly shone under Filippo Inzaghi in another fitness-hit campaign and he was deemed surplus to requirements following the arrival of Carlos Bacca and Luiz Adriano.
El Shaarawy will initially join Leonardo Jardim’s men on a two million euros loan deal, although if he features 15 times then it is believed that will trigger a clause to buy for an additional 16 million euros.
Monaco finished third last season in Jardim’s first season in charge and reached the last eight of the Champions League, despite having lost star players such as James Rodriguez and Radamel Falcao.
This summer they have already sold Yannick Ferreira Carrasco and Geoffrey Kondogbia to Atletico Madrid and Inter Milan respectively, while Falcao was once again sent out on a money-spinning loan to the English Premier League, at Chelsea.