W reprezentacji Szwecji Pettersson zadebiutował w 2000. W tym samym roku Lars Lagerbäck i Tomas Söderberg powołali go do 22–osobowej kadry na mistrzostwa Europy. Na Euro Szwedzi zajęli ostatnie miejsce w swojej grupie i odpadli z turnieju. Pettersson wystąpił wówczas w 2 spotkaniach – przeciwko Belgii (w 46. minucie został zastąpiony przez Henrika Larssona) i Turcji (w przerwie zmienił Kenneta Anderssona). W drużynie narodowej Pettersson zagrał łącznie 27 razy i strzelił 8 goli.