The 25-year-old has been given a four-and-a-half year contract at Ibrox after spending two years with the Perth club.
Saints previously rejected two bids for O'Halloran from the Scottish Championship leaders.
"I'm satisfied with the transfer fee which reflects our full valuation of the player," chairman Steve Brown told the St Johnstone website.
Rangers manager Mark Warburton has confirmed that O'Halloran will be in the squad for Tuesday's visit to Raith Rovers.
"There is nothing to be gained in terms of short term fixes," he said. "We are looking ahead to next season and beyond.
"We are bringing in a quality player who fits the profile of what we are trying to do here."
O'Halloran has scored four goals in 25 games this season, including one in Saints' 3-1 League Cup victory at Ibrox in September.
The Scotland Under-21 international spent his youth career with Celtic then Bolton Wanderers.
He was loaned to three English clubs before joining St Johnstone in January 2014.
Rangers have signed forward Michael O'Halloran from St Johnstone for an undisclosed fee.