Tries from Byron McGuigan (3), Rob Webber, Rohan Janse van Rensburg and Luke James saw the Premiership outfit to the five points on Friday.
In reply, Perpignan, who had Manu Leiataua red carded early on, crossed through Pierre Lucas and Genesis Mamea on a tough evening at home.
Sale got off to the ideal start when wing McGuigan crossed in style in the seventh minute and with Faf de Klerk’s conversion they were 7-0 up.
Perpignan responded admirably as outside centre Lucas scored nine minutes later, but opposing hooker Webber’s crossing then made it 12-7. What compounded the Sale try was that Perpignan lost hooker Leiataua due to leading with the arm to the neck of Webber prior to the try.
Jonathan Bousquet reduced the scores to 12-10 and then a further penalty nudged USAP in front, before Van Rensburg’s try made it 17-13. His fellow South African, De Klerk, was successful off the tee as the Sharks moved six points ahead before Bousquet struck for 19-16.
Bousquet levelled matters shortly after the resumption but when centre James got over after De Klerk’s kick ahead, Sale had moved 24-19 up.
De Klerk would add a penalty with 17 minutes to play to extend the lead to eight points before McGuigan grabbed his second try of the night.
The Scottish international wasn’t done there and secured his hat-trick before USAP number eight Mamea would add a consolation score late on.
Tries: Lucas, Mamea
Pens: Bousquet 4
Red Card: Leiataua
For Sale Sharks:
Tries: McGuigan 3, Webber, Van Rensburg, L James
Cons: De Klerk 3, Cliff
Pen: De Klerk
Perpignan: 15 Julien Farnoux, 14 Jonathan Bousquet, 13 Pierre Lucas, 12 Paul Marty, 11 Eroni Sau, 10 Enzo Selponi, 9 Sadek Degmache, 8 Genesis Mamea, 7 Alan Brazo (c), 6 Pierre Reynaud, 5 Yoann Vivalda, 4 Johan Van Heerden, 3 Sylvain Charlet, 2 Manu Leiataua, 1 Yassin Boutemmani
Replacements: 16 Cyril Deligny, 17 Kevin Tougne, 18 Gert Muller, 19 Alban Roussel, 20 Edoardo Iachizzi, 21 David Mele, 22 Romuald Seguy, 23 Afusipa Taumoepeau
Sale Sharks: 15 Sam James, 14 Byron McGuigan, 13 Luke James, 12 Rohan Janse van Rensburg, 11 Paolo Odogwu, 10 Kieran Wilkinson, 9 Faf de Klerk, 8 Josh Strauss, 7 Ben Curry, 6 Jono Ross (c), 5 James Phillips, 4 Josh Beaumont, 3 WillGriff John, 2 Rob Webber, 1 Ross Harrison
Replacements: 16 Curtis Langdon, 17 Tom Bristow, 18 Joe Jones, 19 George Nott, 20 Tom Curry, 21 Will Cliff, 22 Connor Doherty, 23 Arron Reed
Referee: Joy Neville (Ireland)
Assistant referees: George Clancy (Ireland), Mark Patton (Ireland)