A: Do you have money?
B: Yes, I have / Yes, I do.
They are both natural answers and they mean the same? But someone says only the latter one is correct and I still do not understand why "Yes, I have" is a wrong answer because I have ever heard answers like the first one a lot. What do you native English speakers think?
Thank you so much and take good care.
Strictly speaking, the correct response is "Yes, I do". However, you are right that many people will reply "Yes I have" - and it is perfectly acceptable in normal speech, because the listener knows that you mean "Yes, I have money".
The correct response is "Yes, I do" because the question was phrased as "Do you....?" If the question had been phrased as "Have you money?", then the strictly correct answer would be "Yes, I have" - although, once again, "Yes, I do" would be acceptable.
I'm not a teacher of English, but I have spoken it for (almost) all of my life....