The FA Cup holders beat a stubborn Dreams FC 3-2 to keep their dreams of retaining the title they won last season.
Dreams FC got off to a great start after breaking the deadlock just four minutes into the game through Sylvester Simba.
But the Phobians pulled parity seven minutes later through forward Benjamin Yorke.
Both sides held on to go into the break at 1-1, but it was the defending champions who will take the lead after the break. Daniel Afriyie Barnieh scored to give Hearts the advantage.
Dreams FC were reduced to ten men after Ibrahim Issah recklessly lunged into defender Mohammed Alhassan.
Hearts of Oak took advantage to extend their lead through Seidu Suraj but a late fight from the Dawu-based outfit saw them get a consolation through Karikari.
Hearts of Oak will be waiting for the winner of the game between Bechem United and Aduana Stars in the final.