Executando verificação de segurança...
2

Eu faria da seguinte forma:

Criaria um modelo Cart (com timestamps e um campo expires_at) que teria as seguintes relações: belongsTo(User) e belongsToMany(Products)->withPivot('quantity').

Desta forma você consegue guardar um histórico dos carrinhos do cliente. O carrinho teria uma validade como na maioria das lojas, então vc procura sempre o ultimo carrinho não expirado. Se não houver, você cria um novo. Ao adicionar um item, reseta a validade do carrinho.

Carregando publicação patrocinada...
1