The literal answer to the question: How do you say “who’s there?” in Spanish? — would be:
"¿Quién es allí?" — Who's There?
Listen to Audio: How to say “Who’s there?” in Spanish
…but this is the automatic translation and is generally incorrect.
The slightly longer answer to the question of how to say “Who’s there?” in Spanish, is: It depends on your motive for asking the question and to whom you are asking it. If, for example, you’re on the phone and your friend says to you:
"Ven a mi casa." — Come over to my house.
…and you want to ask her “Who’s there?” (because you don’t want to go if her ex-husband is there), you would say:
¿Quién más está allá? — Who's there? (who [else] is there?)
If you want to answer the door (someone’s knocking), you would say:
¿Quién es? — Who is it? (an English speaker might say "Who's there?")
As you can see, we did not say “¿Quién es allí?” — the allí is implied.
If you want to answer the phone (and the inconsiderate person on the other end hasn’t identified themselves) you could say “¿Quién es?” but, to be polite you may want to say:
¿De parte de quién? -- Who's calling? (literally, 'on whose part', like, to whom am I speaking?)
I hope this helped you figure out who’s there.
Allí, allá and ahí will be the topic of the next lesson.