The publication reports that the deal will be announced formally Thursday night or Friday morning. The deal can be renewed if certain conditions are met.
Ibrahimovic spent two seasons with Milan from 2010 to 2012, winning a Serie A title, and had long been linked with a return to the club. Sources told ESPN, however, that the 38-year-old was told to lower his wage demands in order to facilitate the move.
Milan director Zvonimir Boban initially cast doubt on the move, due to concerns over the forward's age.
Ibrahimovic earned $7.2 million this past season, according to the MLS players salary database.
The Swedish star has 535 career goals across all levels of competition.
Ibrahimovic was a two-time MLS Best XI selection while helping raise the league's profile.
He had 30 goals and seven assists in 29 matches this past season to finish second in MVP voting, behind LAFC's Carlos Vela.
In 2018, Ibrahimovic had 22 goals and 10 assists in 27 matches (24 starts) while finishing third in MVP balloting behind winner Josef Martinez and Martinez's Atlanta United teammateMiguel Almiron.
Among Ibrahimovic's other achievements include scoring 62 goals in 114 appearances for the Swedish national team, and 421 more in club play.
He has helped his teams win 11 league titles in four different countries.
Information from Reuters was used in this report.
What would Zlatan Ibrahimovic bring to AC Milan?
Stewart Robson believes Zlatan Ibrahimovic could be the answer to Milan's goal-scoring problems.
Ancelotti reacts to Zlatan to Everton rumours
New Everton boss Carlo Ancelotti responds to reports of Zlatan Ibrahimovic joining him at the Toffees.
Visible saw marks on Zlatan statue after more vandalism
Zlatan Ibrahimovic's statue outside Malmo FF's stadium has been vandalised again, this time with a saw.