Можно из без сессий. Все на javascript. Нажимаешь купить - товар в куках. А при оформлении покупке все куки передаешь на сервер. На сервере уже формируешь заказ. И никакой нагрузки на сервер, все делается на фронте. Не надо хранить корзину в базе. Дергать базу при каждом нажатии купить - это расточительство ресурсов сервера. И еще бесит, когда заходишь в корзину и решил увеличить количество товара, нажимаешь +, а потом нужно нажать еще обновить.