Malmo produced a stirring display and benefitted from a moment of refereeing controversy to beat Celtic 2-0 and reach the UEFA Champions League group stages.
The result handed Age Hareide's team a 4-3 aggregate victory - a reward for the attacking intent they showed throughout the tie.
Experienced striker Markus Rosenberg handed them a first-half advantage before Nir Bitton had a goal harshly ruled out for Celtic on the stroke of half time.
Further set-piece frailties undermined Ronny Deila's men as Dedryck Boyata put through his own goal after the interval.
It was a particularly sweet triumph for Malmo, after a tetchy war of words between the two camps dominated the pre-match build-up, and one lapped up by a raucous Swedbank Stadion crowd.
For Celtic, they fall short at the final hurdle for the second season in succession having lost to Maribor last term, and the wait goes on for European football's elite to return to Celtic Park.
Jo Inge Berget netted a vital brace for Malmo in the first leg and looked to pile further misery on his former employers when he lashed wide from 18 yards in the third minute.
Malmo goalkeeper Johan Wiland got an important touch on a lofted ball from the right, causing Virgil van Dijk to head wide and the Dutch defender would rue that miss in the 23rd minute.
Having battled to win a corner, Rosenberg rose unchallenged in front of keeper Craig Gordon to divert in Yoshimar Yotun’s inswinger.
Leigh Griffiths was a touch fortunate to only be booked after tangling with Malmo defender Anton Tinnerholm and Celtic's frustrations were further increased when Bitton converted Stuart Armstrong's corner, only for the referee to award a free-kick in Malmo’s favour despite their defender Kari Arnason appearing to handle the ball.
Gordon stood firm to brilliantly thwart Nikola Djurdjic on the end of a Rosenberg backheel in the final minute of a pulsating half.
Malmo continued where they left off in the second period as Rosenberg flashed narrowly wide from Djurdjic’s cutback.
Celtic continued to press but fell further behind in the 54th minute - a particularly bitter pill for Gordon to swallow.
The goalkeeper made a magnificent double save, denying Vladimir Rodic on the angle and responding to Rosenberg's follow-up but, from the resulting corner, Felipe Carvalho got ahead of the Celtic defence at the near post again and Boyata could only turn into his own net on the line.
Celtic now needed to score twice and the urgency of their situation was summed up as Griffiths sliced wasteful over from a Stefan Johansen flick-on - their attacking becoming more fitful.
Delia's men battled gamely until the end but were left to rue their set-piece flimsiness as Malmo celebrated securing their place in the group stage.
Thank you for reading 5 articles this month* Join now for unlimited access
Enjoy your first month for just £1 / $1 / €1
*Read 5 free articles per month without a subscription
Join now for unlimited access
Try first month for just £1 / $1 / €1