Philippe Troussier’s side came from behind twice to equalise 2-2 late in the second half, but Taufany’s injury-time winner handed Indonesia a place in the title holders.
Both teams deployed their strongest squads right from the beginning, but Indonesia started better thanks to the presence of national team players, including Witan Sulaeman, Pratama Arhan and Marselino Ferdinan…
Komang headed home to put Indonesia in front after nine minutes, but their lead was cancelled out a few minutes before halftime, with Van Tung scoring a back header from Duc Phu’s sensational cross.
Indonesia restored their advantage in the 53rd minute as Ferdinan fired a volley on the rebound after Vietnamese goalkeeper Quan Van Chuan failed to catch the ball from Arhan’s throw-in.
Indonesia were reduced to 10 men at the hour mark with Arhan being shown a second yellow card and sent off following his foul on Duc Phu.
Vietnam made use of such man advantage to put up pressure and levelled up the score in the 79th minute thanks to an own goal by Bagas Kaffi.
However, their title defence at the SEA Games came to an end as Taufany beat goalkeeper Quan Van Chuan six minutes into injury times to put Indonesia through to the final game.
With the 3-2 defeat, Vietnam officially crashed out of the SEA Games title campaign and will play the bronze-medal match with the losers of the Thailand-Myanmar semi-final.