What looks "logical" to you has nothing to do with English grammar. If your native language is one where the present perfect is the usual way to refer to past events, the way English uses the present perfect will be difficult to grasp.
The basic way to refer to past events in English is to use the simple past. That is the logic of English tenses. As I have discussed with you in other questions, the present perfect in English is used to express certain nuances, primarily related to recency and current relevance of events that were completed in the past. Seldom if ever is the present perfect mandatory; in those cases where it is permissible, you may frequently use the simple past instead. The role of the present perfect in English is entirely different from its role in French, German, Latin, and Spanish.
I cannot immediately imagine a context in which
Where have you bought it
would be grammatical. The focus of the question is on place, and the timing of the purchase has no relevance whatsoever. The simple past is mandatory.
Where did you buy it
Where have you been
is permissible if what is meant is where have you been recently. Here recency IS relevant because, not being a vegetable, you presumably have been a great many places over time. Consequently, without a time marker, the question is vague. But you could grammatically say
"Where were you
without a time marker, and recency would be implied. You do not need the present perfect to indicate mere recency. The primary situation where the present perfect may be mandatory is when a relatively recent event is the cause of something that is currently relevant.
Now your example about spending holidays is very complex, in part because "holidays" has multiple meanings. Let's substitute "vacation."
Where have you taken your vacations
is grammatical as is
Where did you take your vacation
but they are subtly different in meaning. The first is asking for a list of places. It is not primarily talking about a completed event so much as talking about a series of events that have occurred in the past and will likely recur in the future. The second is asking about a single event that is definitely past.
I understand if you find obscure when it is permissible to use the present perfect in English. If you remember that using the present perfect is seldom mandatory in English and that the simple past is almost always permissible, your life will become easier.