Erreur courante
Sips : commande restée en attente après un paiement
Symptôme
Le client a payé sur la page de la banque, puis il est revenu sur votre boutique. La page « commande reçue » affiche « Paiement en cours de confirmation ». Dans l’administration, la commande est restée :
- soit « En attente de paiement » ;
- soit « En attente ».
Cause
Avec Relqor Sips, seule la réponse automatique de Sips, envoyée de serveur à serveur avec un sceau valide, change le statut d’une commande. Le retour du client sur votre site ne change rien.
Commande « En attente de paiement »
La réponse automatique n’a pas été reçue, ou n’a pas pu être appliquée :
- Elle n’est pas encore arrivée. Selon la documentation Sips, elle peut arriver en retard, ou jamais.
- Votre site n’est pas joignable depuis Internet (site local par exemple). Sips ne peut pas appeler l’adresse
https://.<site> / ?wc-api =relqor_sips_notify - Le sceau est refusé. Si la clé secrète du mode actif n’est pas la bonne, la réponse est rejetée (HTTP 403) et la commande n’est pas touchée.
- Un contrôle a échoué :
merchantIdoukeyVersiondifférents du mode actif, montant ou devise différents, référence inconnue, tentative créée dans un autre mode (test ou production). Une note est ajoutée à la commande, si elle est retrouvée, et une erreur est écrite dans le journal, sans changement de statut. - Le code reçu est sans effet :
01,24,25,94, ou un code inconnu. Seule une note est ajoutée.
Si le client a abandonné le paiement, Sips envoie une réponse avec le code 97 environ 15 à 16 minutes après la redirection. La commande passe alors en « Annulée », si c’est la dernière tentative de paiement.
Commande « En attente »
La réponse a bien été reçue, mais elle ne permet pas de considérer la commande comme payée :
- code
00aveccaptureModeVALIDATIONouAUTHOR_NOCAPTURE, ou sanscaptureModedans la réponse : l’autorisation est acceptée, mais le plugin ne peut pas considérer les fonds comme remisés ; - code
60ou62: transaction en attente ; - code
05avecscoreColor=ORANGE: avertissement de fraude, à accepter ou refuser dans l’extranet.
Solution pas à pas
- Lisez les notes de la commande. Chaque réponse traitée y ajoute une note avec le code, son libellé et la référence de la transaction. Une note d’anomalie signale un contrôle en échec.
- Consultez le journal WooCommerce, source
relqor-sips(WooCommerce > État > Journaux). Un sceau refusé y est consigné. Les messages de ce journal technique sont en anglais. - Vérifiez la transaction dans l’extranet de votre banque, avec sa référence.
- Commande « En attente de paiement » sans aucune note : vérifiez que votre site est joignable depuis Internet, que le mode (test ou production) est celui de la transaction, et que la clé secrète et la
keyVersiondu mode actif sont les bonnes. - Commande « En attente » après un code
00: les fonds ne sont remisés qu’après une action de votre part (validation de la transaction) ; traitez ensuite la commande. - Avant de changer un statut à la main, assurez-vous dans l’extranet que le paiement est bien accepté. Le plugin ne remet jamais en arrière une commande déjà payée.