The series commences on February 9 in Pune, followed matches at Delhi and Visakhapatnam on February 12 and 14 respectively.
The 36-year-old Fernando, who last played for Sri Lanka way back in 2012, was included in place of T20 captain Lasith Malinga, who is recuperating from an injury.
Fernando has played 40 Tests, 141 ODIs and 17 T20 Internationals.
Leg-spinner Seekkugge Prasanna also makes a comeback to the national team.
The other notable inclusions are uncapped middle-order batsman Asela Gunaratne and medium pacer Kasun Rajitha.
Besides Malinga, Test captain Angelo Mathews, opener Kusal Perera and seamer Nuwan Kulasekara will miss the tour. All are expected to be fit and available for the World T20, to be staged in India in March-April.
The squad: Dinesh Chandimal (captain), Tillakaratne Dilshan, Seekuge Prasanna, Milinda Siriwardana, Danushka Gunathilaka, Thisara Perera, Dasun Shanaka, Asela Gunaratne, Chamara Kapugedera, Dushmantha Chameera, Dilhara Fernando, Kasun Rajitha, Binura Fernando, Sachithra Senanayake, Jeffrey Vandersay.
Image: Dilhara Fernando
Photograph: BCCI
Bumrah's ODI debut -- an instance of serendipity
'T20s are more important than ODIs'
Asia Cup: India to clash with arch-rivals Pakistan on Feb 27
BCCI gives DDCA January 28 deadline
'International cricket needs fixing'