Match ends, Liverpool 2, Bordeaux 1.
Liverpool reached the last 32 of the Europa League with one game to spare after coming from behind to beat Bordeaux and go top of Group B.
Henri Saivet fired Bordeaux ahead from 16 yards after keeper Simon Mignolet conceded a needless free-kick for holding on to the ball for 20 seconds - the maximum time allowed is six.
Liverpool levelled through James Milner's penalty after Christian Benteke was fouled by Ludovic Sane.
Benteke's fine finish secured victory.
The Belgium striker beat keeper Cedric Carrasso from 16 yards with a sublime shot on the turn after controlling Nathaniel Clyne's cross.
With one round of group games remaining, Liverpool, whose final match is against second-placed FC Sion in Switzerland on 10 December, are guaranteed a top-two finish.
Bordeaux, bottom of the group and without a win, cannot progress.
Liverpool had to do it the hard way, Bordeaux taking the lead after Mignolet was rightly penalised by referee Alon Yefet from Israel.
According to Fifa's laws of the game, an indirect free-kick is awarded if a goalkeeper controls the ball with his hands for more than six seconds before releasing it from his possession.
The Belgian held on to the ball for more than three times that, prompting the referee to award the set-play that resulted in a goal.
It was a wonderful finish by Saviet, the Senegal international curling home, despite a seven-man Liverpool wall across the six-yard line, after the ball was touched to him by Jaroslav Plasil.
Busy night for Benteke
Even before a ball had been kicked, Liverpool's night had got off to a bad start with the news striker Daniel Sturridge had suffered another injury.
Yet that setback was cushioned by an energetic performance from Benteke which included two disallowed goals, winning the penalty for the equaliser before scoring the decisive goal.
The £32.5m signing from Aston Villa in July had already had an effort ruled out for offside when he was bundled over inside the area by Sane, who was booked, just four minutes after the visitors had taken the lead.
Benteke's winner and fifth goal for the club was worthy of settling any match, the 24-year-old lashing home from just inside the area after wonderful control from Clyne's fine cross.
This was a highly encouraging performance from the powerful striker which suggests he could be a key player this season.
Man of the match - Christian Benteke
What they said
Liverpool manager Jurgen Klopp: "It was an important night for the whole team because we are in the next round. A few weeks ago we were with three points and now we have nine.
"I don't know [about Daniel Sturridge's injury]. We have to wait for some things, it's a fight again, we have to be prepared and we will be prepared.
"The atmosphere tonight was great and we really enjoyed it."
Liverpool have two Premier League games, as well as a League Cup quarter-final, before their sixth and final Group B game away to FC Sion on 10 December.
They host Swansea City on Sunday before playing Southampton away on 2 December for a semi-final place in the Capital One Cup.
The Reds then visit Newcastle in the league on 6 December ahead of the trip to Switzerland to play Sion.
- 4K Touré
- 21LeivaBooked at 60mins
- 24AllenSubstituted forCanat 67'minutes
- 33IbeBooked at 62minsSubstituted forOrigiat 90+2'minutes
- 9BentekeBooked at 85mins
- 11FirminoSubstituted forLallanaat 74'minutes
- 17Biyogo Poko
- 6SaneBooked at 37mins
- 3ContentoBooked at 88mins
- 18PlasilSubstituted forOunasat 84'minutes
- 20Ferreira VieiraSubstituted forMaurice-Belayat 76'minutes
- 27CrivelliSubstituted forDiabatéat 67'minutes
- Alon Yefet
- Shots on Target
Second Half ends, Liverpool 2, Bordeaux 1.
Attempt missed. Cédric Yambéré (Bordeaux) right footed shot from outside the box misses to the left following a set piece situation.
Clément Chantôme (Bordeaux) wins a free kick on the left wing.
Foul by Divock Origi (Liverpool).
Cédric Yambéré (Bordeaux) wins a free kick in the defensive half.
Foul by Christian Benteke (Liverpool).
Attempt missed. Diego Contento (Bordeaux) left footed shot from the centre of the box is high and wide to the left.
Substitution, Liverpool. Divock Origi replaces Jordon Ibe.
Attempt saved. Henri Saivet (Bordeaux) right footed shot from outside the box is saved in the top right corner.
Diego Rolan (Bordeaux) wins a free kick in the attacking half.
Foul by Dejan Lovren (Liverpool).
Diego Contento (Bordeaux) wins a free kick in the defensive half.
Foul by James Milner (Liverpool).
Clément Chantôme (Bordeaux) wins a free kick in the defensive half.
Foul by Christian Benteke (Liverpool).
Diego Contento (Bordeaux) is shown the yellow card.
Foul by Clément Chantôme (Bordeaux).
Christian Benteke (Liverpool) wins a free kick in the defensive half.
Christian Benteke (Liverpool) is shown the yellow card for a bad foul.