Vorrei implementare un metodo efficace per gestire il pagamento e-commerce di articoli con quantità limitate, come ad esempio i dipinti esclusivi. Il pagamento sarebbe idealmente accettato tramite PayPal e carte di credito. Idealmente, avrebbe funzionato su una base di "primo arrivato, primo servito" e non si limiterebbe a bloccare gli articoli se li aggiungi al carrello come fanno alcuni negozi di moda online.
Tuttavia, il problema principale è che una volta reindirizzato l'utente alla soluzione di pagamento, non si ha il controllo sull'utente.
Anche se dovessi implementare un qualche tipo di blocco sugli elementi, ad esempio un utente lo aggiunge al carrello ed è temporaneamente bloccato per altri utenti per circa 30 minuti - Penso che questo problema prevarrà ancora dato il seguente flusso di lavoro:
- L'utente A aggiunge l'articolo A con quantità limitata (1) al carrello. L'articolo viene rimosso dal sito web per 30 minuti
- L'utente A va al pagamento su PayPal.
- Per qualche motivo, UserA non paga immediatamente su PayPal ma mantiene la sessione in vita per almeno 1 ora
- Dopo 30 minuti, il sito Web ripristinerà l'articolo A di nuovo disponibile
- L'utente B aggiunge al carrello
- L'utente B procede al pagamento
- L'utente B paga per l'articolo
- L'utente A, con la sessione continuamente aggiornata, paga anche per l'articolo.
Ciò comporterebbe un doppio acquisto per lo stesso articolo.
È possibile risolvere questo problema al 100%? Dubito strongmente che ciò accada nella vita reale, ma vorrei gestire tutti i possibili casi.