Portsmouth's maiden European voyage may have already been over, but two goals from Peter Crouch ensured they at least bade the UEFA Cup a fond farewell.
The England striker scored a quick-fire double just before the interval and Portsmouth not only successfully held on to their 2-0 lead but added to it in stoppage time with a header from Hermann Hreidarsson.
How the Fratton Park faithful wished Pompey had managed that against AC Milan three weeks ago.
Pompey's chances of qualifying from the group stages were ended by a 3-2 defeat by Wolfsburg, rendering tonight's match a dead rubber between the bottom two sides in the group.
The build-up was overshadowed by news the club had accepted a reported offer of £20million for midfielder Lassana Diarra from Real Madrid.
Diarra was unsurprisingly absent from Fratton Park as Portsmouth manager Tony Adams made six changes from the weekend defeat to Newcastle, with Sol Campbell rested and Jermain Defoe on the bench.
Jamie Ashdown was given a chance in the Portsmouth goal and he was pressed into action immediately as Heerenveen made a lively start, with Paulo Henrique forcing a smart save before Roy Beerens struck the post after latching onto a ball in behind Portsmouth full-back Marc Wilson.
But Portsmouth responded well and began to cultivate two clear attacking sources - Armand Traore's electric pace down the left and Crouch's height advantage.
Pompey should have taken the lead after Traore's storming run from halfway but Crouch stabbed his first-time shot across the goal and wide of the far post.
The England striker then contrived to hit the crossbar after Wilson had picked him out in the box with a brilliant cross-field pass. The ball bounced up invitingly for Crouch but he could only poke it onto the woodwork.
Crouch played a neat one-two with Arnold Mvuemba before peeling away to the far post to meet the Frenchman's cross but his downward header was soft and Heerenveen recovered.
Traore's snap-shot flew high over the bar and his pace continued to cause havoc down the Heerenveen right and he almost picked out Crouch again after another surging run.
Another Traore raid teed up a chance for Kanu at the near post but his shot was smothered by goalkeeper Brian Vandenbussche, who cleared for a corner.
Portsmouth survived another scare when central midfielder Mika Vayrynen cut into the box but angled his shot wide of Ashdown's far post.
Wilson floated another ball towards the far post where Crouch was again able to steal in between two defenders but this time his header was wide of the post.
Portsmouth were looking slick in attack but the number of wasted chances was beginning to be of some concern before Crouch finally reaped the dividends.
Mvuemba cut the ball back to Wilson, who floated another cross towards the far post and this time Crouch connected well with his downward header to put Portsmouth 1-0 up.
And within a minute, those early misses were completely forgotten as Crouch doubled the advantage with his first brace of the season.
Kanu tricked his way into the box with a mazy run - one of those where it seems the ball is glued to his boot - and when his shot was saved, Crouch pounced to slot home the rebound.
Portsmouth were cut open just after the hour when Heerenveen's half-time replacement Tarik Elyounoussi found himself clean through but dragged his low shot wide of the near post.
Crouch had another far-post chance that would have sealed his hat-trick but Vandenbussche closed him down well and smothered the header.
The match was petering out as a contest before Nadir Belhadj was fouled on the edge of the Portmouth box and, after a scuffle, Hreidarsson rose to head home Glen Little's free-kick in stoppage time.Reuse content