NewNo plan feeNo plan fee. Just 2.9% + $0.30 per card sale, and signing up is free.Try now →

Stripe · Codes de refus

Que signifie le code de refus Stripe authentication_required ?

Vérifié le

Stripe renvoie authentication_required lorsque la banque de la carte refuse un paiement car elle a besoin que le titulaire de la carte le vérifie, généralement via 3D Secure. Ce n'est pas un refus de la carte elle-même. Lorsque l'acheteur est au moment du paiement, les formulaires de paiement de Stripe ouvrent normalement l'étape de vérification de la banque afin qu'il puisse approuver et réessayer. Pour les paiements effectués sans la présence du client, comme un renouvellement d'abonnement, le magasin doit faire revenir le client pour confirmer le paiement.

Type
Authentification requise (refus souple)
Qui a refusé
La banque de la carte
Réessayer
Seulement après que le titulaire de la carte ait terminé la vérification de la banque
Action de l'acheteur
Approuver le paiement dans l'étape de vérification de la banque ou l'application bancaire
Action du commerçant
Demander au client de revenir et de confirmer ; ne pas renvoyer la même transaction à l'aveugle

Ce que fait PlatformDTC

Au moment du paiement, PlatformDTC ajoute l'indication "Votre banque requiert une authentification. Veuillez réessayer et compléter la vérification." et maintient le paiement sur le même processeur pour le 3D Secure, sans jamais le déplacer vers un processeur de secours. Pour les renouvellements, selon le calendrier fixe ou avec Smart retry, il n'est pas réessayé à l'aveugle : il est mis en attente après la date d'échéance et le client reçoit un e-mail "action requise" lui demandant de confirmer le paiement auprès de sa banque.

Pourquoi cela arrive

Les banques demandent une vérification supplémentaire lorsqu'elles souhaitent que le titulaire de la carte confirme un paiement, et Stripe note que les entreprises concernées par des réglementations comme la Strong Customer Authentication verront des paiements qui nécessitent une authentification.

Stripe note un cas particulier : si la banque renvoie ce code même après que l'acheteur a terminé la vérification, seule la banque peut en expliquer la raison, le client doit donc la contacter.

Ce que l'acheteur peut faire

Réessayez le paiement et complétez l'écran de vérification ou l'invite d'approbation dans votre application bancaire. Si la banque continue de refuser après que vous ayez vérifié, appelez le numéro au dos de la carte.

Ce que le magasin peut faire

Pour les abonnements et autres paiements effectués en l'absence du client, envoyez au client un lien par e-mail pour confirmer le paiement. Réessayer la même transaction sans eux ne peut pas réussir, car personne n'est là pour répondre au défi de la banque.

Pour les développeurs

Le code arrive en tant que `decline_code` sur le `last_payment_error` du `PaymentIntent`. Hors session, confirmez le `PaymentIntent` en session avec le client afin que Stripe puisse exécuter le flux 3D Secure. Codes Stripe associés : `authentication_not_handled` (le client a ignoré l'étape requise) et l'erreur API `payment_intent_authentication_failure` (la vérification a échoué).

Questions fréquentes

Est-ce que authentication_required est un refus ferme ?
Non. La carte peut toujours être utilisée. La banque souhaite seulement que le titulaire de la carte confirme ce paiement, il passe donc une fois qu'il a terminé la vérification.
Pourquoi les renouvellements d'abonnement reçoivent-ils authentication_required ?
Les renouvellements s'effectuent sans la présence du client, l'étape de vérification de la banque ne peut donc pas être affichée. Le client doit revenir et confirmer le paiement, c'est pourquoi les magasins envoient un lien de confirmation par e-mail au lieu de réessayer.
Le client a vérifié mais a quand même reçu authentication_required. Pourquoi ?
Stripe indique que si la banque renvoie ce code malgré un paiement vérifié avec succès, le client doit contacter l'émetteur de la carte pour plus d'informations.

Sources

Voir aussi

Bibliothèque des paiements