The match got off to a very tentative start with both sides weighing each other's tactics out. The first half witnessed few chances for both sides.
After the interval, Iranian Ali Nazem broke the deadlock with a close-range shot.
Tahiti's Patrick Tepa scored with four and a half minutes left, sending the match to extra time.
Neither side could find the decisive winner in the extra time.
It took 12 attempts to decide the winner, and Tahiti defeated Iran 3-2 on penalties.
Iran will play Italy in the bronze medal match at National Beach Soccer Arena of Malcolm Park in Nassau, the Bahamas on Monday.