Deon Stegmann and Jamba Ulengo scored two tries each to guide the Vodacom Blue Bulls to a 25-24 bonus-point win over the Pumas in Nelspruit.
The Bulls, who will now host WP in next weekend's semi-finals, started off sloppily at the Mbombela Stadium, but quickly turned things around just as it looked as though the hosts would take control of this contest.
Both teams struggled to get into any rhythm in this stop-start affair.
The Pumas opened up an early 7-0 lead when Marnus Schoeman spinned out of a tackle to score the first try, after some good work by lock Rudi Mathee from a scrum. The Bulls rebounded in the 12th minute when they barged over from the back of a lineout drive, and former Bok flanker Deon Stegmann scored. Their tally was doubled when Ulengo finished off in the left-hand corner from a move that started deep inside their own half.
Tian Schoeman missed the conversions, but kicked a penalty on the stroke of half-time for a 13-10 lead.
In the second half the Bulls made their opportunities count. Stegmann bagged his second and the Bulls' third on the 50-minute mark, before Ulengo raced in to complete his double. Schoeman, who assisted with the last try, nailed the conversion for a 15-point advantage.
The final quarter saw the Pumas storming back. From a missed touch-finder by Schoeman, they mounted a counter-attack and winger Rosco Speckman crossed for a converted effort to close the deficit to eight. They scored again through Mathee, but there was no time to restart the game after Justin van Staden's conversion.
What will be worrying for the Bulls ahead of the play-offs, is the high number of penalties they conceded at the breakdown.
Pumas – Tries: Marnus Schoeman, Rosco Speckman, Rudi Mathee. Conversions: Justin van Staden (3). Penalty: Van Staden.
Bulls – Tries: Deon Stegmann (2), Jamba Ulengo (2). Conversion: Tian Schoeman. Penalty: Schoeman.
Pumas – 15 Hoffman Maritz, 14 Bernado Botha, 13 Jerome Pretorius, 12 Stefan Watermeyer, 11 Rosco Speckman, 10 Justin van Staden, 9 Faf de Klerk, 8 Jason-Colin Fraser, 7 Uzair Cassiem, 6 Marnus Schoeman, 5 Rudi Mathee, 4 Giant Mtyanda, 3 Vincent Koch, 2 Francois du Toit, 1 Corné Fourie. Subs: 16 Frank Herne, 17 De-Jay Terblanché, 18 Marius Coetzer, 19 Dylan Petersen, 20 Reynier van Rooyen, 21 Hennie Skorbinski, 22 Wilmaure Louw.
Bulls – 15 Warrick Gelant, 14 Travis Ismaiel, 13 Dries Swanepoel, 12 Burger Odendaal, 11 Jamba Ulengo, 10 Tian Schoeman, 9 Francois Hougaard, 8 Arno Botha, 7 Lappies Labuschagne (c), 6 Deon Stegmann, 5 Marvin Orie, 4 Jacques du Plessis, 3 Marcel van der Merwe, 2 Bandise Maku, 1 Pierre Schoeman. Subs: 16 Corniel Els, 17 Werner Kruger, 18 RG Snyman, 19 Ruan Steenkamp, 20 Ivan van Zyl, 21 Louis Fouché, 22 William Small-Smith.
Photo: Dirk Kotze/Gallo Images