Alışveriş sepetinin client'ta tutulmasında bir sıkıntı yok. Zaten orada tutulması lazım çünkü logged in olmayan kullanıcılar da sepet oluşturabiliyor. Cookie'de satın alınacak eşyanın order_number gibi bir id'sini tutup sepette o id üzerinden database'den veri çekersiniz. Local storage da kullanılabilir bu arada.