web-dev-qa-db-fra.com

Une application de commerce électronique devrait-elle réserver des produits avant de tenter un paiement?

Je concevons une demande de commerce électronique et je suis préoccupé par les utilisateurs qui y vivent parfois:

  1. Un utilisateur commande un produit et est redirigé vers le processeur de paiement.
  2. Pendant que l'utilisateur paye, un autre utilisateur commande le produit et il est maintenant en rupture de stock.
  3. L'utilisateur termine le paiement, mais la commande ne peut pas être créée car le produit est en rupture de stock.

Cela peut être évité en réservant le produit avant de tenter le paiement. Mais il y a une certaine complexité, si le paiement échoue, les produits doivent être désenregistrés et un délai d'attente est nécessaire au cas où l'utilisateur n'a jamais terminé le processus de paiement.

Donc, ma question: vaut-elle la peine de mettre en œuvre le processus de réserve? Ou ce scénario est-il assez rare pour simplement ne pas s'inquiéter de cela et résoudre les choses manuellement si cela se produit?

Les réponses dépendent probablement de ce qui est vendu. Cependant, je ne sais pas cela - je développe des logiciels génériques à utiliser par toutes sortes de fournisseurs. Je pourrais le rendre configurable, mais j'ai toujours besoin d'une défaillance raisonnable.

45
paj28

Si vous vendez un produit sensible à temps, vendu au premier arrivé en premier service, réservation du produit n'a aucun sens, un exemple valide est un ticket à un concert ou à un billet d'avion, dans de tels cas, vous êtes souvent connecté à la systèmes de distribution de billets en temps réel.

Pour les cas où le temps n'est pas beaucoup pertinent, le produit pourrait être réservé et mis à disposition ultérieur si le paiement échoue ou que l'utilisateur ne le complète pas, un exemple valide est de vendre des téléviseurs en ligne, peut-être. Si vous ne souhaitez pas réserver le produit, il deviendrait plus complexe et vous risquez de passer à des appels au système dépendant plusieurs fois.

Oui, l'UX est important, mais vous devez également garder à l'esprit que si vous ne tenez pas la base de données d'inventaire ou si plusieurs autres fournisseurs en ligne vendent les mêmes articles que vous courez également.

1
Lalit Mehra