Defending champion Elina Svitolina will face world number one Ashleigh Barty in the WTA Finals showpiece in Shenzhen.
Ukrainian Svitolina, 25, had fought back to lead 5-7 6-3 4-1 when a tearful Belinda Bencic, 22, retired from their semi-final with cramp.
Karolina Pliskova, 27, forced the only break of the first set in the other semi-final, but Australian Barty, 23, controlled the second set.
Barty then claimed the decider, winning 4-6 6-2 6-3 to reach Sunday's final.
"I didn't do much wrong in the first set and it was great to get another chance to play out here on Sunday," Barty, who has lost all five previous meetings against Svitolina, said.
"I want to come out here and enjoy it as I have nothing to lose. It's an opportunity against a great player who knows how to win in these situations."
Bencic took the opening set - the first dropped by eighth-seed Svitolina in the tournament - minutes after taking a medical timeout for a leg injury at 6-5.
The Swiss seventh seed, broken twice in the second set, battled on but could not finish.
Bencic is the fourth player to suffer an injury at the women's end-of-season event featuring the world's top eight players, following the withdrawals of Canada's Bianca Andreescu, Naomi Osaka and the Japanese two-time Grand Slam champion's replacement at the Finals, Kiki Bertens.
Svitolina, ranked eighth in the world, said she was "sad" for Bencic and hoped she would recover for next season.
"I will leave everything out on court in the final to lift that trophy again," Svitolina said.