That's a good idea. Seems the problem with it is to lost the card and or stolen. They can easily scratch it out to get the code. But to add maybe should also get a confirmation from the seller and notify in applications to verified.
It is now easy to them to buy bitcoin or ethereum using scratch card.
Yes, the seller would have to have an app to tell the website that a card was sold. Otherwise the website will not release the coins. So someone could steal all of the cards and they would get nothing. This is how the phone cards work in some countries.
I suppose there can be some sort of re-issuance of cards to the seller if they are stolen (at the seller's expense). The numbers on the original cards will be frozen and new numbers created.
I suppose the seller could be an asshole and just sell the cards without informing the website. But this does not benefit the seller in any way and only pisses off the buyer. And complaints about that seller could have him banned or somesuch. It just wouldn't make business sense.