They still have to take on Australia in their final pool match at 21h36 (SA time) on Saturday night, but the two wins secured the Blitzboks a spot in the quarter-finals of the tournament, which will take place eary on Sunday morning (SA time).
The Blitzboks lead 12-5 against New Zealand at the break and held on for a 12-10 win over the 2020 Vancouver champions, while they outscored Ireland four tries to one for a convincing 28-7 win after leading 14-7 at the break.
Against New Zealand, the defensive effort was particularly impressive. The Kiwis had the ball for six minutes of play and SA only for just over two minutes, but the men in black kept running into a green and gold wall.
With a tackle completion rate of 81% by the Blitzboks, the New Zealand attack were forced from side to side and then backwards more often than not.
Quewin Nortje scored a well worked try three minutes in to open the scoring, with the Selvyn Davids conversion making it 7-0. Tone Ng Shiu pulled one back after crashing over shortly after, but Ronald Brown blitzed through for a 12-5 lead at the break.

Sebastiaan Jobb goes over against Canada.
The second half was a hard-fought affair, with the SA defence dominating. New Zealand managed a score a minute from the end, but the conversion was wide and South Africa played out the clock.
Against Ireland, Davids scored a lovely try in the opening minute, before Siviwe Soyizwapi dotted down four minutes in for a comfortable 14-0 lead. Ireland pulled one back on the buzzer, but the second half scoring was all green and gold.
Ricardo Duarttee waltzed through a couple of tackles before Sebastiaan Jobb celebrated his return to the team with a lovely run in the final play of the match.
The scores in the two other pool matches were exactly the same at 17-7 - Australia beat Ireland in their first game, before New Zealand closed the opening day with victory over the Aussies.
Scorers:
South Africa 12 (10), New Zealand 10 (5)
South Africa - Tries: Quewin Nortje, Ronald Brown. Conversion: Selvyn Davids.
New Zealand - Tries: Tone Ng Shiu, Andrew Knewstubb.
South Africa 28 (14), Ireland 7 (7)
South Africa - Tries: Selvyn Davids, Siviwe Soyizwapi, Ricardo Duarttee, Sebastiaan Jobb. Conversions: Ronald Brown (2), Ricardo Duarttee, Donavan Don.
Ireland - Try: Josh Kenny. Conversion: Tadhg Brophy.