Question

Je suis en train d'écrire les dernières étapes d'un module de paiement en utilisant l'API FirstData Global Gateway pour un client. Toutes les vues du formulaire de saisie de données ont été créées et les contrôleurs sont données de test communique correctement avec le webservice FirstData.

Je cherche réflexions sur les meilleures pratiques sur la façon de structurer l'expérience utilisateur pour la caisse après le bouton de commande de processus 'est cliqué.

Je prévois sur l'utilisation de javascript pour désactiver le bouton de processus après avoir été cliqué et que les informations transmises au Service Web pendant ce délai. Quelles sont les méthodes que vous avez utilisées dans le passé pour créer ce délai, tout en informant l'utilisateur que l'appel de paiement est effectué. Quelles sont les méthodes que vous avez utilisées dans le passé pour mieux utiliser la fonction de rappel qui avertit si la transaction a été approuvée ou refusée? Quelqu'un at-il trouvé le traitement de toutes ces informations dans le même script en utilisant PHP_SELF pour l'action, ou est-il généralement préférable de placer cette logique ailleurs?

Juste quelques demandes de renseignements généraux pour aider à guider le processus par un petit essai et erreur. Peut-être que la réponse va aider à recueillir quelques très bonnes idées pour l'utilisation de tout le monde.

Était-ce utile?

La solution

  

Quelles sont les méthodes que vous pourriez avoir   utilisé dans le passé pour créer ce retard   tout en informant l'utilisateur que le   appel de paiement est effectué?

Vous ne voulez pas retarder le processus tout comme le traitement du paiement entraînera assez frais généraux de retard naturel de se produire par lui-même. Votre objectif à ce stade d'éviter les soumissions en double et informer l'utilisateur se passe quelque chose pendant qu'ils attendent. La désactivation de ce bouton est une bonne idée. En outre, la création d'une clé unique pour ce processus de paiement qui doit également être soumis à l'ordre est une bonne idée. Quand ils soumettent leur paiement, vous vérifiez pour cette clé et assurez-vous qu'il est là (il est généralement dans une variable de session). Si elle est le supprimer et traiter la transaction, si elles soumettent à nouveau le formulaire, il sera alors en mesure d'être signalé comme une transaction en double.

  

Quelles sont les méthodes que vous pourriez avoir   utilisé dans le passé pour mieux faire fonctionner le   fonction de rappel qui informe si le   transaction a été approuvée ou   diminué?

La passerelle de paiement va retourner un approuvé, refusé ou valeur d'erreur. Rien d'extraordinaire donc il n'y a vraiment pas de manipulation de fantaisie nécessaire. transaction approuvée devrait avoir toutes les actions d'information et de commande base de données pertinentes effectuées et l'utilisateur doivent être prises à un remerciement / page de confirmation. Les erreurs et les baisses peuvent être traitées d'une manière similaire avec l'utilisateur étant présenté à la page de paiement à nouveau. Si la carte est refusée informer l'utilisateur poliment que leur banque a refusé la transaction et les inviter à utiliser une autre carte de crédit. S'il y a une erreur de traitement, vous pouvez leur demander d'essayer à nouveau ou les diriger à vous contacter par téléphone pour passer leur commande.

  

Quelqu'un at-il trouvé le traitement tout cela   informations dans le même script en utilisant   PHP_SELF pour l'action, ou est-ce   généralement préférable de placer cette logique   ailleurs?

Tomate, tomate. Tout dépend de votre style de programmation. Avoir le processus de paiement sur la même page que la forme est très bien. Je l'ai fait. Tout ce qui importe est que le paiement est géré correctement et l'utilisateur voit ce qu'ils ont besoin de voir. Ce qui se passe en arrière-plan n'a pas d'importance pour eux.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top