Leg-spinner Imran Tahir bowled South Africa to a 34-run win in the first Twenty20 international against Zimbabwe at Buffalo Park on Tuesday.
Tahir took five for 23 as South Africa, defending a modest total of 160 for six, bowled out the tourists for 126.
The damage was done in the first four overs as Tahir, sharing the new ball, took the first three wickets.
"I’ve been practising with the new ball to see if I can get more accurate (in case) I get a chance to bowl with it," he said after claiming his best figures in 20-over internationals.
He came back later to take two wickets off successive balls to reduce Zimbabwe to 65 for six.
Peter Moor hit four successive sixes off left-arm spinner Tabraiz Shamsi as he and Brandon Mavuta briefly raised Zimbabwean hopes with an eighth wicket stand of 53 off 19 balls. Moor made 44 off 21 balls and Mavuta hit 28 off 14 balls.
New cap Rassie van der Dussen steadied South Africa's innings, scoring 56 after coming in with his team struggling on 11 for two in the second over.
Van der Dussen and David Miller (39) put on 87 off 66 balls for the fourth wicket but South Africa were unable to dominate against a disciplined Zimbabwe bowling attack on a slow pitch.
"The bowlers continued their good work. They did brilliantly," said Zimbabwe captain Hamilton Masakadza, who admitted that the batting had failed again after Zimbabwe were beaten 3-0 in a one-day series before the T20 games. "We haven't had any sort of foundation," he said.
Kyle Jarvis took three for 37 and Chris Mpofu took two for 24. Both claimed early wickets and bowled well in the death overs, with South Africa able to score only 36 runs while losing three wickets in the last four overs.
Leg-spinner Mavuta, 21, a former Zimbabwe under-19 captain, showed outstanding control, taking one for 19 in four overs. He dismissed South African captain Faf du Plessis for a hard-hit 34 off 20 balls.
"We thought 155 was par," said Du Plessis. "It was a nice challenge for us because there was quite a bit of dew out there."