Back around 1997, I helped a then-new client get online. At first I simply posted scans on the site, with cart buttons that pointed to a third party cart/checkout service. That worked well, and I developed two other catalog systems over the years that added a lot more features for her to display product, still using the third party cart service. (You checked out on their site, not ours.) But finally as of a couple of years ago, the cart service was bought out and they changed their business focus and data exchange interface, which left us out in the cold. With the way the web has changed over the past 20 years (especially mobile usage), and the sharp increase in security/privacy issues, I felt it was better that she move to some sort of full-blown ecommerce system.
We went with Magento. Actually I shouldn't say "we" since I stayed out of it, other than managing the server. Magento has been a total fricking nightmare. The developers did things half-assed, not quite adding the features she wanted, and left gaping security holes that they should very well have known about. Rather than have me address them, they sort of strong-armed my client into going with a third party security firm, and now visits and sales are way down. The SEO I did to help keep the site at the top of the Google rankings for her product lines all got blown out when she moved to Magento. The system itself is known to be problematic and is hacked frequently.
Thing is, I can't think of much of anything else out there. If I were only selling a few products (like a dozen items), I would probably work with PayPal's cart/checkout buttons. Larger, I would look into installing WordPress and finding one of the better catalog/cart plugins. Keep in mind that as a merchant, you are responsible for keeping your customers' data secure and private. For me, that is a deal killer. If someone's data is hacked, the business owner had better have a boatload of insurance or rainy day fund to cover any damages.
That is why I feel it is better to go with a third party that hosts their own cart and catalog system, which you may pay a small fee to use. Someone else hosts it and maintains it, including the security. The information is stored on their server, not yours. It might cost a little more than hosting it yourself, but that peace of mind gives you more free time to work on promoting the business or doing product development.
The company we used to use is still around (AmeriCart) and they allow you to upload your own products, process payment, etc. all through their servers. There are others out there as well. That's my own choice. YMMV of course.