1. FC Union Berlin qualified for European competition with a stunning 2-1 win over Leipzig at the Stadion An der Alten Försterei on the final day of the season.
Marvin Freidrich's equaliser after 67 minutes gave Union a glimmer of hope following a scrappy opener for Leipzig's Justin Kluivert.
With results elsewhere going against the Köpenick club, Union had to the business on their own - and they did.
Sheraldo Becker turned Dayot Upamecano and set up Max Kruse in stoppage time to complete the job and send Union into next season's European Conference League.
1. FC Union Berlin: Luthe; Trimmel, Schlotterbeck, Knoche, Friedrich, Lenz (Becker 82); Ryerson (Bülter 83), Gentner (Endo 64), Ingvartsen (Teuchert 64); Kruse, Musa (Awoniyi 58)
RB Leipzig: Martinez; Orban, Upamecano, Klostermann, Halstenberg; Sabitzer, Haidara, Kampl; Forsberg, Hwang, Kluivert
Before Union shaped up for the final time this season, the 2,000-strong crowd at the Alte Försterei serenaded those who will be leaving this summer. Loris Karius, Petar Musa, Christian Gentner, Taiwo Awoniyi, Akaki Gogia, Nico Schlotterbeck, Christopher Lenz and Florian Hübner will head off to pastures new after the end of the campaign. With Robert Andrich suspended and Grischa Prömel injured, Julian Ryerson was accommodated in the centre of midfield. Union knew exactly was at stake from the first whistle and Urs Fischer’s side left everything on the grass. After 15 minutes, the Alte Försterei roared into song behind the team and from there, the Köpenick club went toe-to-toe with the Bundesliga’s runner-up to champions Bayern Munich. Referee Guido Winkelmann intervened for the first time around the 25th minute mark as Justin Kluivert went down on the edge of the box. Kluivert’s claim was waved away and the referee booked Marcel Sabitzer for remonstrating. Union thought they had the deadlock broken after 33 minutes when Musa dribbled clear of the defence, but the Croatian only struck against the woodwork. Union pushed on and created some half-chances with Christopher Lenz striking over from range on 36 minutes. Justin Kluivert threatened at the other end shortly after but his shot was blocked. Before the referee called an end to the first 45 minutes, Julian Nagelsmann’s team passed up a huge opportunity to score. Union threw everything, bodies everywhere in the penalty box in front of the Leipzig players queuing up to score but both Emil Forsberg and Sabitzer were denied.
Into the second half and Leipzig opened the scoring after 55 minutes. Some scrappy defending let Kluivert run through on goal and he finished off into an empty goal. Results in the Bundesliga meant that somehow Urs Fischer's side would have to turn the score around to qualify for European football. Taiwo Awoniyi replaced Petar Musa and gave Union another dimension against the Leipzig rearguard. Cedric Teuchert and Keita Endo were thrown on to give Union fresh legs on the counter-attack as Leipzig seemed content to sit on their lead. On 67 minutes, Union's knock on the door was answered when Friedrich powered home sensationally from Christopher Trimmel's corner kick. The final 20 minutes at the Alte Försterei was something surreal: Union committed everything to scoring the second goal, while at the other end Andreas Luthe pulled off a series of incredible saves to stop Leipzig from ending the contest. Marius Bülter and Sheraldo Becker were the final twist from Fischer and Union in the final minutes. Opportunities sprung up but either the pass or the last decision was lacking. Until the second minute of stoppage time, Becker turned Upamecano in the box, crossed to Kruse at the far post and the experienced marksmen headed past Martinez to send Union into European football.