Refus de paiement
En savoir plus sur les refus de paiement et comment réduire votre taux de refus.
Les paiements peuvent échouer pour diverses raisons, et parfois pour éviter les transactions frauduleuses. Stripe s’efforce de réduire les taux de refus pour tous les moyens de paiement pris en charge. Nous collaborons avec les émetteurs et les réseaux pour améliorer les taux d’acceptation, souvent sans affecter votre intégration.
Un paiement peut échouer pour trois raisons :
Vous devez gérer différemment chaque type d’échec de paiement. Pour chaque échec, utilisez le Dashboard ou l’API afin de consulter les détails d’un paiement. Lorsque vous utilisez l’API, examinez le résultat de l’objet Charge
. Cet attribut fournit des informations sur le type et le motif d’échec du paiement.
Stripe traite les refus de paiement non effectués par carte bancaire de la même manière que les refus de paiement par carte bancaire. Stripe vous envoie un code de réponse contenant des informations sur le refus de paiement, par exemple s’il est dû à des fonds insuffisants, à une carte perdue ou volée, ou à toute autre raison.
Refus par l’émetteur
Lorsque l’émetteur de la carte de votre client reçoit un paiement, ses systèmes et modèles automatisés décident de l’autoriser ou non. Ces outils analysent différents signaux tels que les habitudes de dépense, le solde du compte et les informations de la carte bancaire (date d’expiration, adresse et CVC).
Si l’émetteur de la carte refuse un paiement, Stripe vous communique toutes les informations de refus que nous recevons. Ces informations sont disponibles dans le Dashboard et via l’API. Lorsque les émetteurs fournissent des explications spécifiques, telles qu’un numéro de carte erroné ou des fonds insuffisants, ces explications sont renvoyées à Stripe sous la forme de codes de refus de paiement.
Paiements bloqués
Stripe Radar bloque les paiements à haut risque, tels que ceux dont le CVC ou le code postal ne correspond pas. Cet outil automatisé de prévention de la fraude évalue chaque paiement, sans intervention nécessaire de votre part.
Un paiement refusé par Radar
Lorsque Stripe bloque un paiement, elle obtient l’autorisation de l’émetteur de la carte en amont, mais ne débite pas la carte. Cette précaution permet d’éviter d’éventuels paiements frauduleux pouvant donner lieu à des litiges.
Pour certains types de carte, l’autorisation de l’émetteur de la carte (du montant du paiement) peut apparaître sur le relevé des clients. Cependant, Stripe n’a pas débité ce montant ni retiré les fonds. L’émetteur de la carte supprime généralement cette autorisation du relevé du client au bout de quelques jours.
Si vous constatez qu’un paiement bloqué est légitime, vous pouvez supprimer le blocage en accédant au paiement concerné sur le Dashboard et en cliquant sur Ajouter à la liste blanche. Cette action ne relance pas le paiement, mais empêche Stripe Radar de bloquer les futures tentatives de paiement utilisant la même carte ou la même adresse e-mail.
Note
Vous ne voyez pas le bouton Ajouter à la liste blanche sur la page relative aux informations sur le paiement ? Contactez Stripe pour ajouter cette fonctionnalité à votre compte Radar.
Lorsque vous utilisez l’API, le outcome
d’un paiement bloqué reflète le type d’échec de paiement et la raison de l’échec de paiement, ainsi que le niveau de risque évalué.
... outcome: { network_status: "not_sent_to_network", reason: "highest_risk_level", risk_level: "highest", seller_message: "Stripe blocked this charge as too risky.", type: "blocked" }, ...
Appels à l’API non valides
L’API peut afficher un appel à l’API non valide comme celui-ci :
L’appel à l’API non valide génère une réponse d’erreur de la forme suivante :
{ "error": { "code": "invalid_number", "doc_url": "https://docs.stripe.com/error-codes#invalid-number", "message": "Your card number is incorrect.", "param": "card[number]", "type": "card_error" } }
Le résultat d’un paiement refusé inclut le type d’échec de paiement et le motif, en fonction du code de refus de l’émetteur de la carte. Le motif peut contenir d’autres informations que le code de réponse de l’émetteur, par exemple si l’évaluation d’une règle Radar a bloqué le paiement.
... outcome: { network_status: "declined_by_network", reason: "expired_card", risk_level: "normal", seller_message: "The bank returned the decline code `expired_card`.", type: "issuer_declined" }, ...
Au fil du développement de votre intégration Stripe, testez-la en permanence pour identifier tout bogue potentiel susceptible de conduire à des appels à l’API non valides. En cas d’appel à l’API non valide, vous ne verrez habituellement pas de paiement apparaître dans votre Dashboard. Cependant, dans certains cas, le paiement sera visible.
... outcome: { network_status: "not_sent_to_network", type: "invalid" }, ...