Borussia Dortmund retained their Bundesliga crown, after a 2-0 win over Borussia Monchengladbach.
The title race was still alive when the defending champions kicked off, after Bayern Munich netted a last-gasp winner to keep their faint hopes alive earlier in the day.
Meanwhile at the bottom, Cologne gave their survival hopes a boost with a 1-1 draw at home to Stuttgart, but Hertha Berlin could be relegated on Sunday after they lost at home to relegated side Kaiserlautern.
Borussia Dortmund clinched the Bundesliga title with a 2-0 win over Borussia Monchengladbach at the Westfalenstadion.
The champions-elect dominated the game, with 16 shots on goal, whilst Monchengladbach managed just three.
Dortmund took the lead in the 23rd minute, when Ivan Perisic headed in a cross from Marcel Schmelzer.
And the win was sealed in the 59th minute, when Shinji Kagawa finished off a swift counter attack with a left footed strike from a difficult angle.
Bayern Munich delayed Dortmund's promotion party, scoring a last-minute winner at Werder Bremen.
Bayern went behind on 51 minutes, when Naldo stabbed in from close range, following a corner.
But the Brazilian's luck turned after 75 minutes, when he put the ball in his own net. It was little more than Bayern Munich deserved, after dominating possession for much of the game.
And Ribery made sure Dortmund would have to beat Monchengladbach to clinch the title, netting a 90th minute winner for the Champions League semi-finalists.
Cologne kept their survival hopes alive after a 1-1 draw with Stuttgart at the RheinEnergieStadion.
The home side took the lead against the run of play in the 50th minute, when Slawomir Peszko slotted home from close range.
But Stuttgart dominated the game and deservedly netter an equaliser when Cacau slotted home after 71 minutes.
Relegated Kaiserslautern put a nail in the coffin of fellow strugglers Hertha Berlin as they won 2-1 at the Olympic Stadium.
Kaiserlautern, took the lead against the run of play in the 27th minute through Oliver Kirch, and soon doubled their advantage when Andrew Wooten dispatched a left-footed shot into the bottom corner.
Despite the scoreline, the home side continued to dominate the game, and deservedly pulled a goal back on the hour-mark, when Peter Niemeyer headed in from a corner.
But it was not enough for the home side and they will now be relegated, should FC Augsburg beat Schalke on Sunday.
Nurnberg secured their top flight status, whilst Hamburg still need two points to do the same, after a 1-1 draw between the sides at the Frankenstadion.
Heung-Min Son scored his second goal in as many games to give the visitors the lead after 59 minutes, slotting the ball into the right hand corner.
But the lead lasted just five minutes, as Timmy Simons' cross was met by Daniel Didavi to level the scores.
Bayer Leverkusen came out on top against Hoffenheim in a largely uneventful mid-table clash at the Rhein Neckar Arena.
It was a long wait for the deadlock to be broken, before Andre Schurrle netted his sixth goal of the season to claim the points.