RB Leipzig beat 9-man PSG 2-1 in the Champions League and move level on points with Manchester United in Group H.
Angel di Maria put the French side ahead and then saw a penalty saved before Christopher Nkunku levelled against his old club.
A second penalty of the night proved decisive as Emil Forsberg rattled in.
Former Everton midfielder Idrissa Gueye and Presnel Kimpembe were dismissed for PSG, who have just three points.
The home side were woeful for the first half an hour and PSG, last season’s beaten finalists could have been out of sight in the repeat of last season’s semi-final.
Moise Kean, on loan from Everton, was dominant in attack for PSG as the Leipzig defence showed why they were humbled 5-0 at Old Trafford last week when they conceded four goals in the final 16 minutes.
PSG could have done a similar job as Kean robbed Dayot Upamecano and set up Di Maria to score.
Kean saw a shot hit Upamecano on the hand and Di Maria stepped up, but his tame penalty was saved by Peter Gulacsi.
Di Maria then put the ball away after running from halfway but was clearly offside as PSG looked set for a win without Neymar or Kylian Mbappe.
But after Nkunku – who spent four years at PSG – dragged the home side level from the edge of the area it was a different game.
Forsberg shot over the top after a mazy run but made no mistake from the spot after the referee travelled to the VAR monitor to give a handball.
Gueye can count himself unfortunate to pick up a second yellow for a tame challenge, but Kimpembe – already lucky to stay on after conceding the penalty – could have no complaints about a horror challenge late on as Leipzig threatened to break clear.