Analyser le résultat du paiement

Après chaque paiement (accepté ou refusé) la plateforme envoie une notification contenant le résultat de paiement au site marchand.

Cette notification est également appelée IPN.

Pour traiter les notifications, le marchand doit développer une page dédiée qui analyse les données transmises en mode POST (exemple d'URL: https://site-marchand.com/analyse_paiement.php).

En fonction du résultat, cette page doit déclencher différentes actions (modifier le statut de la commande, mettre à jour les stocks, etc).

Prérequis :

  • L'URL de la page qui analyse le résultat du paiement doit obligatoirement être renseignée dans le Back Office Expert (voir chapitre Paramétrer les notifications).
  • Le marchand doit s'assurer que cette URL soit joignable par la plateforme de paiement et ce, sans redirection.

    Les redirections entrainent la perte des données présentes dans le POST.

  • En cas de restriction mise en place du côté du site marchand,la plage d'adresses d'IP à autoriser est: 194.50.38.0/24.
    Les notifications sont envoyées depuis une adresse IP comprise dans la plage 194.50.38.0/24 en mode Test et en mode Production.
  • La page ne doit pas comporter d'affichage HTML.

    L'accès aux ressources telles que les images ou feuilles de styles ralentissent les échanges entre la plateforme de paiement et le site marchand.

  • Evitez au maximum d'intégrer des tâches consommatrices de temps comme la génération de facture ou l'envoi d'e-mail dans ce script.

    Le temps du traitement influe directement sur le délai de l’affichage de la page de résumé à l'acheteur. Plus le traitement de la notification est long, plus l’affichage est retardé.

    Au delà de 35s, la plateforme considère que l'appel a échoué (timeout).

Echec de notification (IPN)

En cas d'échec de l'appel à l’URL de notification (IPN), un e-mail d'avertissement est envoyé à l’adresse spécifiée dans le Back Office Expert (voir chapitre Paramétrer les notifications).

Il contient :

  • le code HTTP de l’erreur rencontrée,
  • des éléments d’analyse en fonction de l’erreur,
  • la procédure à suivre pour renvoyer la notification depuis le Back Office Expert.

Afin d'aider le marchand à identifier l'origine de l'erreur, la plateforme analyse systématiquement les 512 premiers caractères retournés par le site marchand.

Ces caractères sont ensuite affichés dans le détail des transactions, onglet Historique:

Concevoir le script de traitement

Le script de traitement doit comporter au moins les étapes ci-dessous:

  • Récupérer la liste des champs présents dans la réponse envoyée en POST
  • Calculer la signature en prenant en compte les données reçues
  • Comparer la signature calculée avec celle réceptionnée
  • Analyser la nature de la notification
  • Récupérer le résultat du paiement

Le script peut par exemple tester l'état de la commande (ou l'information de votre choix) pour vérifier qu'elle n'ait pas déja été mise à jour.

Une fois ces étapes réalisées, le script peut mettre à jour la base de données (nouvel état de la commande, mise à jour du stock, enregistrement des informations du paiement etc.).