Corinthians fans celebrate the victory against Palmeiras.

A football fan was shot dead and several others seriously injured after a fight between rival supporters ahead of a derby match in Brazil on Sunday, according to a report.

21-year-old Andre Alves, a Palmeiras supporter, was killed after being shot in the head during a confrontation that involved around 500 football fans, ahead of the Paulista Championship match between Palmeiras and Corinthians in Sao Paulo.

Alves was taken to the hospital having suffered brain damage and was confirmed dead by evening. Corinthians won the match 2-1 and though there were reports of fights inside the stadium, there were no further causalities.

At least 20 people were injured including the 21-year-old fan, who was shot and died later in hospital.

Police officer Adriano Lopomo said the fans outnumbered police by far.

"The police could not stop them and unfortunately all they could do was back out and let it happen, just watch the fight," he said.

Marina de Lima, the mother of another injured soccer fan, said the fans blocked police from helping her son.

"He was lying on the ground while over 20 fans from Palmeiras were kicking and hitting him. They stopped the police cars and confronted the policemen," she said.

The scene of the battle is an area where there are often confrontations between rival fans of the big Sao Paulo clubs.

Since police have managed to all but end the violence within the stadiums, fighting has moved into the surrounding areas.

Last year, a Corinthians supporter was killed by Palmeiras hooligans.

On Sunday, there were also scuffles between Corinthians fans and police at the stadium's main entrance minutes before kickoff.

TV footage showed people who were still outside when the game was about to start trying to force their way in. Mounted police used tear gas to push the crowd back.

Corinthians won the match 2-1, ending Palmeiras' 21-match unbeaten run.