The hosts started full of purpose and they were in front when John Chigandu smashed home a left-footed volley after a cross to the far post.
Zesco looked set to double their lead in the 11th minute, but Matsatsantsa keeper Ronwen Williams made a brilliant double save to keep out Maybin Kalengo, before also denying Chigandu.
The South African side had their first opportunity when Phala hit the side-netting in the 23rd minute, with home keeper Jacob Banda making a close-range block on Jeremy Brockie shortly after.
The pressure paid off for the visitors when Phala pounced on a loose ball just outside the box and rifled in a low shot in to the corner.
Bradley Grobler then wasted a great chance to put SuperSport ahead when he directed his parting shot wide of goal with Banda stranded off his line.
That miss proved costly as Zesco struck five minutes after half time when David Odhiambo capitalised on a mistake at the back before finishing clinically.
Both teams then had chances as Tebogo Mokoena missed with a header before Dauti Musekwa fired wide after he made space for a shot 25 minutes from time for the hosts.
Thabo Mnyamane could have levelled the game in the 77th minute, but went wide with a header.
With the Zambians happy to shore things up for the final minutes of the game, SuperSport were unable to create any decent openings until deep into added time, when Clayton Daniels flicked a cross to the back post where Phala was on hand to sweep the ball over the line.
Download our app and read this and other great stories on the move. Available for Android and iOS.