Ayanda Gcaba scored a goal late in extra-time to ensure the home side overcome a stubborn AmaTuks outfit, to set up a qiartefinal clash with Mariztburg United.
Pirates dominated the first half but had to wait until the 39th minute to break the deadlock, with a throw-in from the left-flank worked toward the centre where Thabo Rakhale guided a long-range shot into the top-right corner.
This proved to be the only highlight of the first half, with Bucs’ attack otherwise frustrated by their inability to provide an incisive final pass, while the visitors offered almost nothing going forward.
Tuks were much improved after the break and threatened an equaliser in the 53rd minute, when Bongani Nyathi’s low shot deflected off the heel of Rooi Mahamutsa and forced Felipe Ovono into a fine save low to his right.
Two minutes later Tuks took advantage of some poor defending from the hosts to level the game, with Thabo Mosadi’s cross from the right flank headed into the back of the net by an unmarked Thabo Mnyamane.
Pirates thought they had reclaimed the lead in the 68th minute when Lehlogonolo Maselesa headed the ball into the net from close range, but the goal was ruled out due to a marginal offside call.
The match went to extra time and Bucs had a great chance to move ahead just before the half-way point of the 30 minutes when they were gifted a soft penalty for Khethukuthula Zwane’s hand-ball. However, Kermit Erasmus’ spot kick was well saved by Washington Arubi.
With the match looking destined for a penalty shootout, Ayanda Gcaba was the unlikely hero for the home team, firing home a volley from the ‘D’ of the box in the 118th minute to seal a 2-1 win for the Soweto giants.