Pallekele - Fast bowlers Mohammed Shami and Hardik Pandya blew away Sri Lanka's top-order to leave the hosts tottering at 61-4 at tea in reply to India's 487 on day two of the final Test on Sunday.
Skipper Dinesh Chandimal on 13 and wicketkeeper-batsman Niroshan Dickwella on 14 were at the crease with the hosts still trailing India by 426 runs in Pallekele.
Pace spearhead Shami struck early to get openers Upul Tharanga and Dimuth Karunaratne caught behind for 4 and 5 respectively in the first five overs of the innings.
Kusal Mendis, who tried to stem the rot with some attacking play, was run out by a direct throw at the non-strikers end by Kuldeep Yadav. He made 18 with the help of four boundaries.
Sri Lanka slipped further to 38-4 as Pandya, who smashed his maiden Test century in the morning session, struck with the ball to get former captain Angelo Mathews trapped lbw for nought.
All-rounder Pandya remained the star of the day so far with his 96-ball 108 that propelled India to a challenging first innings total after the visitors resumed on 329-6.
Pandya was out to spinner Lakshan Sandakan on the third ball of the second session as India's innings ended without adding to the lunch total.
The left-arm unorthodox bowler recorded his first five-wicket haul in Tests while fellow spinner Malinda Pushpakumara took three wickets.
India are eyeing a sweep in the three-match rubber after taking an unassailable 2-0 lead in Colombo.