# Fügt den Abrechnungsmodus hinzu, um ein verbessertes Verhalten und mehr Flexibilität für Abonnements zu ermöglichen ## Das ändert sich Wir führen einen neuen Parameter `billing_mode` ein, der ein flexibleres Abo-Verhalten ermöglicht. Sie können ihn aktivieren, indem Sie `billing_mode[type]=flexible` festlegen, wenn Sie [Abos](https://docs.stripe.com/api/subscriptions/create.md?api-version=2025-06-30.basil), [Rechnungsvorschauen](https://docs.stripe.com/api/invoices/create_preview.md?api-version=2025-06-30.basil), [Checkout-Sitzungen](https://docs.stripe.com/api/checkout/sessions/create.md?api-version=2025-06-30.basil), [Angebote](https://docs.stripe.com/api/quotes/create.md?api-version=2025-06-30.basil) oder [Abonnementpläne](https://docs.stripe.com/api/subscription_schedules/create.md?api-version=2025-06-30.basil) erstellen. Der Standardmodus, der `klassische` Modus, behält das bestehende Verhalten bei. Sie können auch bestehende Abos mit dem neuen [Abrechnungsmodus-Migrations-Endpoint](https://docs.stripe.com/api/subscriptions/migrate.md?api-version=2025-06-30.basil) migrieren. Wir bezeichnen das bisherige Abrechnungsverhalten künftig als `classic`. Eine Zusammenfassung der neuen Verhaltensweisen mit flexiblem Abrechnungsmodus finden Sie unten. Erfahren Sie mehr über die Unterschiede zwischen [dem klassischen und dem flexiblen Abrechnungsmodus](https://docs.stripe.com/billing/subscriptions/billing-mode.md). | **Wirkungsbereich** | **Neue Verhaltensweisen** | | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | **Zuteilung** | **Genaue Berechnung der anteilsmäßigen Verrechnung von Gutschriften.** Der flexible Abrechnungsmodus verwendet konsequent den ursprünglich abgebuchten Betrag und berücksichtigt historische Steuern, Rabatte und Abrechnungszyklen. **Anteilige Rabattanwendung für anteilmäßige Verrechnung.** Bei der anteilmäßigen Verrechnung wenden wir Rabatte proportional auf jeden Abonnementposten an, statt sie gleichmäßig zu verteilen. Dies führt zu mehr anteilmäßigen Verrechnungen, insbesondere bei der Rechnungsstellung pro Artikel oder bei der Stornierung von Artikeln mit ungleich verteilten Rabatten. | | **Nutzungsbasierte Preise** | **Unterdrückt Posten mit Nullbeträgen, wenn nutzungsbasierte Artikel hinzugefügt werden.** Der flexible Abrechnungsmodus erstellt keine Posten mit Nullbeträgen, wenn Sie nutzungsbasierte Posten zu einem Abonnement hinzufügen. Wenn die Rechnung dadurch leer ist, generieren wir keine. **Die gemessene Nutzung wird auf der Grundlage des Preises zum Zeitpunkt der Berichterstattung abgerechnet.** Der flexible Abrechnungsmodus stellt die Nutzung auf der Grundlage des Preises zum Zeitpunkt Ihrer Meldung in Rechnung. Wenn sich der Preis eines nutzungsbasierten Artikels während eines Zeitraums ändert, wird nur die nach der Preisänderung gemeldete Nutzung zum neuen Preis in Rechnung gestellt. **Wird nicht abgerechnete Nutzung abgerechnet, wenn nutzungsbasierte Artikel entfernt werden.** Der flexible Abrechnungsmodus generiert einen Rechnungsposten für nicht abgerechnete Nutzung, wenn Sie einen nutzungsbasierten Abonnementposten entfernen. Dies gilt für Entfernungen mit der API oder während Zeitplanphasenübergängen. **Konsolidiert Rechnungen für Phasenübergänge mit nutzungsbasierten Artikeln.** Der flexible Abrechnungsmodus generiert konsistent eine einzige Rechnung, wenn ein Abonnement abläuft, wodurch separate Rechnungen für entfernte nutzungsbasierte Artikel vermieden werden. | | **Abrechnungszyklusanker** | **Eliminiert das implizite Zurücksetzen des Abrechnungszyklusankers.** Mit dem flexiblen Abrechnungsmodus bleibt der `billing_cycle_anchor` bei Vorgängen, die zuvor zum Zurücksetzen geführt haben, unverändert, z. B. wenn ein `cancel_at`-Datum festgelegt oder zu einem Preis ungleich Null gewechselt wird. | | **Geplante Stornierung** | **Konfigurierbares anteilmäßiges Verrechnungsverhalten für `cancel_at`.** Sie können jetzt die anteilsmäßige Verrechnung für einen verkürzten ersten Abonnementzeitraum mit dem Parameter `proration_behavior` deaktivieren (wenn Sie bei der Erstellung `cancel_at` festlegen). | | **Rückdatierung** | **Teilt den rückdatierten Zeitraum in mehrere Rechnungsposten auf.** Beim flexiblen Abrechnungsmodus werden separate Rechnungsposten für jeden Abrechnungszeitraum innerhalb des rückdatierten Bereichs erstellt. Der Abrechnungszyklusanker wird automatisch auf die `backdate_start_date` ausgerichtet, wenn Sie ihn nicht explizit festlegen. | | **Testversionen** | **Aktualisiert das Startdatum für nachfolgende Testversionen.** Wenn Sie eine zweite Testversion zu einem Testabonnement hinzufügen, verwendet der flexible Abrechnungsmodus das Startdatum der letzten Testphase. **Das ursprüngliche Enddatum der Testversion wird beibehalten, wenn sich das Kündigungsdatum ändert.** Der flexible Abrechnungsmodus behält das `trial_end` bei, wenn Sie das `cancel_at`-Datum so ändern, dass es vor dem Ende des Testzeitraums liegt. **Standardisiert die Postenbeschreibung des Testzeitraums.** Mit dem flexiblen Abrechnungsmodus wird sowohl für nutzungsbasierte als auch für lizenzierte Artikel ein einheitliches Beschreibungsformat verwendet – „Kostenlose Testversion für {quantity} x {product name}“ – um eine einheitlichere Darstellung der Testinformationen zu erreichen. **Generiert Einzelposten für Änderungen, die während eines Testzeitraums vorgenommen wurden.** Im Modus mit flexibler Abrechnung werden Posten, die sich nicht geändert haben, nicht erneut in Rechnung gestellt. Dadurch wird sichergestellt, dass Kundinnen/Kunden nur für die Anpassungen in Rechnung gestellt werden, die sie während ihrer Testphase vornehmen. | | **Ausstehende Rechnungsposten** | **Berücksichtigt konsequent ausstehende Rechnungsposten.** Alle verfügbaren ausstehenden Rechnungsposten werden jetzt berücksichtigt, wenn Rechnungen für Aktualisierungen erstellt werden. Bisher hing dies vom konkreten Grund für die Rechnungsaktualisierung ab. | Der flexible Abrechnungsmodus ist nicht mit allen Funktionen von Stripe Billing kompatibel. Die folgenden Funktionen sind derzeit nicht kompatibel und geben einen `400`-Fehlercode zurück, wenn Sie ein Abonnement mit aktiviertem flexiblen Modus erstellen und aktualisieren: - Vorabrechnung (Vorschau) - [Abrechnungsschwellen](https://docs.stripe.com/billing/subscriptions/usage-based/thresholds.md) - [Veraltete nutzungsbasierte Abrechnung](https://docs.stripe.com/billing/subscriptions/usage-based-legacy.md) - Ältere 3P-Steuerintegrationen, die `pay_immediately=false` verwenden (z. B. [Avalara](https://support.stripe.com/questions/calculate-tax-with-avalara)) - Der alte `max_occurrences` Parameter - Abonnementspezifisch `retry_settings` (Vorschau) ## Ergebnis Standardmäßig hat diese Aktualisierung keine Auswirkungen auf bestehende oder neue Abonnements. Sie können sich dafür entscheiden, indem Sie `billing_mode[type]=flexible` für eine der folgenden API Methoden festlegen: - [Ein Abonnement erstellen](https://docs.stripe.com/api/subscriptions/create.md?api-version=2025-06-30.basil) - [Vorschau einer Rechnung erstellen](https://docs.stripe.com/api/invoices/create_preview.md?api-version=2025-06-30.basil) - [Erstellen einer Checkout-Sitzung](https://docs.stripe.com/api/checkout/sessions/create.md?api-version=2025-06-30.basil#create_checkout_session-subscription_data-billing_mode) - [Abonnementplan erstellen](https://docs.stripe.com/api/subscription_schedules/create.md?api-version=2025-06-30.basil) - [Angebot erstellen](https://docs.stripe.com/api/quotes/create.md?api-version=2025-06-30.basil) Sie können bestehende Abos von klassisch zu flexibel migrieren, indem Sie `billing_mode[type]=flexible` im [Endpoint für den Abrechnungsmodus](https://docs.stripe.com/api/subscriptions/migrate.md?api-version=2025-06-30.basil) übergeben. Der Wechsel in den flexiblen Abrechnungsmodus ist eine einseitige Aktualisierung: Sie können ein Abo nach der Migration nicht in den klassischen Modus zurückversetzen. ## Änderungen #### REST API #### Ruby #### Python #### PHP #### Java #### Node.js #### Go #### .NET ## Upgrade #### REST API 1. [Zeigen Sie Ihre aktuelle API-Version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench an. 1. Wenn Sie ein SDK verwenden, aktualisieren Sie auf die entsprechende SDK-Version für diese API-Version. - Wenn Sie kein SDK verwenden, aktualisieren Sie Ihre [API-Anfragen](https://docs.stripe.com/api/versioning.md) auf `Stripe-Version: 2025-06-30.basil` 1. Aktualisieren Sie die für [Webhook-Endpoints](https://docs.stripe.com/webhooks/versioning.md) verwendete API-Version. 1. [Testen Sie Ihre Integration](https://docs.stripe.com/testing.md) mit der neuen Version. 1. Wenn Sie Connect verwenden, [testen Sie Ihre Connect-Integration](https://docs.stripe.com/connect/testing.md). 1. Führen Sie das [Upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade) in Workbench durch. Sie können [die Version für 72 Stunden zurücksetzen](https://docs.stripe.com/upgrades.md#roll-back-your-api-version). Erfahren Sie mehr über [Stripe-API-Upgrades](https://docs.stripe.com/upgrades.md). #### Ruby 1. [Zeigen Sie Ihre aktuelle API-Version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench an. 1. Aktualisieren Sie Ihr Ruby SDK auf [v15.3.0](https://github.com/stripe/stripe-ruby/releases/tag/v15.3.0) 1. Aktualisieren Sie die für [Webhook-Endpoints](https://docs.stripe.com/webhooks/versioning.md) verwendete API-Version. 1. [Testen Sie Ihre Integration](https://docs.stripe.com/testing.md) mit der neuen Version. 1. Wenn Sie Connect verwenden, [testen Sie Ihre Connect-Integration](https://docs.stripe.com/connect/testing.md). 1. Führen Sie das [Upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade) in Workbench durch. Sie können [die Version für 72 Stunden zurücksetzen](https://docs.stripe.com/upgrades.md#roll-back-your-api-version). Erfahren Sie mehr über [Stripe-API-Upgrades](https://docs.stripe.com/upgrades.md). #### Python 1. [Zeigen Sie Ihre aktuelle API-Version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench an. 1. Aktualisieren Sie Ihr Python SDK auf [v12.3.0](https://github.com/stripe/stripe-python/releases/tag/v12.3.0) 1. Aktualisieren Sie die für [Webhook-Endpoints](https://docs.stripe.com/webhooks/versioning.md) verwendete API-Version. 1. [Testen Sie Ihre Integration](https://docs.stripe.com/testing.md) mit der neuen Version. 1. Wenn Sie Connect verwenden, [testen Sie Ihre Connect-Integration](https://docs.stripe.com/connect/testing.md). 1. Führen Sie das [Upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade) in Workbench durch. Sie können [die Version für 72 Stunden zurücksetzen](https://docs.stripe.com/upgrades.md#roll-back-your-api-version). Erfahren Sie mehr über [Stripe-API-Upgrades](https://docs.stripe.com/upgrades.md). #### PHP 1. [Zeigen Sie Ihre aktuelle API-Version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench an. 1. Aktualisieren Sie Ihr PHP SDK auf [v17.4.0](https://github.com/stripe/stripe-php/releases/tag/v17.4.0) 1. Aktualisieren Sie die für [Webhook-Endpoints](https://docs.stripe.com/webhooks/versioning.md) verwendete API-Version. 1. [Testen Sie Ihre Integration](https://docs.stripe.com/testing.md) mit der neuen Version. 1. Wenn Sie Connect verwenden, [testen Sie Ihre Connect-Integration](https://docs.stripe.com/connect/testing.md). 1. Führen Sie das [Upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade) in Workbench durch. Sie können [die Version für 72 Stunden zurücksetzen](https://docs.stripe.com/upgrades.md#roll-back-your-api-version). Erfahren Sie mehr über [Stripe-API-Upgrades](https://docs.stripe.com/upgrades.md). #### Java 1. [Zeigen Sie Ihre aktuelle API-Version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench an. 1. Aktualisieren Sie Ihr Java SDK auf [v29.3.0](https://github.com/stripe/stripe-java/releases/tag/v29.3.0) 1. Aktualisieren Sie die für [Webhook-Endpoints](https://docs.stripe.com/webhooks/versioning.md) verwendete API-Version. 1. [Testen Sie Ihre Integration](https://docs.stripe.com/testing.md) mit der neuen Version. 1. Wenn Sie Connect verwenden, [testen Sie Ihre Connect-Integration](https://docs.stripe.com/connect/testing.md). 1. Führen Sie das [Upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade) in Workbench durch. Sie können [die Version für 72 Stunden zurücksetzen](https://docs.stripe.com/upgrades.md#roll-back-your-api-version). Erfahren Sie mehr über [Stripe-API-Upgrades](https://docs.stripe.com/upgrades.md). #### Node.js 1. [Zeigen Sie Ihre aktuelle API-Version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench an. 1. Aktualisieren Sie Ihr Node SDK auf [v18.3.0](https://github.com/stripe/stripe-node/releases/tag/v18.3.0) 1. Aktualisieren Sie die für [Webhook-Endpoints](https://docs.stripe.com/webhooks/versioning.md) verwendete API-Version. 1. [Testen Sie Ihre Integration](https://docs.stripe.com/testing.md) mit der neuen Version. 1. Wenn Sie Connect verwenden, [testen Sie Ihre Connect-Integration](https://docs.stripe.com/connect/testing.md). 1. Führen Sie das [Upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade) in Workbench durch. Sie können [die Version für 72 Stunden zurücksetzen](https://docs.stripe.com/upgrades.md#roll-back-your-api-version). Erfahren Sie mehr über [Stripe-API-Upgrades](https://docs.stripe.com/upgrades.md). #### Go 1. [Zeigen Sie Ihre aktuelle API-Version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench an. 1. Aktualisieren Sie Ihr Go SDK auf [v82.3.0](https://github.com/stripe/stripe-go/releases/tag/v82.3.0) 1. Aktualisieren Sie die für [Webhook-Endpoints](https://docs.stripe.com/webhooks/versioning.md) verwendete API-Version. 1. [Testen Sie Ihre Integration](https://docs.stripe.com/testing.md) mit der neuen Version. 1. Wenn Sie Connect verwenden, [testen Sie Ihre Connect-Integration](https://docs.stripe.com/connect/testing.md). 1. Führen Sie das [Upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade) in Workbench durch. Sie können [die Version für 72 Stunden zurücksetzen](https://docs.stripe.com/upgrades.md#roll-back-your-api-version). Erfahren Sie mehr über [Stripe-API-Upgrades](https://docs.stripe.com/upgrades.md). #### .NET 1. [Zeigen Sie Ihre aktuelle API-Version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench an. 1. Aktualisieren Sie Ihr .NET SDK auf [v48.3.0](https://github.com/stripe/stripe-dotnet/releases/tag/v48.3.0) 1. Aktualisieren Sie die für [Webhook-Endpoints](https://docs.stripe.com/webhooks/versioning.md) verwendete API-Version. 1. [Testen Sie Ihre Integration](https://docs.stripe.com/testing.md) mit der neuen Version. 1. Wenn Sie Connect verwenden, [testen Sie Ihre Connect-Integration](https://docs.stripe.com/connect/testing.md). 1. Führen Sie das [Upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade) in Workbench durch. Sie können [die Version für 72 Stunden zurücksetzen](https://docs.stripe.com/upgrades.md#roll-back-your-api-version). Erfahren Sie mehr über [Stripe-API-Upgrades](https://docs.stripe.com/upgrades.md).