Marcel Granollers will tackle Guillermo Garcia-Lopez in an all-Spanish final on Sunday at the Grand Prix Hassan II in Casablanca.
Fourth seed Granollers was the first to secure his place, fending off Argentinian Federico Delbonis 6-1 6-4 in an hour and a quarter.
The clash between Garcia-Lopez and qualifier Roberto Carballes Baena looked to be heavily loaded in the former's favour, with his position at 53rd in the world rankings 220 places loftier than his opponent's standing.
Carballes Baena, a 21-year-old Spaniard, is a former French Open boys' doubles winner but has had scant singles experience on the ATP tour.
After dropping a one-sided opening set of the semi-final he opened a 6-5 lead, with a break, in the second. Garcia-Lopez recovered the break, but lost the tie-break.
Garcia-Lopez seized the initiative with an immediate break in the deciding set, but again the 30-year-old gave his younger opponent a route back into the match.
However, the next time he got ahead, Garcia-Lopez made his lead stick, serving out for a 6-2 6-7 (6/8) 6-4 victory, after two hours and 47 minutes of duking it out with his young countryman.