Ospina, 25, was one of the stars of the World Cup with spectacular performances as his country reached the quarter-finals for the first time. He will compete for an Arsenal starting place with Polish international Wojciech Szczesny.
Arsenal said he would sign a “long-term contract”, but did not give the fee. French reports this week said Arsenal would pay about four million euros ($5.4 million). Ospina has been at Nice for six seasons.
“David Ospina is an excellent goalkeeper, with good experience and a proven record of performing with Nice and Colombia,” said Arsenal manager Arsene Wenger.
“He will add strength to our squad and we are very pleased that he will be joining us.”
Ospina is expected to make his first appearance at the Emirates Cup friendly tournament, which takes place at Arsenal next weekend.
Ospina joined Nice in 2008 from Colombian side Atletico Nacional, for whom he made his professional debut at the age of only 17.
He made his international debut in 2007 and was handed his first start in a 2010 World Cup qualifying match against Bolivia.
His arrival at Arsenal follows the departure of second-choice goalkeeper Lukasz Fabianski, who has joined Swansea City.
Nice coach Claude Puel had confirmed the transfer late on Saturday, after his side lost to London club Brentford in a friendly.
“It’s confirmed, yes,” Puel told Sky Sports News.
“It’s a good affair for Arsenal because he’s a very good player. You will see next season the quality of this player.
“It’s fantastic for him. It’s important for him to try another league, another club, and Arsenal is a fantastic club for him.
“You saw in the World Cup how important a goalkeeper he is,” said Puel.