binafy/laravel-cart

Creating cart should not require the user to log in

UnrulyNatives opened this issue · 1 comments

There is a major design flaw in how this cart project works.
Most shops have the "purchase without account log-in" path for clients. Now, creating cart requires being logged in.

In the most common scenario of someone purchasing anything,

  • First comes the decision to buy something.
  • Then, the client provides personal details. But only at the check-out phase.

So in my case, which is selling books, the most common scenario is

  • someone adds a book to the cart
  • proceeds to checkout
  • enters e-mail address and delivery address
  • he may then decide to set up account for any future purchases. In case of bookselling, it's ONLY c. 30% of clients who decide to set up account. I am one of the buyers who purchase goods without any account. I personally avoid it whenever possible.

If I try to enforce my buyers to login first, and then browse through products, they'd go somewhere else.
The reason is simple. Purchasing decisions are most often impulsive. And this cart app does not acknowledge the fact in the way it processes clients' decisions.
Therefore, adding items to cart MUST be session-based. Otherwise your work will not be viable for any real-life scenario.

I'd be happy to provide feedback and suggestions.

I agree with you, but I have already considered this. I plan to add a new feature that allows users to select drivers for storing items, such as for the database and session storage. This way, someone who needs to store items without signing up can change the driver from the database to session storage or something else.

https://github.com/binafy/laravel-cart?tab=readme-ov-file#features