South Africa were 192 for seven at lunch in reply to the West Indian first innings total of 408, still 17 short of the follow-on mark
AB de Villiers and Paul Harris defied the West Indian bowlers for most of the morning in a seventh wicket stand of 43 before Bravo struck.
De Villiers, the only top order batsman to shine, made a patient 59 off 127 balls before he was bowled by a superb delivery from Bravo which straightened off the pitch and clipped his off stump.
Bravo followed up with the wicket of Harris, who batted for 100 minutes and faced 68 balls in making nine before he was caught at mid-off when he attempted a forcing shot off the back foot
South Africa suffered an early blow after resuming on 122 for five when Mark Boucher was out in the third over of the morning. Boucher top-edged a hook against Jerome Taylor and was caught by Daren Powell at fine leg.
But De Villiers and Harris dug in before Bravo made the breakthrough. Bravo had figures of two for 22 at lunch.