Barcelona scored twice in a matter of minutes to beat Bayer Leverkusen having trailed for the majority of their Champions League encounter.
Kyriakos Papadopoulos opened the scoring mid-way through the half after getting the decisive touch on Hakan Calhanoglu’s deadly corner.
Marc-Andre Ter Stegen found himself pinned on the goal line and unable to meet the in-swinging ball, and wasn’t happy with the near post defending of Jeremy Mathieu or Luis Suarez as the Greece defender was first to the centre.
Sergi Roberto levelled the scores inside the last 10 minutes after he fed Jordi Alba and kept on running, Bernd Leno fumbling Munir El-Haddadi’s shot and the midfielder pouncing.
Munir was involved again as Barca took the lead moments later, his persistence getting past a few Leverkusen defenders before he teed up Suarez, who sent a powerful, curling drive past Leno.
Sandro Ramirez was Luis Enrique’s choice to fill the void left by the injured Lionel Messi while Roger Schmidt included former Real Madrid striker Javier Hernandez in the visitors’ XI.
The game’s first chance went to the visitors, Javier Hernandez meeting Karim Bellarabi’s cross at the near post but Ter Stegen was equal to it.
Ivan Rakitic tested Bernd Leno moments later when he met Neymar’s floated cross with his head but the effort was too tame to really trouble the custodian.
Sandro produced a much more impressive stop from Leno after a neat exchange with Luis Suarez, the youngster getting clean through but Leno’s strong hand kept out the shot.
Kevin Kampl’s off-the-ball runs meanwhile kept Barca on their toes and he nearly opened the scoring with one shot before Gerard Pique had to block another moments later.
Pique blocked from Bellarabi to produce the corner that led to the opening goal, Calhanoglu’s delivery wicked, Ter Stegen unable to claw the cross away and Barca’s near post defending not exactly commanding.
Ter Stegen was able to make a point-blank stop when Bellarabi turned away from Pique and hammered the ball towards goal before Barca’s frustration showed as Neymar tumbled under the attention of two defenders and was booked for simulation.
Neymar made a more positive contribution five minutes before half time when he shot across goal, only for the effort to strike the post, and Papadopoulos was there to keep Sandro’s follow-up from crossing the line.
Rakitic sent a free kick straight at Leno and Neymar produced a delightful cross that was cleared as Barca looked to level before the break, without success.
It was Leverkusen who came closest to another goal immediately after the interval when another Bellarabi cross found Hernandez, but he got it all wrong, sending the shot high over the crossbar despite having time and space and being only 10 yards out.
Sandro had his latest chance after Leverkusen lost possession in a bad area and Rakitic teed up the cantera kid, but his powerful shot was dragged wide.
Barca stepped up a gear and an Andres Iniesta dart into the area and lay-off to Rakitic caused problems, the shot blocked and the ball fell to the turning Neymar, whose powerful effort was wide.
Iniesta’s involvement ended soon after as he signalled he needed to be replaced, Barca’s injury list only getting longer, and Neymar looked in some discomfort too – but he was able to send a free-kick only just past the post.
Pique put a header straight into Leno’s palms and Neymar didn’t even get that close when for once he found some space, slicing a left-foot volley well wide of the near post.
Barca were almost out of hope when first Roberto and then Suarez took charge, with Roberto’s fellow substitutes Alba and Munir also playing key roles.
The arrival of Alba gave Barca an attacking impetus sorely missed, and Roberto and Munir likewise deserve credit for their doggedness in not giving up, almost creating a goal and an assist through sheer force of will.
It’s the kind of steel that will be badly needed over the next few weeks without Messi and possibly Iniesta, Barca for the most part off the pace against Leverkusen but ultimately able to take a valuable three points.
Barcelona 2-1 Leverkusen
Papadopoulos 22 (BL), Roberto 80, Suarez 82 (FCB)
Barcelona: Ter Stegen; Alves, Pique, Mascherano, Mathieu; Busquets, Rakitic (Sergi Roberto 72), Iniesta (Alba 61); Sandro (Munir 63), Suarez, Neymar
Bayer Leverkusen: Leno; Donati (Hilbert 76), Tah, Papadopoulos, Wendell; Bender, Calhanoglu, Kramer; Bellarabi (Brandt 66), Kampl, Hernandez (Kiessling 54)
Referee: Atkinson [ENG]