The Proteas posted 136 for six thanks to a late flurry from the 20-year-old Wolvaardt (53 not out), who hit four boundaries in the final eight balls of the innings.
With Pakistan only managing 119 for five, South Africa earned a third successive win to join India in securing a place in Thursday’s semifinals.
Entering the game after a centurion against Thailand, Lizelle Lee (4) didn’t last long as Diana Baig picked up a wicket in her first over for the third game running after South Africa Women opted to bat.
Diana then dismissed Dane van Niekerk (3), who faced 10 balls. Marizanne Kapp ended the Powerplay with a wristy flick for a four as South Africa Women reached 23 for two.
Mignon du Preez looked assured in advancing to 17 but mistimed her reverse sweep off Nida Dar and played on to make it 54 for three.
Wolvaardt came to the middle and struggled to get going with Kapp (31), who holed out to long-off for teenager Syeda Aroob Shah’s maiden Women’s T20 World Cup wicket.
South Africa’s score ticked past 100 in the 17th over when Sune Luus departed for 12, looping Aiman to Omaima Sohail at point.
Wolvaardt then pierced the gap between two fielders through long-on and twice played over cover.
South Africa Women maintained the momentum with the ball and dismissed Muneeba Ali (12), who miscued Shabnim Ismail to mid-on in the fourth over.
Van Niekerk was agitated by a pair of misfields in her second over and responded by taking the pace off the ball to trap Nida in front as Pakistan slipped to 26 for three.
Javeria (31) though battled on, picking boundaries in three successive overs, but her 100th T20I ended in cruel fashion when Chloe Tryon deflected Aliya Riaz’s drive onto her stumps.
Aliya couldn’t get going for long and Sidra Nawaz, the wicketkeeper, was clean bowled by Nonkululeko Mlaba in the 15th over to make it 72 for five.
The six-hitting ability of Iram and Aliya kept Pakistan in the game, with both clearing the rope a few times, but their unbeaten 47-run partnership went in vain.
South Africa: 136 for 2 in 20 overs (Laura Wolvaardt 53 not out, Marizanne Kapp 31; Diana Baig 2-19)
Pakistan: 119 for 5 in 20 overs (Aliya Riaz 39 not out; Javeria Khan 31; Shabnim Ismail 1-20) PTI APA