The 33-year-old left-back, released by Chelsea this summer, has agreed a two-year deal with the option of a third.
Cole tweeted: "Will never forget my time in England was a pleasure, but now onto a new challenge."
Sky Sports revealed on Sunday that Cole was to travel to Italy following successful negotiations between the Serie A club and the player's representative.
Cole, who announced his international retirement after being overlooked by Roy Hodgson for England’s ill-fated World Cup campaign, became a free agent along with Frank Lampard at the end of the season, after Chelsea opted not to renew their contracts.
Cole's agent was involved in discussions with only foreign clubs, with Roma and sides in the MLS showing the strongest interest.
Lampard, meanwhile, told Sky Sports last week that he will also make a decision on his future shortly, with MLS side New York City the most likely destination following talks with the club last month.
Cole signed for Chelsea in a controversial move from rivals Arsenal in 2006 for £5million and went on to make over 300 appearances for the club.
He lifted the Premier League under Carlo Ancelotti in 2010, before clinching the 2012 Champions League under Roberto Di Matteo, as well as the 2013 Europa League with Rafa Benitez, and five FA Cups.
Cole was a bit-part player last season, however, following Jose Mourinho's return to Stamford Bridge and he was deemed surplus to requirements by both his club and country at the end of the campaign.
See Roma in Champions League action next season on Sky Sports 5 - a new channel dedicated to European football.
"Will never forget my time in England....." Played his whole career in England. I guess it could slip his mind.- mercutio777