The 34-year-old is almost certain to miss April's Champions League quarter-final clash against Paris Saint-Germain as he recovers.
Barca club doctor, Ramon Cugat, has not given a return date for Puyol, but admits that the defender has been playing with the injury since October.
"The recovery period will be set by Puyol. It could be a month and a half, or two or three," said Cugat. "He has been carrying the injury since the away game against Getafe in October.
"It came to the point that couldn't play any more with this pain. Taking advantage of the international break and the fact that he has a chance of getting fit again before the end of the season, we decided to do it now. If not, there was a risk of the pain getting worse.
"The pain wasn't going away and this has a psychological effect. The decisive stage of the season was getting nearer and a solution had to be found. It was for the best."
Puyol will miss the game against Rayo Vallecano this evening.