Goalkeeper Tim Melia stopped two of four penalty kicks and another went off the post as Sporting Kansas City defeated the Vancouver Whitecaps after a scoreless draw on Sunday night in the Round of 16 at the MLS is Back Tournament at the ESPN Wide World of Sports Complex near Orlando.
Gianluca Busio scored the clincher in the fourth round of penalty kicks, giving SKC a 3-1 edge.
Alan Pulido and Ilie Sanchez also scored for Kansas City in PKs.
Leonard Owusu was the only Whitecaps player to convert in penalty kicks. Cristian Dajome opened the extra session and put one off the post before Melia saved attempts by Derek Cornelius and Yordy Reyna.
Kansas City outshot Vancouver 36-8 but rookie goalie Thomas Hasal, a 21-year-old from Cambridge, Ontario, made eight saves in regulation to keep the Whitecaps in the game.
SKC outshot the Whitecaps 15-1 in the opening 30 minutes of the match and 22-4 in the first half, but Hasal made six saves before the intermission.
Hasal's biggest save came off a blistering shot by Pulido in the 66th minute. Hasal stretched to his right and was able to get a hand on the shot, deflecting it off the right post.
Hasal, who blanked Chicago 2-0 in his first start in the last game of the group stage to help the Whitecaps advance with a wild-card berth, was briefly injured in the 70th minute, taking a foot to the head while charging out of his net to track down a loose ball.
Vancouver's regular starting goalkeeper, Maxime Crepeau, broke a thumb in a 3-0 loss to Seattle during the group stage last weekend and backup Bryan Meredith left the team earlier in the tournament to return home because of a death in the family.