After winning the toss and opting to bat, Kayla Reyneke top-scored with an unbeaten 34 while further contributions from Anneke Bosch (33), Miane Smit (30) and Faye Tunnicliffe (25) as the visitors got to a total of 164-6.
Smit and Tunnicliffe put on a 37-run partnership for the opening stand but the visitors then slipped to 79-4 inside 11 overs as Zimbabwe kept chipping away in the wickets column.
Reyneke and Bosch then came together and stitched together an important 75-run partnership for the fifth wicket hat came off just 54 deliveries.
Zimbabwe seamer Michelle Mavunga was the pick of the home team's bowlers with figures of 3-46 in four overs.
The hosts then were 22-2 in the fourth over as Proteas seamer Nthabiseng Nini striking a double blow, but Kelis Ndhlovu and Chipo Mugeri-Tiripano added 80 for the third wicket to give Zimbabwe hope.
Caitlin Wyngaard broke the partnership and the home team then slipped up in pursuit of the target as they eventually reached 150-8 in their 20 overs.
Nini finished with figures of 3-19 while Ayanda Hlubi also took three scalps while going for 24 runs in her four overs.