I understand that as the present perfect tense. Which does not work with the time given.
yes. English uses another construction here. While Czechs and Germans use "mít/haben" here, it is "be closed" in English.
How would you have expressed "We are closed for today"? Meaning you were open earlier but have now closed for the remainder of the day.