Achraf Hakimi was the unlikely hero with a fine double to ensure Dortmund go top of Champions League Group F on goal difference. However, RB Leipzig tasted defeat at home to Lyon after two individual mistakes.
Slavia Prague 0-2 Borussia Dortmund, Eden Arena
(Hakimi 35' 89')
Dortmund's Moroccan defender Achraf Hakimi was the unlikely hero, scoring both goals as Dortmund downed Slavia Prague with a professional performance on the road.
Dortmund were the more dangerous side in the first half, but Slavia Prague created some chances of their own. The best came from midfielder Lukas Masopust, who beat the offside trap and fended off Raphael Gueirrero, but Roman Bürki emerged quickly and blocked the shot well.
The hosts were made to pay for that miss a few minutes later when Hakimi opened the scoring for Dortmund with a fine solo effort. The defender-cum-midfielder galloped forward on the counter-attack, drove into the box and resisted the temptation to pass to the unmarked Jadon Sancho, instead arrowing a left-foot drive into the roof of the Slavia Prague net.
Prague were playing a high defensive line throughout, allowing Dortmund to get behind them on the counter-attack. Sancho almost took advantage when his pace set him free down the right, but his low cross was just centimeters too far ahead of Marco Reus, who was at full stretch.
Sancho was lively and had a chance to put the game to bed when he was sent clean through on goal after beating the offside trap, but the England teenager over-ran the ball.
Hakimi, however, made no such error with a strong run and assured finish through the legs of Ondrej Kolar to seal the points for Lucien Favre's side late in the match, maintaining Dortmund's unbeaten start to this season's Champions League campaign and keeping thier noses ahead of Barcelona, who edged out Inter Milan 2-1.
RB Leipzig 0-2 Lyon, Red Bull Arena
(Depay 11', Terrier 65')
Two elementary defensive mistakes cost Julian Nagelsmann's side as Lyon ran out comfortable winners in Leipzig.
The hosts fell behind early when Houssem Aouar pounced on Ibrahima Konate's poor attempted clearance, allowing Memphis Depay to do the rest, driving at goal and slotting the ball beyond Peter Gulacsi.
Timo Werner missed Leipzig's best chances of the night either side of that opener. The second arrived when he led a Leipzig counter-attack, but a poor first touch gave him a lot to do and the Germany striker was unable to keep his shot down.
Leipzig went close when Marcelo scrambled to clear off his line and later Marcel Halstenburg forced a strong save out of Anthony Lopes in the Lyon goal with a stinging shot from distance. But they failed to break through and were punished when Martin Terrier doubled Lyon's advantage.
Terrier hounded Nordi Mukiele into a bad mistake, with the Leipzig defender attempting to let the ball run on the edge of his own box. That error allowed Terrier to jump in, carry the ball around Gulacsi, and find the empty net.
Following Zenit Saint Petersburg's win over Benfica, Leipzig are now third in Group G, one point behind Zenit and Lyon.