Храним список желания на сервере, а где-нибудь в досье пользователя отображаем, какие именно товары он добавил в список желания. Ну и товары храним вечно, закончившиеся не удаляем из магазина, а просто помечаем, что его больше нет в наличии, и не отображаем на витрине и в поиске (либо при удалении товара автоматом убираем его из всех списков желаемого, через on delete cascade например). Если товар цифровой и бессмысленно покупать более одной копии - можно также удалять при покупке юзером из его списка.