The holders made a big step towards qualifying for the next round of Europe's elite tournament as goals from the Chilean and Lionel Messi saw them take a lead into the second leg.
The hosts did well to limit the Catalans' opportunities in the first half, but Alexis Sanchez broke the deadlock on 41 minutes, giving the titleholders a crucial edge at the interval. Leverkusen responded positively after the break, and drew level through Michal Kadlec, but Sanchez restored Barca's advantage shortly thereafter in the 55th minute.
Lionel Messi scored a critical third for the Catalans at the death, which left the Germans with a mountain to climb ahead of their trip to Camp Nou.
From the start of the game, Leverkusen was content to sit back and defend, as Barca earned approximately 80 percent of the possession in the first half. But for all their time on the ball, the visitors found it difficult to break down their opponents, who rarely ventured out of their defending half.
Play opened up once for Barca on 13 minutes as Sanchez found space on the right to send a low cross towards Messi, but Daniel Schwaab was quick to the danger and made a sliding intervention to concede a corner.
The visitors looked likely to enter halftime frustrated, but with four minutes left to play in the opening period, they found a chance to counterattack, and took the opportunity clinically. Messi this time was the provider for Sanchez as the Argentine floated a lovely ball over the top, and his teammate coolly slotted his finish into the lower left corner of the net.
In need of a goal, Leverkusen played far more positively in the second half, and was rewarded on 52 minutes as Kadlec rose to nod Vedran Corluka's cross into Victor Valdes' net. The sides would only remain level for three minutes, however. At the other end, Cesc Fabregas threaded a well-weighted ball to Sanchez, who rounded Bernd Leno before sliding home to restore the visitors' lead.
The German side again responded aggressively, and came within an inch of restoring parity for a second time. Renato Augusto tested Valdes once before playing in Gonzalo Castro, who had his low shot tipped onto the post by Valdes in the 64th minute.
Barca soon regained its composure at the defensive end, and thanks to a flash of magic from Messi, nearly made it 3-1 with 18 minutes left to play. The talismanic forward beat two defenders near the end line before chipping Leno, but his shot clanged off the post.
Both sides had chances for late goals, with substitute Stefan Kiessling's header forcing a good save from Valdes before Sanchez was denied his hat trick as Leno made a spectacular diving stop. But Messi might have put the tie to rest with two minutes left as he extended his leg to redirecto Dani Alves' cross into the net.
The result sees Barcelona take a two-goal lead into the second leg of the fixture, and means that in order to stand a chance of advancing, Leverkusen will need to score three times at Camp Nou.