What a homophone is
A homophone is a word that sounds the same as another but has a different spelling and meaning. English has a great many, because its spelling was fixed centuries ago while its pronunciation kept changing.
They only cause problems in writing. When you speak, nobody can hear the difference — which is exactly why spellcheckers miss these mistakes: both spellings are real words.