The world number 63 from Argentina, will face America's Jack Sock in Sunday's final.
Juan Martin del Potro reached his first ATP final since January 2014 on Saturday with an impressive 6-4, 7-5 win over Bulgaria's Grigor Dimitrov in the Stockholm semi-finals.
The world number 63 from Argentina, who was US Open champion in 2009 before a series of wrist injuries pushed him to the brink of retirement, will face America's Jack Sock in Sunday's final.
Sixth-seeded Sock downed German fourth seed Alexander Zverev 6-7 (4/7), 7-6 (7/4), 6-4 in the other semi-final.
Del Potro, runner-up to Andy Murray in the Olympic final in Rio in August, last played a tour final in Sydney in January 2014 when he beat home favourite Bernard Tomic 6-3, 6-1.