Very safe. Your actual credit card number is not used in the transaction, it generates a one time unique one each time it is used. SO very safe.
I prefer to use Samsung Pay as it does the same thing and I do not have to whip out my credit card at all. I also have it setup for my debit card, again don't have to whip out physical card.
My credit card company allows me to setup virtual cards. I have 5 different ones set up. These are for online/phone use. One just for Amazon. One for hotel/camping reservations. The intent is if say my credit card info gets stolen from Amazon I shut down that virtual card, create a new one and don't have to update credit card information everywhere, just Amazon. My REAL credit card number is still good.