According to Schefter, the deal is worth $40 million, with $22 million guaranteed.
Smith, who spent the first four years of his career with the Baltimore Ravens, announced in a blog post on Sunday that he would be playing for a different team in 2015. The 49ers were reported to be the leading contender for his services.
The 26-year-old was chosen by the Ravens in the second round in 2011 and played in all but two games during his four years in Baltimore. Last season, he recorded 49 catches for a career-low 767 yards and a career-high 11 touchdowns. In 2013, he had a career-high 1,128 receiving yards.
In eight career playoff games, Smith has 414 receiving yards and four touchdowns. He won Super Bowl XLVII while with the Ravens.
The 49ers ranked No. 30 in the NFL for both total passing yards and net passing yards per game last season.
- Molly Geary