The Euro 2016 Group I qualifier last Tuesday took place amid a backdrop of political tensions and things came to a head towards the end of the first half in Belgrade.
With the game scoreless, a drone carrying a flag featuring Albanian national symbols entered the stadium and hovered over the pitch.
The two sets of players clashed after Serbia defender Stefan Mitrovic attempted to pull the flag down and a number of supporters then invaded the pitch as the situation escalated.
Albania's players were pelted with missiles as they left the field and the fixture was duly abandoned, with both teams unable to agree on a resumption.
UEFA announced their intention to investigate Albania for "refusing to play" and "the display of an illicit banner", while Serbia faced an array of charges.
On Friday, European football's governing body announced the respective punishments for the two sides, with both fined, while Serbia will be forced to play their next two home qualifiers behind closed doors.
"The UEFA Control, Ethics and Disciplinary Body (CEDB) met yesterday and announced the following decision after various incidents that occurred during the European Qualifier Group I match between Serbia and Albania, which was played in Belgrade on 14 October," a statement read.
"The CEDB has decided to declare the above-mentioned match as forfeited.
"As a consequence, the Football Association of Albania (FShF) is deemed to have lost the match 3-0. In addition, the FShF has been fined €100,000.
"The CEDB has also decided to deduct the Football Association of Serbia (FSS) three points for the current UEFA European Championship qualifying competition.
"In addition, the FSS has been ordered to play its next two UEFA competition matches as host team behind closed doors.
"Finally, the association has been fined €100,000. These decisions are open to appeal."
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.