This question already has an answer here:
Brazil have Neymar. Argentina have Messi. Portugal have Ronaldo. Germany have a team!
I read this on Facebook, and someone said the singular "has" is supposed to be there instead of the plural "have" in all cases within the quoted phrase.
I got myself thinking, though, whether the plural wouldn't be correct, making each country's name a collective of the people that are part of it, or perhaps a collective reference to the national team of each country in this specific case.
I've seen uses such as
the police are conducting an investigation
making the noun "police" a collective of all people within a police force, but I'm not sure these kinds of usage are a recurring mistake by native speakers or something of that nature.