Fiorentina were pegged back twice by Sampdoria, but a late Jordan Veretout penalty sealed the 3-2 win in the Coppa Italia Round of 16.
The winners go on to face Lazio or Cittadella on December 26 in the Quarter-Final.
This tie at the Stadio Franchi clearly meant a lot to both sides, because they made relatively few changes to the line-ups. These teams already met in Serie A back in September, the Blucerchiati running out 2-1 winners in Florence.
The hosts took the lead within 90 seconds, as Vasco Regini lost sight of Marco Benassi’s through ball for Khouma Babacar, who struck with a powerful finish at the near post.
There was almost a second moments later, but this time Babacar couldn’t keep the shot on target. Ricky Alvarez pulled back from the by-line, but Gianluca Caprari lost his footing.
German Pezzella’s towering header on a corner whistled just wide of the far post, but Samp were growing into the game and equalised when Edgar Barreto redirected the wayward Jacopo Sala strike from a corner.
VAR technology is used in the Coppa Italia from the Round of 16 onwards and that proved essential when Babacar was brought down between Regini and Barreto, so Jordan Veretout converted the resulting penalty.
Gaston Ramirez and Barreto combined at the by-line, but Bartlomiej Dragowski put it out for a corner, from which Barreto’s header thumped the crossbar.
Moments later, Caprari’s free kick bounced off the near post with Dragowski well beaten. The pressure from Samp continued and Davide Astori brought down Ramirez and the former Bologna man converted the spot-kick himself to equalise.
VAR was used yet again, as Nicola Murru appeared to handle within seconds of coming off the bench and Fiorentina received a late penalty. Veretout kept his cool to convert and put the Viola ahead for the third time.
Bruno Gaspar hauled back Ramirez by the jersey moments later, but this time he was caught offside first.
Fiorentina 3-2 Sampdoria
Babacar 2 (F), Barreto 39 (S), Veretout pens 59, 90 (F), Ramirez pen 77 (S)
Fiorentina: Dragowski; Gaspar, Pezzella, Astori, Biraghi (Vitor Hugo 72); Benassi, Carlos Sanchez, Veretout; Chiesa, Saponara (Eyserric 80); Babacar (Simeone 65)
Sampdoria: Puggioni; Regini, Sala, Silvestre, Strinic (Murru 87); Barreto, Capezzi (Torreira 46), Praet; Alvarez (Ramirez 62); Duvan Zapata, Caprari