Left-arm spinner Ekta Bisht ripped apart the Sri Lankan lower-order with a hat-trick as India outplayed the hosts by nine wickets in the play-off match of the ICC World Women Twenty20 to ensure their participation in the next edition of the tournament in 2014.
India restricted Sri Lanka to a modest 100 for 8, after Bisht claimed a hat-trick in the last over, in which the hosts lost four wickets and scored just three runs.
Chamari Atapattu was the top-scorer with 28 runs, while skipper Shashikala Siriwardene (23) was the other major contributor for Sri Lanka.
Chasing 101 to win, Poonam Raut (45) and skipper Mithali Raj (28) shared an unbeaten 64-run second-wicket stand to guide the side to its very first win in the tournament with 5.2 overs to spare.
India had lost all its three group stage matches to reach a stage where they needed to beat Sri Lanka to keep its right of playing in the next edition of the event.
Sri Lanka were already struggling at 99 for four when Bisht came to bowl the last over of the innings and piled on the hosts' misery with her superb bowling.
She first dismissed Dualani Surangika (10), having her caught by Nagarajan Niranjana and then caught Yasoda Mendis (10) off her own bowling the next ball.
Eshani Kaushalya (0) could not survive the hat-trick delivery, caught by Jhulan Goswami.
More drama was to follow as Sandamali Dolawatte ran herself out while attempting a single on the penultimate ball of the innings.
In reply, India lost opener Sulakshna Naik (17) in the fourth over, caught by Chamani Seneviratna off left-arm spinner Inoka Ranaweera.
Naik's 17 came off 15 balls, with three shots to the fence; she added 38 for the first wicket with Poonam.
Skipper Mithali joined Poonam in the middle and the pair led the side to victory without any fuss.
Poonam's 40-ball 45 had five boundaries in it while Mithali's 28 came off 33 balls with the help of four shots to the fence.
Brief scores:
Sri Lanka: 100 for 8 in 20 overs. (Chamari Atapattu 28, Shashikala Siriwardene 23; Ekta Bihst 3/16).
India: 102 for 1 in 14.4 overs. (Poonam Raut 45 not out, Mithali Raj 28 not out; Inoka Ranaweera 1/21).