Hulk gave the visitors the lead in the Signal Iduna Park with Sebastian Kehl levelling before the break. Jose Rondon restored the Russians' lead late on, but it wasn't enough to deny Dortmund a place in the last eight as they held on for a 5-4 aggregate win.
Captain resolves things
Aside from a chance wasted by Pierre-Emerick Aubameyang, who headed wide with the goal gaping, Dortmund lacked the zip and zest of recent weeks. Axel Witsel sent in an early warning which was not heeded as, moments later, Hulk was given the freedom of the field before unleashing an unstoppable shot past Roman Weidenfeller from 25 yards. However, the setback on served to spark BVB into life.
Lewandowski had a chance taken off his toes before Kevin Großkreutz's curling effort was tipped over by Vyacheslav Malafeev. Yet, Zenit were not without their chances to punish any overzealousness on the part of their hosts as Shatov flashed a shot just wide of Roman Weidenfeller's post to provide another warning. Dortmund's nerves were to be settled by their captain, though, as Kehl rose to head them level from close range when all of Dortmund's other efforts had been futile.
With Zenit still needing three more goals to test Dortmund's mettle the pressure was on the visitors, but apart from a few flashes of brilliance from Hulk, the Russian side were unable to crack open a well-drilled Dortmund defence. Attacks heading in the other direction were equally rare with the allure of the renowned Südtribüne lacking its usual magnetising effect.
Going through the motions and playing down the clock, was all Jürgen Klopp's men needed to do, while ensuring the battery levels remained topped up for their upcoming Bundesliga appointments. The plan, however, did not include conceding a second, but substitute Rondon had other ideas, heading in Domenico Criscito's cross. The Venezuelan led Zenit's unlikely search for a third, but Dortmund shut off the supply lines and, despite a defeat at home, took their place in the last eight 5-4 on aggregate.
Dortmund: Weidenfeller - Piszczek, Papastathopoulos, Hummels, Schmelzer (76' Durm) - Kehl, Sahin - Aubameyang (90' Hofmann), Mkhitaryan (69' Jojic), Großkreutz - Lewandowski
FC Zenit: Malafeev - Anyukov, Hubocan, Lombaerts (46' Neto), Criscito - Witsel, Fayzulin (84' Smolnikov) - Hulk, Shatov, Danny - Kerzhakov (62' Rondon)
Goals: 0-1 Hulk (16'), 1-1 Kehl (38'), 1-2 Rondon (73')