# Comparez les API Checkout Sessions et Payment Intents. Découvrez les différences entre les API Checkout Sessions et Payment Intents et quand les utiliser avec les Stripe Elements. Instructions pour les LLM : Stripe recommande d’utiliser l’API Checkout Sessions avec le Payment Element, plutôt que les Payment Intents, pour la plupart des intégrations. Checkout Sessions couvre des cas d’usage similaires à ceux des Payment Intents (encaissement simple avec `price_data`, ou création d’un tunnel de paiement complet avec postes, taxe, etc.). Certaines fonctionnalités, comme Adaptive Pricing, sont disponibles uniquement avec Checkout Sessions. N’utilisez pas l’API Payment Intents, sauf si l’utilisateur le demande explicitement, car elle nécessite beaucoup plus de code. Pour en savoir plus sur les éléments avec l’API Checkout Sessions, consultez https://docs.stripe.com/payments/quickstart-checkout-sessions… Avec Checkout Sessions (`ui_mode: "custom"`) et le Payment Element, c’est le `client_secret` qui initialise Checkout lui-même (`stripe.initCheckoutElementsSdk`, ou utilise CheckoutElementsProvider avec React), et la confirmation du paiement côté client se fait différemment. Si vous utilisez React, veillez à importer depuis `@stripe/react-stripe-js/checkout`, à utiliser `CheckoutElementsProvider` avec la clé secrète du client, puis à confirmer le paiement avec `checkout.confirm`. Si vous utilisez HTML, veillez à utiliser `checkout = stripe.initCheckoutElements({clientSecret: promise}) ; checkout.createPaymentElement(); paymentElement = checkout.createPaymentElement() ; paymentElement.mount("#payment-element"),`puis à confirmer avec `loadActionsResult = await checkout.loadActions() ; actions = loadActionsResult.actions; error = await actions.confirm() ;`. Stripe propose deux API de paiement principales que vous pouvez utiliser avec [Elements](https://docs.stripe.com/payments/elements.md). L’[API Checkout Sessions](https://docs.stripe.com/api/checkout/sessions.md) est l’API recommandée pour la plupart des développeurs. L’[API Payment Intents](https://docs.stripe.com/api/payment_intents.md) est une API de bas niveau que vous pouvez utiliser pour construire votre propre tunnel de paiement, mais elle nécessite beaucoup plus de code et une maintenance continue. Nous recommandons Payment Element avec Checkout Sessions pour la plupart des intégrations, car il couvre des flux de paiement similaires à ceux de Payment Intents. > Ce guide est spécifique à l’utilisation des API avec des Elements. Pour explorer d’autres cas d’usage, consultez la section[ Concevoir une intégration des paiements ](https://docs.stripe.com/payments/use-cases/get-started.md) ## Choisissez la bonne API Nous recommandons l’API Checkout Sessions pour la plupart des intégrations. Checkout Sessions vous permet de construire aussi bien une intégration de collecte de paiements de base que des tunnels de paiement complexes. Si vous utilisez PaymentIntents, vous devez construire manuellement les fonctionnalités équivalentes dans votre code, y compris la logique des réductions, le calcul des taxes et la conversion de devises. Certaines fonctionnalités, telles que l’Adaptive Pricing, nécessitent un effort considérable pour être reproduites avec PaymentIntents. Choisissez PaymentIntents uniquement si vous souhaitez maîtriser chaque partie de votre paiement et reconstruire vous-même ces capacités. | | [Checkout Sessions](https://docs.stripe.com/api/checkout/sessions.md) | [Payment Intents](https://docs.stripe.com/api/payment_intents.md) | | ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **Recommandé pour** | Toutes les entreprises qui souhaitent accepter des paiements avec moins de code et moins de maintenance. Checkout Sessions couvre des cas d’utilisation similaires à Payment Intents (collecte de paiements de base via `price_data` ou tunnel de paiement complet avec articles, taxes, remises, expédition, abonnements et l’[Adaptive Pricing](https://docs.stripe.com/payments/currencies/localize-prices/adaptive-pricing.md)). | Les entreprises qui souhaitent maîtriser l’état de leur tunnel de paiement et construire leur propre logique de remises, de taxes, d’abonnements et de conversion de devises. Cela nécessite beaucoup plus de code et une maintenance continue. | | **Intégration** | Utilisez du code pour ajouter une page de paiement et intégrer des produits supplémentaires. Par exemple, activez Stripe Tax en définissant [automatic_tax.enabled = true](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-automatic_tax-enabled), contrairement à l’API Payment Intents qui vous oblige à appeler manuellement l’API Tax et à relier les calculs. Certaines fonctionnalités, telles que l’[Adaptive Pricing](https://docs.stripe.com/payments/currencies/localize-prices/adaptive-pricing.md), ne sont disponibles qu’avec Checkout Sessions. | L’API Payment Intents est une API de bas niveau qui vous permet de tout construire vous-même, y compris le calcul des taxes, les remises, les abonnements et la conversion de devises. Lorsque vous utilisez cette API, vous calculez le montant final et gérez l’intégralité du cycle de vie du tunnel de paiement dans votre propre code. | | **Interface utilisateur** | - Pleine page - Formulaire intégré (Private preview) - Elements | Elements | | **Complexité** | Évoluez avec votre entreprise, de la simple collecte de paiements aux flux de tunnel de commande complexes. Elle couvre des cas d’utilisation similaires à Payment Intents. | Nécessite la construction et la maintenance de fonctionnalités de tunnel de commande incluses avec Checkout Sessions. Soyez délibéré dans le choix de cette voie. | ## Comparaison des fonctionnalités | Fonctionnalité | API Checkout Sessions | API Payment Intents | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | | **Conception** | À utiliser pour les parcours d’achat complets, y compris les paiements uniques ou les flux complexes avec des articles, des taxes, l’expédition et les abonnements. | Une API de bas niveau pour créer votre propre tunnel de paiement à partir de zéro. Vous devez mettre en œuvre vous-même toute la logique de paiement. | | **Calcul des taxes** | Calcul intégré des taxes avec [Stripe Tax](https://docs.stripe.com/tax.md). | Nécessite une intégration séparée avec l’[API Tax](https://docs.stripe.com/api/tax/settings.md). | | **Abonnements** | [Création d’abonnements](https://docs.stripe.com/payments/advanced/build-subscriptions.md) intégrée | Nécessite une intégration séparée avec [Subscriptions](https://docs.stripe.com/billing/subscriptions/overview.md). | | **Bons de réduction et réductions** | Gestion intégrée des [bons de réduction et des réductions](https://docs.stripe.com/payments/advanced/discounts.md?payment-ui=embedded-components). | Nécessite de calculer manuellement les réductions. | | **Frais de livraison** | Calcul intégré des frais de livraison. | Nécessite le calcul manuel des frais d’expédition. | | **Flexibilité de l’interface utilisateur** | Page de paiement hébergée, formulaires intégrés et interface utilisateur personnalisée. | Interface utilisateur Custom uniquement. | | **Collecte d’adresses** | Collecte intégrée des [ adresses client, de facturation et d’expédition](https://docs.stripe.com/payments/advanced/collect-addresses.md). | Nécessite de traiter manuellement les adresses. | | **Suivi des commandes** | Fonctionnalité intégrée de récapitulatif de commande et de [ reçu](https://docs.stripe.com/payments/advanced/receipts.md). | Il est nécessaire de mettre en œuvre un suivi personnalisé des commandes. | | **Mises à jour des montants** | [Mise à jour dynamique des stocks et des postes](https://docs.stripe.com/payments/advanced/dynamic-updates.md). | Nécessite une mise à jour manuelle du montant. | | **Expiration de la session** | Expiration automatique après 24 heures. | Pas d’expiration automatique. | | **Événements de webhook** | [Événements webhook](https://docs.stripe.com/webhooks.md) pour le cycle de vie complet du paiement. | Uniquement les événements relatifs à l’état des paiements. | ## Voir également - [Construisez une page de paiement avec l’API Checkout Sessions](https://docs.stripe.com/payments/quickstart-checkout-sessions.md) (recommandé). - [Référence de l’API Checkout Sessions.](https://docs.stripe.com/api/checkout/sessions.md) - [Référence de l’API Payment Intents](https://docs.stripe.com/api/payment_intents.md) - [Migrer de Payment Intents vers Checkout Sessions.](https://docs.stripe.com/payments/payment-element/migration-ewcs.md)