Imagine you want to set up a minimalist e-commerce website for a "lemonade stall". You only have two products - a large glass of lemonade OR a small glass of lemonade (always either/or; never both). You want people to select, to pay, to enjoy - that fast, that simple, and with no other distracting features/options offered. Because you're a child who can't add, and in any case you make the rules, everyone has to pay for their one glass of lemonade separately. A shopping cart makes no sense, and in fact detracts from the value of the product you are offering. On the other hand, you do want to encourage repeat customers, so a customer database of some kind might be useful (or might not). And somewhere in the future you can imagine introducing a medium glass of lemonade as a third product. But that is as complex as it can possibly get.

If that is your brief, what are the options one should consider? Writing the functionality from the ground up? Taking an off-the-shelf package and configuring/stripping it back? Using a shopping cart behind the scenes, but hiding it? I'm interested in knowing what approaches are viable, and which is likely to take the least work to get an acceptable result. Answers that lean towards implementation in PHP/MySQL, or e-commerce frameworks written in them, are preferred.

  • As an aside... would it not be helpful if everyone offering any kind of e-commerce solution created a "lemonade stall" website demo (maybe with just one size of lemonade) so developers can see and understand the basics in the same way that "hello world" programs help with unfamiliar programming languages?
    – omatai
    Jan 28, 2014 at 23:32

2 Answers 2


If you don't need a shopping cart, put the item selection on the same page that you collect the payment information. Then submit it all in one post to your server for processing. You wouldn't need an off-the-shelf component for that, unless you weren't able to integrate the payment API on the server side.


Yes there is. One such system is 1-click, which is patented by Amazon. From 1-click,

... allows an online shopper using an internet marketplace to purchase an item without having to use shopping cart software.

The fact that it's already exists and, as in your comment, you read the patent, I believe you need to either a) license it or b) make sure you use something that's not claimed by the patent (I'm not affiliated with them, btw.).

  • But according to Wikipedia, and confirmed as far as I can tell by reading the patent, Amazon has amended the patent to rely on a shopping cart model of e-commerce. The whole point of a shopping cart, surely, is to accumulate multiple items. My whole point is that there will only ever be one item purchased. So how does one achieve it?
    – omatai
    Jan 29, 2014 at 3:20
  • I think it's easier to see it in action, say on iTunes Store where you just click on a button labeled with the price of a song, and click it again after the button label changed into "Buy Now". When you're already authorised it just charge your credit card and you start downloading the song. If you want to buy another song, you click on the next song, and so on. There's no shopping cart.
    – imel96
    Jan 29, 2014 at 6:51
  • How the hell did they get that patent? It's basically "Order something on the web by clicking an 'Order' button". Ridiculous, or am I missing something?
    – CodeCaster
    Jan 29, 2014 at 10:41
  • @CodeCaster: I believe it relies on the additional constraints of there being a shopping cart available to not use, and using stored payment data. A system which allows you to begin purchase of an item by clicking "buy" would not fall under that unless you had the options to both buy multiple items and use stored payment details.
    – Phoshi
    Jan 29, 2014 at 10:43
  • So any full-blown webshop offering a "quick pay" page where you, as a returning customer, can for example order items that are on sale with one click, is covered by this patent? Deer god.
    – CodeCaster
    Jan 29, 2014 at 10:44

Not the answer you're looking for? Browse other questions tagged or ask your own question.