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
Ressources pour les développeurs
Aperçu
Gestion des versions
Journal des modifications
Mettre à niveau votre version de l'API
Actualiser votre version du SDK
Essentials
SDK
API
Tests
CLI Stripe
Exemples de projets
Outils
Workbench
Dashboard des développeurs
Shell Stripe
Stripe pour Visual Studio Code
Fonctionnalités
Workflows
Destinations d'événements
Alertes d'intégrité de StripeChargements de fichiers
Solutions d'IA
Boîte à outils des agents
Modèle de protocole contextuel
Sécurité et confidentialité
Sécurité
Robot d'exploration Web Stripebot
Confidentialité
Extensions Stripe
Créer des applications Stripe
Utiliser les applications de Stripe
    Présentation
    Applications créées par Stripe
    Adobe Commerce
    Cegid
    Commercetools
      Installer une application de paiement préconfigurée
      Installer une application de paiement personnalisée
        Utiliser des abonnements
    Mirakl
    NetSuite
    Oracle Opera
    Oracle Simphony
    Oracle Xstore
    PrestaShop
    Salesforce
    SAP
    Shopware 6
    Stripe Tax pour BigCommerce
    Stripe Tax for WooCommerce
    Applications partenaires
    Créer votre propre application
Partenaires
Partner ecosystem
Certification des partenaires
AccueilRessources pour les développeursUse apps from StripeCommercetoolsInstall custom checkout app

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.

Use Stripe Billing to enable subscriptions for Commercetools

Configure the Stripe app for Composable Commerce to enable subscriptions for any Commercetools product.

Avertissement

This guide only applies to the Stripe app for Composable commerce and does not cover the Checkout App integration.

You can enable Subscriptions for any Commercetools product by defining the required attributes and variants in the product catalog section of the Commercetools merchant center. When a customer buys a subscription product, the integration uses Stripe Billing to register a recurring payment against that order. Stripe manages this subscription, attempting payment collection on a recurring basis based on the subscription settings in Commercetools. If a payment fails, Stripe can notify the customer and ask them to update their billing details. You can configure this in your Subscriptions and emails settings. If a payment succeeds, your website receives a webhook notification from Stripe. The module automatically creates a new order within Commercetools for each renewal increment. The app recalculates the shipping and tax amounts for each individual recurring subscription product before each iteration.

Avant de commencer

  • You have installed the Stripe Payment app for Composable Commerce.
  • Stripe Billing is enabled in your Stripe account.
  • You have created relevant products and their variants using the product type generated by the app called payment-app-subscription-information.
  • Your webhook endpoint handles the following events:
    • invoice.paid
    • invoice.payment_failed

Product variant configuration

How to enable and configure Subscriptions

Subscriptions are enabled automatically when the recurring products are published on Commercetools storefront. The products are configured as one-time and recurring in Commercetools merchant center. To mark a product variant as a subscription, apply the payment-app-subscription-information custom type and define the following fields:

FieldDescription
descriptionA description for the subscription
recurring_intervalDefines the billing frequency (day, week, month, year)
recurring_interval_countSpecifies the number of intervals between billings
off_sessionWhether the subscription can be used off-session
collection_methodPayment collection method (charge_automatically or send_invoice)
days_until_dueOptional number of days before the invoice is due (only applies when collection method is send_invoice)
cancel_at_period_endOptional flag to cancel at the end of the current period
cancel_atOptional specific date and time to cancel the subscription
billing_cycle_anchor_dayOptional day of the month for billing
billing_cycle_anchor_timeOptional time of day for billing
billing_cycle_anchor_dateOptional specific date and time for billing anchor
trial_period_daysOptional trial period length in days
trial_end_dateOptional specific date and time for trial end
missing_payment_method_at_trial_endOptional behavior when payment method is missing at trial end (cancel, create_invoice, or pause)
proration_behaviorOptional behavior for proration when making changes (none, create_prorations, or always_invoice)

Core Components Overview

The Stripe subscription management is primarily managed by the following key services:

  • StripeSubscriptionService: Main orchestrator for subscription operations
  • CtPaymentCreationService: Handles CommerceTools payment creation
  • StripePaymentService: Manages payment processing and order creation
  • SubscriptionEventConverter: Converts Stripe events to CT transactions

Handling Prorations

Handling Prorations

This app supports prorations automatically based on the product variant configuration in the Commercetools product catalog section. When enabled:

  • For downgrades, a refund is automatically created and recorded as part of original order.
  • For upgrades that require an extra payment, a new order creation is triggered with the prorated amount for the remainder of the billing period.

Available services

This composable commerce app provides the core logic for subscription management, including support for mixed carts and order creation. The app exposes the essential API endpoints required to extend your subscription commerce use cases: creating and managing subscriptions, retrieving a customer’s subscription list, updating subscriptions with other commercetools products, and canceling subscriptions. You can extend the app by using packaged, prebuilt services:

Endpoint serviceMethodDescription
/setupIntentPOSTCan be used in trial mode, where a payment method can be captured for future payment recovery
/subscription/withSetupIntentPOSTCreate a subscription with trial setup on a commercetools product
/subscriptionPOSTCreate a subscription (without trial)
/subscription/confirmPOSTConfirm and finalize the subscription payment
/subscription-api/:customerIdGETRetrieve all subscriptions for a specific customer
/subscription-api/:customerIdPOSTUpdate a customer’s subscription by upgrading or downgrading with a new commercetools product
/subscription-api/:customerId/:subscriptionIdDELETECancel a specific subscription for a customer
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