The 28-year-old Belgium centre-back must now agree personal terms with the Catalan giants and pass a medical.
Vermaelen was a target for Manchester United but they ended their interest after refusing Arsenal’s demand to receive a player as part of the deal.
The move to Barcelona is likely to be completed this weekend, ending Vermaelen’s five-year stay in London.
Vermaelen joined Arsenal from Ajax for £10m in 2009 and has made 150 appearances in all competitions.
But he was troubled by a series of injuries and lost his place at centre-back last season as Arsenal manager Arsene Wenger favoured Per Mertesacker and Laurent Koscielny as his first-choice pairing.
Vermaelen’s form and fitness meant he made just 21 appearances in all competitions last term and Wenger admitted this week that the player needed to move on.
“He could leave, it could happen. I’ve said that since the start of pre-season,” said Wenger.
“He needs to play now. He has shown an outstanding attitude but he is in a position where we wouldn’t stand in his way if he finds an interesting opportunity.”
Vermaelen would become Barca’s second centre-back signing this summer after Valencia’s Jeremy Mathieu, who had been their first recruit in that position since 2009. (BBC Sport)