Deandra Dottin took 4-22 as the West Indies kept New Zealand to 128-9 in their 20 overs in the second semi-final of the Women's T20 World Cup on Friday.
After winning the toss and batting, openers Suzie Bates (26) and Georgia Plimmer (33) top-scored for New Zealand who struggled against some tight bowling.
From 93-3, however, veteran allrounder Dottin stepped in to cause a collapse to 104-7 before Isabella Gaze hit 20 not out from 14 balls to give the Kiwi bowlers a target to defend.
West Indies suffered an unpleasant setback when Chinelle Henry had to be helped off the field after misjudging a catch at long-on and taking a sickening blow flush on the forehead.
The winner will face South Africa in Sunday's final.