Assuming a merchant accept Bitcoin,
You as a shopper, place an order, and that merchant did not deliver, or sent to the wrong address, or sent a fake product.
You can not reverse the payment, you can get your bitcoins back, and the only thing you can do it leave a negative feedback.
Of course, there are many other scenarios, like phishing websites, fake websites, selective scams, and so on
What are your thoughts and ideas to prevent these scams.
You should know who the merchant is and trust the website/person enough to trade with them in bitcoins. It's the same case with ebay where people have just created/bought fake accounts with a lot of feedback and the payments have been reversed or the item was damaged. It is better to use a middle man who can hold the payment and release it when the product has been delivered but here lies the problem if the buyer is a scammer and lies about not receiving the product/receiving a damaged product.
When big websites like Amazon can be fooled by customers, we too can be cheated. Buying something from a physical store using bitcoins is the best way to avoid such scams.