Question: Can I give zakat to a person whom I suppose to be poor?
It is necessary to inquire about the person to be given zakat. Zakat is not given based on a guess. One has to inquire whether the recipient is poor or not and ask him/her if need be. When asking, one should not say that one will give zakat but simply ask whether he/she is deemed poor Islamically or not and whether he/she is in debt. In fact, when giving zakat, it is not necessary to mention that it is zakat. It is perfectly acceptable to say that it is a gift.
Question: I asked some people whether they know a poor person to give zakat, and they show me a poor person. I gave him zakat. Afterwards, I found out that the recipient was not Muslim. Is my zakat valid, or do I have to repay it?
It is not valid to give zakat to a non-Muslim. However, if one gives zakat after inquiring about the recipient and then finds out that he/she is rich or someone not entitled to receive zakat, there is no harm. That is, your zakat is valid. It is not necessary to repay it because you gave it not randomly, but after inquiring about the recipient.