Bonsoir ne peut être dit que le soir (mais le soir n'est pas clairement défini).
Personnellement je n'attends pas qu'il fasse nuit pour dire bonsoir, je dirais plutôt que je le dis occasionnellement à partir des alentours de 18h (heure du diner), quand beaucoup de gens ont fini de travailler, c'est donc la fin de journée.
Une fois la nuit tombée, il devient plus rare d'entendre Bonjour ceci dit.
Bonjour est plutôt commun, passe-partout et pratiquement jamais choquant.
Par contre, si vous n'êtes pas le premier à saluer, il est souvent coutume de répondre la même chose que votre interlocuteur, par ordre pratique et parfois pour éviter de gêner.
Certains préciseront volontairement Bonsoir dans l'intention de corriger et l'interlocuteur peut par exemple alors répondre « Ah oui c'est vrai [pardon][, bonsoir !] ».
En parlant de gêne, il peut arriver que les deux personnes se souhaitent Bonjour et Bonsoir en même temps, résultant alors parfois en la personne étant légèrement gênée (si elle ne réagit pas comme le cas ci-dessus) la poussant parfois à vouloir se corriger.
Personnellement, à mon travail, j'utilise presque toujours Bonjour au client (surtout car je ne sais pas forcément quelle heure il est, s'il est déjà tard ou non) le plus important pour moi étant surtout la forme de politesse pour dire au revoir. Au lieu d'un simple au revoir je préfère tenter d'être plus approprié en précisant correctement Au revoir et bonne (fin de) journée ou après midi, soir, et/ou Bon week-end ou Bonnes fêtes, etc. étant toujours plus chaleureux.