“Andres Iniesta signed his new contract with FC Barcelona at midday,” the club said in a statement.
The 29-year-old Spanish international’s previous contract was due to run out next year and delays in announcing a new deal had sparked speculation about his future in the club.
But Iniesta is now tied to Barcelona until June 2018.
After that date, his contract is automatically extended annually if he has played a certain number of matches in the previous season, the club said.
Winner of three Champions League trophies with Barcelona in 2006, 2009 and 2011, Iniesta was also key to Spain taking the World Cup in 2010 and being crowned European champions in 2008 and 2012.