Milan: Inter Milan beat Empoli 2-1 in the penultimate round to mathematically secure fourth spot in Serie A on Saturday and a berth in the Europa League.
AC Milan's chances of also playing in Europe next season improved after it won at 10-man Bologna 1-0.
Inter, which led Serie A for most of the first half of the season, knew it could not finish higher than fourth but ensured it moved seven points clear of fifth-place Fiorentina, which has two games left.
"If we had done everything well and we were perfect we would not have finished fourth," Inter coach Roberto Mancini said. "At the end, however, this is the position we deserve for having thrown away a bit after we did well in the first six months.
"It remains the best season of the last five years, that is also a positive thing."
Mauro Icardi fired Inter into an early lead after Ivan Perisic squared the ball to him. Manuel Pucciarelli leveled in the 37th but Perisic restored Inter's lead just three minutes later after Stevan Jovetic's effort was spilled by Alberto Pelagotti.
Icardi will likely play no part in the final round after the Inter captain limped off in the second half with a thigh strain.
Bologna had to play 78 minutes with 10 men after Amadou Diawara was sent off for two yellow cards.
Milan broke the deadlock five minutes from halftime when it was awarded a penalty after Luiz Adriano was brought down by Bologna goalkeeper Junior Da Costa as he was running onto a long ball from Luiz Adriano.
Da Costa almost redeemed himself by guessing the right way for Carlos Bacca's spot kick but could not prevent it from going in.
Adam Masina thought he leveled in the final minute but his goal was ruled out for a tight offside decision.
Milan moved to provisional sixth, two points ahead of Sassuolo, which visits relegation-threatened Frosinone on Sunday.
"It's normal that people want a Milan which plays better, but today our main aim was the victory," Milan coach Cristian Brocchi said.
"We have to take it game by game to get to the (Italian Cup) final against Juventus in the best way possible. (Sixth spot) unfortunately does not just depend on us. Tonight we had to win and we did that. Now, we'll see what will happen."
Cagliari will join both Milan teams in Serie A next season after winning promotion straight back to the top flight following one season in Serie B.
Cagliari won at Bari 3-0 to earn automatic promotion along with Crotone, which secured its first season in Serie A.
There are two rounds remaining in Serie B to see which team will be crowned champion.