The Stormers continued to control the game in the second half, with scrum-half Herschel Jantjies identifying a gap at the side of the ruck before scampering over to touch down under the posts.
A series of penalties conceded by the Stormers gave Leinster the momentum they needed to get off the mark, with Max Deegan adding the finishing touches to a period of pressure in the host’s 22.
The visitors struck again minutes later with Deegan contributing once again, finding himself carrying the ball in space on the wing before passing inside to Rob Russell who ran in to score his side’s second try of the game.
A yellow card for Evan Roos following a series of repeated infringements threatened to swing the momentum further in Leinster’s direction, but the Stormers defence absorbed several periods of pressure well.
The Stormers were rewarded for patient build-up in Leinster’s 22, with Willie Engelbrecht crossing under the posts to end the game as a contest.
The hosts capped off a dominant performance with an excellent try from Warrick Gelant who threw a clever dummy pass before diving over in the corner, adding insult to injury on a tough night for the heavily rotated Leinster side.
Stormers: Gelant; Hartzenberg, Du Plessis, Willemse, Loader; Libbok, Jantjies; Harris, Dweba, Fouche; Moerat (capt), Van Heerden; Theunissen, Dixon, Roos.
Replacements: Venter, Blose, Malherbe, Evans, Engelbrecht, Dayimani, Ungerer, Simelane.
Leinster: McErlean; Turner, Brownlee, Ngatai, Russell; Prendergast, Foley; Milne, McKee, Ala’alatoa; Deeny, Jenkins; Ruddock, Penny (capt), Deegan.
Replacements: McCarthy, Byrne, Clarkson, O’Tighearnaigh, Mangan, Gunne, Tector, Moloney.