Off-spinner Dilruwan Perera finished with five wickets to help Sri Lanka beat Pakistan by 68 runs in the second Test in Dubai on Tuesday and take the series 2-0.
Perera had figures of 5-98 as Pakistan, chasing a tough 317 to win, were bowled out for 248 in the second hour of fifth and final day at Dubai stadium.
Asad Shafiq fought hard during his 112-run knock -- his 11th Test hundred -- and together with his skipper Sarfraz Ahmed (68) added 173 for the sixth wicket.
But once their partnership was broken Sri Lanka, having already won the first Test by 21 runs in Abu Dhabi, quickly closed in on the victory.
This is Pakistan's first series defeat at their adopted home of United Arab Emirates (UAE) in seven years. They had won five of the previous nine, with four drawn.
Pakistan were forced to play in the neutral venues of the UAE following the deadly terrorist attack on the Sri Lankan team in Lahore in 2009.
This is also Pakistan's first home defeat since losing to South Africa 1-0 in 2007, a series held on their grounds, and only the second whitewash in their history.
They previously suffered a 3-0 defeat against Australia, a series also played at neutral venues in Colombo and UAE in 2002.
Shafiq was the ninth man out when he edged paceman Suranga Lakmal to slip where Kusal Mendis took a low diving catch to end all Pakistan's hopes of an upset win.
Shafiq's 253-minute knock had 10 boundaries but he again failed to help Pakistan cross the line, just like his 137 in the lost cause against Australia at Brisbane last year.
Pakistan had looked to the overnight partnership of Shafiq and Ahmed to guide them to the winning target after resuming at 198-5, needing another 119 for victory.
Both Shafiq and Ahmed had lucky escapes but Perera finally broke the resistance when Ahmed was caught off a miscued sweep at deep fine leg by Nuwan Pradeep.
Ahmed hit five boundaries during his 130-ball knock.
Shafiq brought up his hundred with a paddled sweep single off Perera and was reprived on the same score when Dimuth Karunaratne dropped a low catch of the same bowler.
Perera then completed his five-wicket haul when he trapped Mohammad Amir -- unable to bowl in the second innings with a shin injury -- leg before for four, bringing Sri Lanka within three wickets of victory.
Yasir Shah was cleaned up by Rangana Herath while the victory was brought up when Herath had number 10 Wahab Riaz caught gleefully by skipper Dinesh Chandimal for one.
Sri Lanka had gained a decisive 220-run lead by scoring 482 in the first innings on the back of Karunaratne's career best 196 and then bowled Pakistan out for 262.