Barca scored three times in the last few minutes to go through 6-5 on aggregate having lost 4-0 in Paris in the first leg.
Barcelona were ahead after just three minutes when Luis Suarez headed in past goalkeeper Kevin Trapp from close range.
It was 2-0 five minutes from half-time when PSG defender Layvin Kurzawa prodded the ball into his own net after Andres Iniesta had found the key pass with a clever backheel.
Lionel Messi made it 3-0 from the penalty spot just minutes into the second half after Neymar was fouled as Barcelona appeared poised to complete their unlikely comeback.
PSG’s Uruguayan striker Edinson Cavani silenced the Camp Nou with a powerful right-foot drive just after the hour mark.
But two goals from Neymar in three minutes — one from a penalty — brought the Spanish giants level before Roberto stabbed the winner in from close range.