You interpreted it correctly. All cards that are present in both hands are discarded. If one player has two Merchants and the other has one Merchant and both players have one Searing fire, all Merchants and Searing fires are discarded from both hands.
I'm just not sure how to phrase it concisely. The sentence "All cards that are present in both hands are discarded" makes sense with the example right after it, but I can see people reading it as "discard all cards from each hand."
I don't want to say "all cards common to both hands" because use of the word "common" would cause rarity confusion. I could make it wordy and say "Any card that is in your opponent's hand as well as yours is discarded." Or is it clear enough without going to such lengths?