Dambulla - Indian spinners led by Axar Patel triggered a Sri Lankan batting collapse after a strong start, restricting them to 216 in the first one-day international on Sunday.
Opener Niroshan Dickwella's 74-ball 64 took Sri Lanka to 139-1 in the 25th over before their implosion in Dambulla. The hosts were bowled out in 43.2 overs.
Patel claimed three wickets with his left-arm spin to return career-best figures of 3-34. Fellow spinners Yuzvendra Chahal, Kedar Jadhav and paceman Jasprit Bumrah took two wickets each.
Leg-spinner Chahal got the wicket of Danushka Gunathilaka for 35 and break the 74-run opening stand. The batsman was caught at extra cover while attempting a reverse sweep.
Off-spinner Jadhav then struck twice to get two important wickets in Dickwella and new limited-overs captain Upul Tharanga, who made 13.
Jadhav got Dickwella trapped lbw on a quicker ball that kept low to cut short another good-looking partnership. Dickwella and Kusal Mendis put together 65 runs for the second wicket.
Patel bowled Mendis for 36 and Chamara Kapugedara's run out by a direct throw from India skipper Virat Kohli made the hosts slip further.
Former captain Angelo Mathews tried to stick around with the lower-order but eventually ran out of partners to be stranded on 36. Bumrah combined with the spinners to wipe off the tail.
India are looking for another strong showing in the ODIs after their Test series sweep.
The hosts must win two of the five ODIs to gain direct entry into the 2019 World Cup.