The home side dominated the opening stages of the game, but struggled to get past a stubborn Nantes defence once they entered the final third.
Gregory Sertic broke free of the defence on seven minutes, but his strike went wide of the post.
Birama Toure had an effort on goal soon after for the visitors, but the defence closed down well to stifle the shot.
Bordeaux almost went ahead after 18 minutes, but Ludovic Obraniak hit the post with his effort.
Sertic came close again on 59 minutes, but his shot was well saved by the goalkeeper.
A minute later, Nantes doubled their lead through Papy Mison Djilobodji, who kept his cool to make it 2-0.
Nantes all but confirmed the points on 64 minutes when Filip Djordjevic added another to increase his side's advantage.
Henri Saivet smashed a shot towards goal as the game drew to a close, but the goalkeeper dealt with it well.