And when fast bowler Morne Morkel took two wickets in three balls, Pakistan were faltering at 41 for two under the floodlights in this day/night fixture.
Fakhar's inclusion, in place of the dropped Ahmed Shehzad, added variety to an otherwise all right-handed Pakistan top order.
There was a huge moment for Pakistan when De Villiers hit Imad straight to Hafeez for his first one-day worldwide golden duck before Hasan removed Faf du Plessis. South Africa only hit 12 boundaries in total.
"That is a feeling we miss, not playing in Pakistan", said Sarfraz.
In those 27 overs, we saw memorable little debut innings from Fakhar Zaman, a thrilling spell from Morkel, and important batting contributions from Hafeez, Babar and Shoaib Malik.
Pakistan kept the Proteas to a modest 219 for eight, having conceded exactly 100 more against title-holders India.
The Proteas beat Pakistan by 67 runs the last time the teams met at Edgbaston during the 2013 ICC Champions Trophy, a low-scoring match highlighted by a man-of-the-match performance of 81 from Hashim Amla.
Next up for Pakistan is the daunting challenge of a clash with South Africa - the world's top-ranked side in one-day internationals - at the same venue.
The result means both sides could still qualify for the semi-finals if they win their final game, South Africa face India on Sunday while Pakistan take on Sri Lanka on Monday. India play their match in hand against Sri Lanka at The Oval on Thursday, and each team will then have one more match left. Hasan Ali achieved figures of 3/18, while fellow pacers Imad Wasim and Junaid Khan returned 2/20 and 2/53 respectively. They found Indian pacers too hot to handle and South Africa too have a potent pace battery.
Pakistan will be looking to bounce back from its humiliating defeat against India, when it takes on a strong and confident South Africa side in their second game of the Champions Trophy.
The Pakistan vs South Africa Champions Trophy match will be played on July 7.
As light drizzle fell, Hafeez drove Tahir for six.
The first straightened to find the outside edge of JP Duminy, well caught by diving slip Babar Azam, while the next, on a similar line, knocked over Wayne Parnell's off-stump to raucous cheers from the large Pakistan contingent in the crowd.