Bordeaux 0-1 Hearts
Mark de Vries grabbed the winner as Hearts produced one of their best-ever away results in European competition to claim victory in Bordeaux.
It was a personal triumph for Hearts head coach Craig Levein at the Stade Chaban-Delmas after he changed his formation to nullify the French side's dangerous midfield.
New Bordeaux coach Michel Pavon had inspired a run of three games without defeat for the former French champions since taking over from the sacked Elie Baup.
But he was out-thought on this occasion as Hearts subdued their hosts before claiming victory through Dutch striker De Vries 12 minutes from time.
Levein adopted a 3-6-1 formation that meant Andy Kirk, Paul Hartley and Scott Severin all had to settle for a place on the bench to make way for Dennis Wyness, Alan Maybury and Andy Webster.
Kirk had netted five goals in Hearts' last three games, but De Vries was handed sole striking duties as Levein decided to take the shine off the diamond-shaped midfield of their hosts.
Craig Gordon, the 20-year-old goalkeeper, kept his place ahead of Finland international Tepi Moilanen.
Hearts started confidently and should have had a penalty after 20 minutes.
De Vries played the ball wide for Robbie Neilson and Bruno Basto pulled down the Hearts midfielder.
Referee Kristinn Jakobsson gave a free-kick outside the area, although television replays showed that the challenge occurred a couple of yards inside the box.
David Jemmali was the first to seriously threaten the Hearts goal after 26 minutes.
His drive from 25 yards was spilled by Gordon, but McKenna was on hand to clear.
Bordeaux midfielder Pascal Feindouno came close to putting the ball in his own net after 39 minutes, his header from a Neilson cross forcing goalkeeper Ulrich Rame into a fine, fingertip save that just avoided the on-rushing Wyness at the back post.
Hearts were the ones celebrating at the final whistle
Jean-Claude Darcheville almost gave the hosts the lead after 60 minutes, when he slid in to meet a cross at the back post, but his shot struck the inside of the post and was cleared by Webster.
The ball fell to Paulo Costa, but Gordon got down well to hold his low drive from the edge of the box.
Gordon again did well to push away a Mauricio Pochettino drive from 16 yards after 77 minutes.
A minute later, Hearts took the lead. Substitute Hartley flighted a free-kick to the back post, McKenna's header was turned on to the post by goalkeeper Rame and the ball bounced along the goal-line before being forced home by De Vries.
There was still time for Gordon to pull off a breathtaking save to deny Darcheville after a quick turn and shot from 14 yards.
Bordeaux: Rame, Alicarte, Basto, Jemmali, Jurietti (Deivid 80),
Pochettino, Costa, Da Costa (Riera 66), Feindouno, Chamakh,
Subs Not Used: Roux, Caneira, Planus, Miranda, Sahnoun.
Hearts: Gordon, McKenna, Pressley, Webster,
Neilson (McCann 72), Maybury, Stamp (Severin 79), Wyness,
Valois (Hartley 68), Kisnorbo, de Vries.
Subs Not Used: Moilanen, MacFarlane, Kirk, Weir.
Referee: Kristinn Jakobsson (Iceland).