With the brilliant performance of Pakistani batsmen and then bowlers, the Green Shirts defeated South Africa by 28 runs in the last ODI and also won the series 1-2.
In the last match of the three-match ODI series played at Centurion, South Africa won the toss and invited Pakistan to bat.
Fakhr Zaman, who failed to score a double century in the last match, maintained his form and scored a century in the second match in a row.
He made a partnership of 112 runs for the first wicket with Imam-ul-Haq who scored 57 runs.
Fakhr then formed a 94-run partnership with captain Babar Azam and was dismissed for 101.
Later, the middle order batsmen who came to support captain Babar Azam got out one after another, however, Babar continued his excellent game and brought the team close to 300 runs.
At one point, it was difficult for Pakistan to cross the 300-run mark, with Hassan Ali scoring 32 off just 11 balls with four sixes and a four to take the team to 320.
Babar Azam could not complete his century and was caught on the last ball of the innings for 94 runs.
Chasing Pakistan’s target of 321, South Africa was bowled out for 292.
South Africa’s Janiman Milan stood out with 70 runs, while Kyle Verina scored 62 and Andyel Phikhlukavio 54 runs.
South African captain Tamba Baumama scored 20 and Keshu Maharaj 19, while Aiden Markram scored 18 and JJ Smiths 17 runs.
For Pakistan, Shaheen Afridi and Mohammad Nawaz took three wickets each while Haris Rauf took two wickets and Hassan Ali and Usman Qadir took one wicket each.
Fakhr Zaman was named Man of the Match for scoring the most 302 runs in a three-match series.