Marc-Andre ter Stegen saved two penalties in the shootout while youngster Ruqui Puig scored the decisive penalty to send Barcelona through to the Supercopa final.
Barcelona who were without Messi took the lead through Frankie De Jong in the first half. Mike Oyarzabal restored parity by converting a second half penalty.
The match went into extra time but nothing could separate the two sides and was decided by shootout.
Ter Stegen saved the first two penalties, with De Jong and Griezmann also missing for Barcelona. Youngster Ruqui Puiq was tasked with taking the decisive penalty and he converted.
Barcelona will play the winner of Thursday’s semi between Real Madrid and Athletic Club in the final on Sunday.