Guaranteed at least a play-off berth, Zvjezdan Misimovic scored twice with Edin Dzeko of Manchester City, Miralem Pjanic and Haris Medunjanin scored Bosnia’s other goals.
France produced the necessary response to Bosnia’s victory as their 3-0 win over Albania gave them the upper hand going into their final qualifier.
Goals from Florent Malouda and Loic Remy put the Group D pacesetters in control by half time and Anthony Reveillere rounded off the win in the second half.
A point will now be sufficient for Laurent Blanc’s men to qualify as group winners on Tuesday.
Italy held Serbia to a draw in Belgrade to remain unbeaten in qualifying Group C and dent their rival’s hopes of playing at Euro 2012.
Needing a win to earn a spot in the play-offs, the hosts got off to the worst possible start as Claudio Marchisio put Italy ahead after 56 seconds.
Chelsea defender Branislav Ivanovic equalised in the 26th minute but Serbia must now beat Slovenia to pip Estonia to the runners-up spot.
Late goals from Georgios Samaras and Theofanis Gekas helped Greece regain control of Group F with a tense 2-0 win over Croatia in Piraeus.
The Greeks started the night knowing a win was almost essential in their penultimate match in the group, with the Croatians enjoying a one-point lead.
Samaras struck in the 71st minute and Gekas added the second eight minutes later to leave the Greeks knowing a point in their final group game in Georgia will be enough to top the group.
Belgium wrested control of the race for a play-off place in Group A with a 4-1 win over Kazakhstan in Brussels, while rivals Turkey were sent crashing 3-1 by group winners Germany in Istanbul.
Belgium must now do better in Germany on Tuesday than the Turks do at home to Azerbaijan.
Holland were made to work harder than expected to extend their 100% record to nine games in Group E, Klaas Jan Huntelaar scoring his 11th goal of the campaign in the 40th minute at home to group minnows Moldova.
Sweden effectively guaranteed the runners-up slot with a 2-1 win in Finland.
Spain also continued their 100% record in qualifying and kept Scotland’s hopes of sealing a play-off place from Group I alive with a dominant win over the Czech Republic.
Juan Mata’s calm finish in the sixth minute put the visitors in control and they doubled their lead midway through the first half as Xabi Alonso slotted home a fine cut-back from David Silva.
Thomas Hubschman was sent off for a wild challenge on Alonso with 21 minutes remaining.
Scotland visit Liechtenstein today before finishing the group in Spain, with qualification still in their hands.
There will also be a final night showdown in Copenhagen after Portugal’s 5-3 win against Iceland and Denmark’s 4-1 win in Cyprus kept Group H as you were heading into Tuesday.
Nani scored twice last night for a Portugal side who now need just a point in the Parken Stadium to claim top spot and force the Danes into the play-offs.