"日本に来たことあるの?"は「you have been to Japan before?」と言えますね。こちらの例では「have been to~」で訪れた、やって来たと表し「before?」で前に、以前にと言い表しています。
次の例文は少し言い方を変えていますが同じく"以前日本を訪れたことがあるんですか?"と言う意味になります。こちらの例では「before?」に代わって「previously」で"前に、以前に"と言い表し「have been to~」の代わりに「visit」で"訪れる、訪問する"と表しています。
You've been to Japan before?
日本に来たことがあるのですか?
I didn't know you've been to Japan!
日本に来たことがあったなんて知りませんでした!
上記のように英語で表現することができます。
I didn't know (that) ...
「〜だとは知りませんでした」
お役に立てればうれしいです。