Do not use the present perfect (I have done) when you talk about a finished time (for example yesterday/ten minutes ago/in 1985/when I was a child). Use a past tense:
The weather was nice yesterday. (not ‘has been nice’) They arrived ten minutes ago. (not ‘have arrived’) I ate a lot of sweets when I was a child. (not ‘have eaten’) Did you see the news on television last night (not ‘Have you seen’) no, I went to bed early. (not ‘have gone’).
Here, we are thinking of the action in the past. We don’t know from this sentence whether Tom has his key now.
We use the present perfect for a period of time that continues from the past until now. For example, today, this week, since 1985. The present perfect always has a connection with now.
We use the past simple for a finished time in the past. For example, yesterday, last week, from 1985 to 1991. The past simple tells us only about the past.