# Remboursement et annulation des paiements Découvrez comment annuler ou rembourser un paiement. Vous pouvez [annuler un paiement](https://docs.stripe.com/refunds.md#cancel-payment) avant qu’il ne soit finalisé, sans frais. Vous pouvez également rembourser tout ou une partie d’un paiement après sa finalisation, ce qui peut entraîner des frais. Les frais de traitement de Stripe liés à la transaction initiale ne sont pas remboursés. Consultez notre [page des prix](https://stripe.com/pricing/local-payment-methods) pour plus d’informations. Les remboursements sont prélevés dans votre solde Stripe disponible (sans les montants en attente). Si votre solde disponible ne couvre pas le montant du remboursement, Stripe maintiendra le remboursement en attente jusqu’à ce que votre solde Stripe devienne suffisant. Vous pouvez remédier à un solde Stripe négatif en collectant des paiements ou *en rechargeant* (The act of adding funds to a Stripe account, typically through a transfer from a bank external to Stripe) le solde de votre compte. Dans les territoires où cela est applicable, Stripe peut débiter automatiquement vos comptes bancaires pour récupérer un solde Stripe négatif. ## Demandes de remboursement Nous soumettons les demandes de remboursement à l’institution financière de votre client ou à *l’émetteur de carte* (The entity that issued a payment card to a cardholder. This could be a bank, such as with the Visa or Mastercard network, or it could be the card network itself, such as with American Express). Les remboursements réussis s’affichent sur le relevé bancaire de vos clients en temps réel, en fonction du réseau de cartes et de l’institution financière émettrice. Les litiges et les contestations de paiement ne sont pas possibles sur les frais de carte de crédit entièrement remboursés. Si l’ensemble des conditions suivantes sont réunies, nous envoyons un courriel à votre client pour l’informer de ce remboursement : - Le paiement initial a été créé pour un client dans votre compte Stripe. - Le client dispose d’une adresse courriel enregistrée. - Vous avez activé **Envoyer un courriel aux clients pour obtenir des remboursements** dans le [Dashboard](https://dashboard.stripe.com/account/emails). Vous pouvez [afficher les paiements remboursés dans le Dashboard](https://dashboard.stripe.com/test/payments?status%5B0%5D=refunded&status%5B1%5D=refund_pending&status%5B2%5D=partially_refunded) ## Effectuer des remboursements Vous pouvez émettre des remboursements à l’aide de l’[API Refunds](https://docs.stripe.com/api/refunds.md) ou du [Dashboard](https://dashboard.stripe.com/test/payments). Vous pouvez émettre plusieurs remboursements pour un paiement, mais le montant total du remboursement ne peut être supérieur au montant du paiement initial. #### Dashboard Pour rembourser un paiement à l’aide du Dashboard : 1. Trouvez le paiement que vous souhaitez rembourser sur la page [Paiements](https://dashboard.stripe.com/payments). 1. Cliquez sur le menu déroulant (⋯) à droite du paiement, puis sélectionnez **Rembourser le paiement**. 1. Par défaut, le remboursement est total. Pour effectuer un remboursement partiel, saisissez un montant de remboursement différent. 1. Sélectionnez le motif du remboursement. Si vous sélectionnez **Autre**, vous devez ajouter une note expliquant le motif du remboursement. Cliquez sur **Rembourser**. Vous pouvez également cliquer sur un paiement précis et effectuer un remboursement depuis sa page de détails. Vous pouvez aussi envoyer automatiquement des [reçus de remboursement](https://docs.stripe.com/receipts.md#refund-receipts) ou envoyer manuellement un reçu pour chaque remboursement. > #### Remboursements groupés > > Le Dashboard prend en charge le remboursement groupé de paiements complets. Sélectionnez les paiements que vous souhaitez rembourser en cochant la case à gauche de chaque paiement, même sur plusieurs pages de résultats. Ensuite, cliquez sur **Rembourser** et sélectionnez une raison. Vous pouvez uniquement effectuer des remboursements complets de cette manière ; les remboursements partiels doivent être effectués individuellement. #### API Pour rembourser un paiement à l’aide de l’API, [créez un remboursement](https://docs.stripe.com/api.md#create_refund) en fournissant l’ID du paiement ou le [PaymentIntent](https://docs.stripe.com/api/payment_intents.md). Lorsque vous utilisez un PaymentIntent pour collecter un paiement, Stripe crée un objet de [débit](https://docs.stripe.com/api/charges/object.md). Pour rembourser un paiement après la réussite du PaymentIntent, créez un remboursement à l’aide du PaymentIntent, ce qui revient à rembourser le débit sous-jacent. Si vous utilisez les API Stripe Tax pour enregistrer les ventes, vous devez [enregistrer les remboursements](https://docs.stripe.com/tax/custom.md#reversals). ```curl curl https://api.stripe.com/v1/refunds \ -u "<>:" \ -d payment_intent=pi_Aabcxyz01aDfoo ``` Vous pouvez également rembourser uniquement une partie d’un PaymentIntent en précisant un montant. Pour ce faire, indiquez un paramètre `amount` sous forme d’entier en centimes (ou dans la plus petite unité monétaire de la devise du débit). ```curl curl https://api.stripe.com/v1/refunds \ -u "<>:" \ -d payment_intent=pi_Aabcxyz01aDfoo \ -d amount=1000 ``` Si vous souhaitez séparer [l’autorisation et la capture](https://docs.stripe.com/payments/place-a-hold-on-a-payment-method.md) d’un débit, et rembourser une intention de paiement dont le statut est `requires_capture`, la procédure de remboursement est différent. Dans ce cas, le débité associé à l’intention de paiement reste non capturé et ne peut pas être remboursé directement. Vous devez [annuler le PaymentIntent](https://docs.stripe.com/api/payment_intents/cancel.md). ### Remboursements par le biais d’une plateforme Connect Le comportement de remboursement dépend du [type de paiement Connect](https://docs.stripe.com/connect/charges.md#refund-creation) utilisé dans votre intégration. - Stripe débite directement le compte connecté pour les remboursements sur des [paiements directs](https://docs.stripe.com/connect/direct-charges.md#issue-refunds). - Stripe débite votre plateforme pour les remboursements versés aux [paiements indirects](https://docs.stripe.com/connect/destination-charges.md#issue-refunds) ou [versés séparément, ainsi que pour les paiements transférés](https://docs.stripe.com/connect/separate-charges-and-transfers.md#issue-refunds) (avec ou sans `on_behalf_of`). Annulez les transferts associés à ces types de facturation afin de récupérer le montant du remboursement sur vos comptes connectés. Les plateformes Connect peuvent permettre à leurs comptes connectés d’offrir des remboursements aux clients à partir de leur site en utilisant des composants intégrés Connect tels que le composant [payments](https://docs.stripe.com/connect/supported-embedded-components/payments.md) ou le composant [payment details](https://docs.stripe.com/connect/supported-embedded-components/payment-details.md). ## Destinations des remboursements Les remboursements ne peuvent être émis que sur le moyen de paiement d’origine. Vous ne pouvez pas émettre un remboursement vers une autre destination, comme une autre carte ou un autre compte bancaire. Les remboursements effectués vers des cartes expirées ou annulées sont gérés par l’émetteur de la carte du client. Dans la plupart des cas, ils sont crédités sur la nouvelle carte du client. Si aucune nouvelle carte n’existe, l’émetteur de la carte effectue généralement le remboursement au moyen d’une autre méthode (chèque ou virement bancaire). Dans de rares cas, un remboursement sur une carte peut [échouer](https://docs.stripe.com/refunds.md#failed-refunds). Pour les autres moyens de paiement, comme ([ACH](https://docs.stripe.com/payments/ach-direct-debit.md) et [iDEAL](https://docs.stripe.com/payments/ideal.md), la gestion des remboursements varie d’une institution financière à l’autre. Si le client a résilié son moyen de paiement, l’institution financière peut nous renvoyer le remboursement, qui est alors marqué comme ayant [échoué](https://docs.stripe.com/refunds.md#failed-refunds). ## Traiter les échecs de remboursement Un remboursement peut échouer si l’institution bancaire ou l’émetteur de la carte du client ne peut le traiter. Par exemple, un compte bancaire fermé ou un problème lié à la carte peut entraîner l’échec d’un remboursement. Lorsque cela se produit, l’institution bancaire nous renvoie le montant remboursé et nous l’ajoutons à votre solde de compte Stripe. Ce processus peut prendre jusqu’à 30 jours à compter de l’émission du remboursement. Lorsque vous utilisez l’API, l’état d’un objet [Remboursement](https://docs.stripe.com/api.md#refund_object) passe à `failed` et inclut les attributs suivants : - `failure_balance_transaction` : l’ID de l’[opération sur solde](https://docs.stripe.com/api.md#balance_transaction_object) qui représente le montant recrédité sur votre solde Stripe. - `failure_reason` : La raison pour laquelle le remboursement a échoué. Ces raisons comprennent : | Motif d’échec | Description | | ------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `charge_for_pending_refund_disputed` | Un client a contesté le paiement alors que le remboursement était en attente. Dans ce cas, nous vous recommandons d’[accepter ou de contester le litige](https://docs.stripe.com/disputes/responding.md#decide) au lieu d’effectuer un remboursement afin d’éviter de rembourser deux fois la somme au client. | | `declined` | Remboursement refusé par nos partenaires financiers. | | `expired_or_canceled_card` | Le moyen de paiement est annulé par un client ou a expiré par le partenaire. | | `insufficient_funds` | Le remboursement est en attente en raison de fonds insuffisants et a dépassé la période d’expiration du remboursement en attente. | | `lost_or_stolen_card` | Le remboursement a échoué en raison de la perte ou du vol de la carte d’origine. | | `merchant_request` | Le remboursement a échoué à la demande de l’entreprise. | | `unknown` | Le remboursement a échoué pour une raison inconnue. | Pour certains moyens de paiement, le code de refus de paiement fourni par nos partenaires financiers, qui indique le motif d’échec du remboursement, est disponible dans le champ `network_decline_code` du hachage `destination_details` : ``` { id: "pyr_1234", destination_details: { blik: { network_decline_code: "decline_code" }, type: 'blik', } } ``` Dans les rares cas où un remboursement échoue, nous vous en informons en utilisant l’*événement* (A tool to send events to your application via webhook or directly to your cloud infrastructure) `refund.failed` (voir [tous les événements liés au remboursement](https://docs.stripe.com/refunds.md#refund-events)). Si cela se produit, vous devez trouver un autre moyen de rembourser votre client. Si votre plateforme utilise [Connect avec les paiements indirects](https://docs.stripe.com/connect/destination-charges.md#issue-refunds), les fonds provenant d’un remboursement ayant échoué sont déposés sur le solde Stripe de votre compte de plateforme. ## Annuler un remboursement Selon le type de remboursement, vous pourriez être en mesure d’annuler un remboursement avant qu’il ne parvienne au client. Certains remboursements par carte peuvent être annulés pendant une courte période. Le remboursement ne doit pas avoir été traité comme une annulation de paiement. Seules les annulations du Dashboard sont actuellement prises en charge pour les remboursements par carte. Pour certains [moyens de paiement](https://docs.stripe.com/payments/bank-transfers.md#refunds), Stripe contacte le client pour collecter ses coordonnées bancaires avant de traiter le remboursement. Vous pouvez annuler ces remboursements tant que les coordonnées bancaires n’ont pas été collectées. Pour ce type de remboursements, les annulations depuis l’API et le Dashboard sont prises en charge. Les remboursements annulés passent à l’état `canceled`. Les annulations étant un type d’échec de remboursement, les attributs `failure_reason` et `failure_balance_transaction` sont inclus dans le [remboursement](https://docs.stripe.com/api.md#refund_object). Si votre plateforme utilise [Connect avec les paiements indirects](https://docs.stripe.com/connect/destination-charges.md#issue-refunds), les fonds provenant d’un dépôt de remboursement annulé sont versés au solde Stripe du compte de votre plateforme. To cancel a refund using the Dashboard: 1. Find the payment associated with the refund in the [Payments](https://dashboard.stripe.com/payments) page. 1. Click the overflow menu (⋯) to the right of the payment, then select **Cancel refund**. 1. If there are multiple partial refunds, select the correct refund in the dropdown. 1. Confirm the refund cancellation by selecting **Yes, cancel refund**. Alternatively, you can click a specific payment and cancel the refund from its details page. ## Remboursement et annulation Certains remboursements, c’est-à-dire ceux émis peu après le paiement d’origine, se présentent sous la forme d’une *reversal* (A reversal is the cancellation of a transaction. Stripe doesn't withhold any fees for payment reversals)annulation. Dans le cas d’une annulation, le paiement d’origine disparaît du relevé du client et il n’y a pas de crédit. *Les utilisateurs d’IC+* (A pricing plan where businesses pay the variable network cost for each transaction plus the Stripe fee rather than a flat rate for all transactions. This pricing model provides more visibility into payments costs) peuvent constater une différence de coût entre les annulations et les remboursements, car les annulations génèrent généralement des frais de réseau moins élevés. #### Dashboard Pour vérifier si un remboursement est effectué sous la forme d’une annulation sur le Dashboard : 1. Ouvrez la page des détails de paiement du paiement associé au remboursement. 1. Dans l’historique, cliquez sur **Afficher les détails** dans l’entrée du remboursement. 1. S’il s’agit d’une annulation, un message correspondant s’affiche. #### API Pour vérifier si un remboursement est effectué sous la forme d’une annulation à l’aide de l’API : 1. Utilisez l’[événement](https://docs.stripe.com/refunds.md#refund-events) `refund.updated` ou [récupérez le remboursement](https://docs.stripe.com/api/refunds/retrieve.md) avec l’API. 1. S’il s’agit d’une contre-passation, elle renvoie `destination_details[card][type] = 'reversal'`. ## Suivre la trace d’un remboursement Après l’émission d’un remboursement, Stripe transmet la demande de remboursement à l’institution financière ou à l’émetteur de la carte de votre client. Votre client voit le remboursement sous forme de crédit de 5 à 10 jours ouvrables plus tard, en fonction de l’institution financière. Un client peut vous contacter s’il ne voit pas le remboursement. Un remboursement peut ne pas être visible par le client pour plusieurs raisons : - Les remboursements émis peu après le paiement d’origine se présentent sous la forme d’une annulation plutôt que d’un remboursement. Dans le cas d’une annulation, le paiement d’origine est supprimé du relevé du client, et aucun crédit n’est émis. - Un remboursement peut échouer si la banque ou l’émetteur de la carte du client n’a pas pu le traiter correctement, par exemple si le compte bancaire a été fermé ou que la carte présente un problème. La banque nous renvoie alors les fonds, que nous recréditons sur le solde de votre compte Stripe. Ce processus peut prendre jusqu’à 30 jours à compter de l’émission du remboursement. Si un client vous interroge au sujet d’un remboursement, vous pouvez lui communiquer le numéro de référence principal correspondant au remboursement. Pour les remboursements par carte, il peut s’agir d’un **numéro de référence de l’acquéreur (ARN)**, d’un **numéro permettant de retracer l’historique d’un système (STAN)** ou d’un **numéro de référence de recouvrement (RRN)**. Le numéro ARN, STAN ou RRN est un numéro de référence attribué à une transaction par carte dans le flux de paiement. Pour les remboursements par mode de paiement local, il peut s’agir d’un numéro de référence généré par Stripe ou nos partenaires financiers qui est propagé aux banques ou institutions bénéficiaires. Le client peut transmettre à son institution financière ce numéro de référence pour obtenir plus d’informations sur la date de la disponibilité du remboursement. Ce numéro de référence permet également de rassurer le client en lui montrant que le remboursement a bien été émis. Les références de remboursement présentent les spécificités suivantes : - Ils sont pris en charge pour certains partenaires financiers et marqués comme indisponibles dans le cas contraire. - Jusqu’à 7 jours ouvrables sont nécessaires pour recevoir le numéro ARN des partenaires bancaires en aval une fois le remboursement émis. - Aucun numéro ARN n’est disponible dans le cas d’une annulation, car le paiement d’origine n’est pas traité. Pour les réseaux de cartes qui ne prennent pas en charge les ARN, nous essayons de fournir d’autres références telles qu’un numéro permettant de retracer l’historique d’un système (STAN) ou un numéro de référence de recouvrement (RRN). #### Dashboard Pour trouver la référence d’un remboursement à l’aide du Dashboard : 1. Ouvrez la page des détails de paiement du paiement associé au remboursement. 1. Dans l’historique, cliquez sur **Afficher les détails** dans l’entrée du remboursement. 1. Le cas échéant, Stripe affiche le numéro ARN ou STAN sur le presse-papiers. #### API Pour trouver la référence d’un remboursement à l’aide de l’API : 1. Utilisez l’[événement](https://docs.stripe.com/refunds.md#refund-events) `refund.updated` ou [récupérez le remboursement](https://docs.stripe.com/api/refunds/retrieve.md) avec l’API. 1. Le cas échéant, Stripe affiche la référence de remboursement de la carte dans le format de réponse API suivant : ``` { id: "re_1234", destination_details: { card: { reference: "123456", reference_status: "available", reference_type: "acquirer_reference_number", type: "refund" }, type: "card", } } ``` Ou la référence pour les modes de paiement locaux sélectionnés dans le format de réponse API suivant : ``` { id: "pyr_1234", destination_details: { eu_bank_transfer: { reference: "123456", reference_status: "available" }, type: "eu_bank_transfer", } } ``` ## Annuler un paiement Vous pouvez annuler un paiement à l’aide du Dashboard uniquement lorsque son état est `uncaptured`. Pour annuler un paiement avec d’autres états, vous devez utiliser l’API. #### Dashboard Pour annuler les paiements non capturés à l’aide du Dashboard, procédez comme suit : 1. Trouvez le paiement que vous souhaitez annuler sur la page [Paiements](https://dashboard.stripe.com/payments). 1. Cliquez sur le paiement, puis sélectionnez **Annuler**. 1. Sélectionnez le motif de l’annulation, puis cliquez sur **Oui**. Si vous sélectionnez **Autre**, vous devez ajouter une note expliquant le motif de l’annulation du paiement. #### API Si vous ne comptez plus encaisser un paiement, vous pouvez [annuler un PaymentIntent](https://docs.stripe.com/api/payment_intents/cancel.md). Vous pouvez très bien laisser un PaymentIntent à l’état incomplet, par exemple `requires_confirmation` ou `requires_payment_method`. En effet, les PaymentIntents incomplets sont utiles pour comprendre le taux de conversion au moment du paiement. L’exemple de code suivant illustre une demande d’annulation de PaymentIntent : ```curl curl -X POST https://api.stripe.com/v1/payment_intents/pi_32AkjQ5H4Bas2eAolX13/cancel \ -u "<>:" ``` Vous ne pouvez annuler un PaymentIntent que lorsqu’il est dans l’un des états suivants : - `requires_payment_method` - `requires_capture` - `requires_confirmation` - `requires_action` - `processing` (uniquement lorsque le moyen de paiement associé est un compte bancaire États-Unis) Un PaymentIntent ne peut pas être annulé une fois qu’il a réussi. Lorsqu’un PaymentIntent est annulé, vous ne pouvez plus l’utiliser pour traiter d’autres paiements. Toute opération tentée par votre application sur la base d’un PaymentIntent annulé génère une erreur. ## Événements de remboursement Stripe déclenche des [événements](https://docs.stripe.com/api/events.md#events) à chaque création ou modification d’un remboursement. D’autres actions, comme les clôtures de vérifications, déclenchent également des événements relatifs aux remboursements. Assurez-vous que votre intégration est configurée pour [gérer les événements](https://docs.stripe.com/webhooks/handling-payment-events.md) et que vous [vérifiez les signatures de point d’ancrage Web ](https://docs.stripe.com/webhooks.md#verify-events) afin de confirmer que les événements entrants proviennent bien de Stripe. Vous devez également mettre en place une logique interne pour informer les clients ou votre équipe de l’état d’avancement du processus de remboursement. Stripe recommande au minimum de surveiller l’événement `refund.created`. Le tableau suivant décrit les événements les plus courants liés aux remboursements. | Événement | Description | | ------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `refund.created` | Envoyé à la création d’un remboursement. | | `refund.updated` | Envoyé lorsque le remboursement est mis à jour. Les mises à jour comprennent l’ajout de métadonnées et l’inclusion de détails comme l’[ARN en tant que numéro de référence pour retracer les remboursements](https://docs.stripe.com/refunds.md#tracing-refunds). | | `refund.failed` | Envoyé lorsqu’un [remboursement a échoué](https://docs.stripe.com/refunds.md#failed-refunds). | | `charge.dispute.funds_reinstated` | Envoyé à la restitution, [même partielle](https://docs.stripe.com/disputes/best-practices.md#partial-refund-bp), de fonds sur votre compte après clôture d’un litige. | | `charge.refunded` | Envoyé en cas de remboursement d’un paiement, même partiel. Écoutez `refund.created` pour en savoir plus sur le remboursement. | | `review.closed` | Envoyé lorsqu’une [review](https://docs.stripe.com/api/events/types.md#review_object) est clôturée. Consultez le champ `reason` pour comprendre la raison de la clôture, parmi les suivantes : `approved`, `disputed`, `canceled`, `refunded`, ou `refunded_as_fraud`. | | `source.refund_attributes_required` (Deprecated) | Envoyé lorsque la source du destinataire a besoin d’attributs de remboursement pour traiter un remboursement ou un paiement erroné. | | `charge.refund.updated` (Deprecated) | Envoyé lorsque le remboursement est mis à jour, uniquement pour les remboursements avec un paiement correspondant. Écoutez plutôt `refund.updated` pour obtenir des mises à jour sur tous les remboursements. | ## Optimisation des coûts Si votre entreprise traite un volume important de remboursements peu de temps avant la transaction, nous vous recommandons d’utiliser [l’autorisation et la capture manuelles](https://docs.stripe.com/payments/place-a-hold-on-a-payment-method.md) pour réduire vos frais de remboursement. L’autorisation et la capture manuelles vous permettent de mieux contrôler les coûts en annulant les paiements avant qu’ils ne soient capturés, ou en réduisant le montant capturé plutôt que de traiter un remboursement. ## See also - [Ajouter des fonds à votre solde Stripe](https://docs.stripe.com/get-started/account/add-funds.md) - [Ajouter des fonds au solde de votre plateforme](https://docs.stripe.com/connect/top-ups.md) - [Localiser les tarifs](https://docs.stripe.com/payments/currencies/localize-prices.md)