Tottenham came close to a deal for the 17-year-old Dinamo Zagreb youngster, who is already a full international, last summer.
Arsenal, Manchester City, Manchester United and Chelsea have also been linked along with the likes of Real Madrid and Bayern Munich.
But it is Barca who have won the day to land the player widely considered one of the finest for his age in the world.
Barcelona are reported to have agreed a deal worth around €15million with Dinamo.
Speaking on his Instagram account, Halilovic revealed that he was heading to Barcelona.
"Thank you Dinamo for everything. This is my first club and it will always be my biggest love," he said. "But now it is time for Barcelona."