Solomon Okwalinga’s strike in the last minute of the added time was enough to send Onduparaka through to the Uganda Cup round of 16.
Kirinya had controlled the better part of the game but conceded the last minute corner after the keeper, Opoka Atiino, arrived late to save a deflected ball.
Caterpillars’ skipper, Rashid Toha, rose highest to head in the floated corner but, as the ball was bouncing out, found Okwalinga who kneed it in.
Kirinya tried to launch a quick attack but Onduparaka Onduparaka contained them and later used the final seconds with the substitution.
To reach this stage, both Kirinya and Onduparaka had eliminated lower division sides Mbarara FC and Busia FC.