Former Germany boss Hansi Flick‘s team had to rally after falling behind when Hugo Duro slotted home a Diego Lopez cross past Marc-Andre ter Stegen.
The first half was largely uneventful until Duro’s 44th-minute strike sparked the match into life.
Duro nearly added another before Robert Lewandowski equalized by finishing Lamine Yamal’s driven pass.
Valencia impressed before halftime but struggled to maintain their momentum.
Barcelona took control in the second half, with Lewandowski converting a penalty in the 49th minute after Raphinha was fouled in the box.
Yamal, just 17, posed a constant threat with his tricky dribbling down the wings.
Though Barcelona had moments of sloppiness in midfield, Valencia’s counter-attacks kept them on their toes.
However, Flick’s side ultimately managed the game effectively, stifling Valencia’s advances and securing the victory.
Barcelona, who finished as runners-up last season, 10 points behind Real Madrid, will next face Athletic Bilbao on Saturday, 24 August, at 18:00 BST.