Explanation of MySQL Transactions
As others have stated, the point of using MySQL or any other RDBMS is to have transactions. With transactions, you can ensure everything you need to get done, gets done properly and in the right order where as using something like MongoDB doesn't really ensure that.
What others have touched on but haven't elaborated on is that we live in a much different world now then we did 5 years ago.
You could very well read in your product catalog from a MongoDB or Firebase. Firebase, would allow you to show how many products are in stock in real time and if a product is in limited quantity, show the user that and lock them out from purchasing it if it sells out.
If you were to use something like Stripe to process the CC, then there really is no need for MySQL here. Process the payment with Stripe, ensure that it went through correctly via the backend code they provide and update MongoDB or Firebase to reflect the purchase.
MySQL and Transaction "could" and "probably should" be used for eCommerce, but now a days don't need to be.
Transactions are vital to the banking industry where if someone transfers money to another account the bank needs to be 100% positive the funds were removed from 1 account and added to the other or the entire transaction fails.
If you don't need to maintain accurate inventory - ie: your printing on demand with something like printful then a transaction probably isn't needed.