The shopping cart is the storage where the user persists details about their intention to buy. Intention means it is not an order; it's different. It is just an annotation during store navigation to the effect that the user would like to buy that item.
The intention can take quite long and many trips in and out of the store. So, when it the user would like to find their shopping cart filled with elements they have not bought yet. So, user means that the shopping cart is keyed by the user and independent of the navigation session.
As items stay in the shopping cart for so long, pricing can change. So, prices need to be updated for items not ordered already in the shopping cart.
So, what is inside ...