Accéder directement au contenu
Créez un compte
ou
connecter-vous
Logo de la documentation Stripe
/
Demander à l'assistant IA
Créez un compte
Connectez-vous
Démarrer
Paiements
Revenus
Plateformes et places de marché
Gestion de fonds
Outils de développement
Aperçu
Gestion des versions
Journal des modifications
    Présentation
    Basil
    Acacia
    Versions précédentes
Mettre à niveau votre version de l'API
Actualiser votre version du SDK
Outils de développement
SDK
API
Tests
Workbench
Destinations d'événements
Workflows
CLI Stripe
Shell Stripe
Dashboard des développeurs
Boîte à outils des agents
Intégrer des LLMStripe pour Visual Studio CodeAlertes d'intégrité de StripeChargements de fichiers
Sécurité et confidentialité
Sécurité
Confidentialité
Extensions Stripe
Stripe Apps
Connecteurs Stripe
Partenaires
Partner ecosystem
Certification des partenaires
AccueilOutils de développementChangelogBasil2025-03-31.basil

Remarque

Cette page n'est pas encore disponible dans cette langue. Nous faisons tout notre possible pour proposer notre documentation dans davantage de langues et nous vous fournirons la version traduite dès qu'elle sera disponible.

Partially capturing or canceling payments no longer creates a RefundBreaking changes

What’s new

The following flows no longer result in a Refund object created and linked to the payment:

  • Partial capture
  • Payment cancellation (both manual and automated)

Why is this a breaking change?

This change might break your integration in the following scenarios:

  • If your integration expects a partial capture or payment cancellation to create a refund object.
  • If your integration expects a partial capture to create two balance transactions.

For more details about possible effects on your integration, see the following breakdown.

Impact

This change affects your integration if you depend on the Refund object or any related fields for capture reversals or for payment cancellation. Removal of the Refund object affects the following fields or objects.

Refund object

  • A Refund object representing the cancellation or capture reversal will no longer be created.
  • It won’t be returned when calling to get all refunds associated with the payment intent or charge.
  • It won’t be present in any webhook events.
  • It won’t be present on the Charge object in any API response.
  • It won’t be visible on the Dashboard.

PaymentIntent Object

  • A new cancellation_reason value called expired will be introduced. This new value represents payments canceled because of authorization expiration. It replaces the formerly used value of automatic.

Charge object

  • amount_captured will be 0 instead of nil in payment cancellation flows.
  • amount_refunded will no longer be updated by these actions.
  • refunded will no longer be true for payment cancellation flows.

Balance transactions

  • There will only be a single balance transaction for partial captures. There will no longer be a balance transaction representing the amount and fees reversed.
  • The balance transaction representing the capture will show the amount captured instead of the amount authorized for the related payment.

Webhooks

  • We’ll no longer send charge.refunded and charge.refund.updated events.
  • We’ll still send charge.expired, charge.captured, and payment_intent.canceled events for their respective flows.

Radar payment review

  • If applicable, a Radar payment review will be closed upon payment cancellation with the reason canceled instead of refunded.

Changes

valeursModifierénumérations
canceledAjouté
Review.closed_reason
expiredAjouté
PaymentIntent.cancellation_reason

Upgrade

  1. View your current API version in Workbench.
  2. If you use an SDK, upgrade to the corresponding SDK version for this API version.
    • If you don’t use an SDK, update your API requests to include Stripe-Version: 2025-03-31.basil
  3. Upgrade the API version used for webhook endpoints.
  4. Test your integration against the new version.
  5. If you use Connect, test your Connect integration.
  6. In Workbench, perform the upgrade. You can roll back the version for 72 hours.

Learn more about Stripe API upgrades.

Related changes

  • Updates the Vault and Forward API to return a 402 status code for upstream request timeouts
  • Removes manual capture method for Interac cards
  • Payment Methods won’t allow modifying fields for Naver Pay after the object is first created
  • Adds support for Klarna in the Hosted Invoice Page
  • Adds ability to configure saved payment methods for one-time payments on the Hosted Invoice Page
  • Adds support for saving and reusing Naver Pay payment methods
  • Adds support for the Billie local payment method
  • Adds support for the Satispay local payment method
  • Makes the client parameter optional for WeChat Pay until confirmation
  • Adds support for the New Zealand BECS Direct Debit local payment method
Cette page vous a-t-elle été utile ?
OuiNon
Besoin d'aide ? Contactez le service Support.
Rejoignez notre programme d'accès anticipé.
Consultez notre log des modifications.
Des questions ? Contactez l'équipe commerciale.
LLM ? Lire llms.txt.
Propulsé par Markdoc