Frankrike strejkade Antoine Griezmann hade ett mål uteslutits av en video assistent domare för offside.
Och Spaniens andra mål, som gjordes av Gerard Deulofeu, tilldelades av videotjänstemannen efter en biträdande domare felaktigt flaggad för offside.
David Silva öppnade scoring för Spanien med ett straff efter Laurent Koscielny fouled Deulofeu.
Griezmann hade tidigare haft ett huvudmål uteslutits när domaren Felix Zwayer vände sitt ursprungliga beslut efter att ha tagit emot ett meddelande i hans öronsnäcka från videoassistentdomaren, som satt i en lastbil utanför Stade de France.
Replays visade Layvin Kurzawa var snävt offside när han ledde bollen till Griezmann, med beslutet att störta målet som gjorts på ca 30 sekunder.
Deulofeu mål - från en Jordi Alba kors - belönades efter ett samtal mellan domaren och videoassistenten som varade ungefär en minut.
Videoassistent teknik användes först i september, i Frankrikes 3-1 vänliga seger i Italien.
Det användes sedan på Fifa Club World Cup, och Football Association vill använda det i nästa säsong FA Cup från den tredje omgången och framåt.
Fifa president Gianni Infantino vill att systemet ska användas vid VM i Ryssland nästa år.
Matchen slutar, Frankrike 0, Spanien 2.
Andra halvlek, Frankrike 0, Spanien 2.
Sergio Busquets (Spanien) vinner en frispark i den defensiva halvan.
Foul av Olivier Giroud (Frankrike).
Foul av Gerard Deulofeu (Spanien).
Laurent Koscielny (Frankrike) vinner en frispark i den defensiva halvan.
Foul av Ander Herrera (Spanien).
Tiemoué Bakayoko (Frankrike) vinner en frispark i den defensiva halvan.
Offsides, Frankrike. Olivier Giroud försöker en genom boll, men Antoine Griezmann fångas offside.
Offsides, Frankrike. Antoine Griezmann försöker en genom boll, men Layvin Kurzawa fångas offside.
Utanför Spanien. Gerard Piqué försöker en genom boll, men Iago Aspas fångas offside.
Försök missade. Antoine Griezmann (Frankrike) header från mycket nära räckvidd är hög och bred till vänster. Hjälpt av Ousmane Dembélé med ett kors.
Substitution, Spanien. Nacho ersätter Jordi Alba.
Daniel Carvajal (Spanien) vinner en frispark i den defensiva halvan.
Foul av Layvin Kurzawa (Frankrike).
Substitution, Spanien. Iago Aspas ersätter Álvaro Morata.
Försök missade. Ousmane Dembélé (Frankrike) vänster fotade skott från höger sida av lådan är för hög. Hjälpt av Christophe Jallet.
Foul av Thiago Alcántara (Spanien).
Antoine Griezmann (Frankrike) vinner en frispark i anfallshalvan.
Utanför Spanien. Gerard Deulofeu försöker en genom boll, men David Silva fångas offside.
Substitution, Frankrike. Thomas Lemar ersätter Corentin Tolisso.
Substitution, Frankrike. Ousmane Dembélé ersätter Kevin Gameiro.
Foul av Sergio Ramos (Spanien).
Tiemoué Bakayoko (Frankrike) vinner en frispark på högerkanten.
Mål!  Frankrike 0, Spanien 2. Gerard Deulofeu (Spanien) höger fotade skott från mitten av lådan till nedre högra hörnet. Hjälpt av Jordi Alba.
Försening över. De är redo att fortsätta.
Substitution, Spanien. Ander Herrera ersätter Koke.
Försening i match Laurent Koscielny (Frankrike) på grund av en skada.
Försök missade. Tiemoué Bakayoko (Frankrike) från mitten av lådan är för högt. Assisterad av Antoine Griezmann med ett kors efter ett hörn.
Hörnet, Frankrike. Förföljd av Sergio Ramos.
Försök blockerat. Kevin Gameiro (Frankrike) höger fotade skott från utsidan rutan är blockerad.
Hörnet, Frankrike. Konfedererad av Koke.
Försök blockerat. Samuel Umtiti (Frankrike) vänster fotade skott från höger sida av lådan är blockerad.
Foul av Gerard Piqué (Spanien).
Olivier Giroud (Frankrike) vinner en frispark i anfallshalvan.
Hörnet, Frankrike. Sammankallad av Jordi Alba.
Handboll av Sergio Busquets (Spanien).
Mål!  Frankrike 0, Spanien 1. David Silva (Spanien) konverterar straffet med en vänster fotad skott till nedre högra hörnet.
Straff Spanien. Gerard Deulofeu drar ett brott i straffområdet.
Straffet medgavs av Laurent Koscielny (Frankrike) efter ett brott i straffområdet.
Videoteknik användes för att rätta till två felaktiga beslut då Spanien slog Frankrike i ett vänligt land i Paris.