Weiter zum Inhalt
Konto erstellen
oder
anmelden
Das Logo der Stripe-Dokumentation
/
KI fragen
Konto erstellen
Anmelden
Jetzt starten
Zahlungen
Umsatz
Plattformen und Marktplätze
Geldmanagement
Entwicklerressourcen
Übersicht
Billing
ÜbersichtÜber die Billing APIs
Abonnements
    Übersicht
    So funktionieren Abonnements
    Jetzt starten
    Quickstart
    Planen Sie eine Integration
    Erstellen Sie eine Integration
    Use Cases
    Weitere Informationen über Abonnements
    Schalten Sie den Abrechnungsmodus ein
    Abonnement-Ereignis – Definitionen
    Berechtigungen
    Rechnungen für Abonnements
    Abonnementpläne
    Wiederkehrende Preismodelle
    Starke Kundenauthentifizierung (SCA)
    Abonnements einrichten
    Konfigurieren Sie die Einzugsmethoden
    Preistabelle einbetten
    Mengen festlegen
    Abrechnungszyklen einrichten
    Abonnements verwalten
    Abonnements zu Stripe migrieren
    Mehrere Artikel abonnieren
    Abonnements zurückdatieren
    Testzeiträume einrichten
    Verwaltung von Abonnements mit aufgeschobener Zahlung
    Gutscheine anwenden
    Abonnements bearbeiten
      Preise ändern
      Abonnement kündigen
      Zahlungseinzug unterbrechen
      Anteilmäßige Verrechnung verwalten
      Ausstehende Aktualisierungen verwalten
    Verwalten Sie die Zahlungsmethoden für Abonnements
    Analytik
Invoicing
Nutzungsbasierte Abrechnung
Angebote
Kundenverwaltung
Abrechnung mit anderen Produkten
Umsatzsicherung
Automatisierungen
Integration testen
Steuer
Übersicht
Stripe Tax verwenden
Compliance-Management
Berichte
Übersicht
Bericht auswählen
Berichte konfigurieren
API für Berichte
Berichte für mehrere Konten
Umsatzrealisierung
Daten
ÜbersichtSchema
Nutzerspezifische Berichte
Data Pipeline
Datenverwaltung
StartseiteUmsatzSubscriptionsModify subscriptions

Anteilmäßige Verrechnung

Verwalten Sie anteilmäßige Verrechnungen für geänderte Abonnements.

Der aufwändigste Aspekt beim Ändern bestehender Abonnements sind anteilmäßige Verrechnungen, bei denen Kundinnen/Kunden ein prozentualer Anteil der Kosten eines Abonnements berechnet wird, um die anteilmäßige Nutzung zu berücksichtigen. Auf dieser Seite wird erläutert, wie anteilmäßige Verrechnungen bei Abonnements funktionieren und wie Sie diese für Ihre Kundinnen/Kunden verwalten.

So funktionieren anteilmäßige Verrechnungen

Zum Beispiel kann das Upgrade oder Downgrade eines Abonnements zu anteilmäßig verrechneten Zahlungen führen. Wenn ein/e Kundin/Kunde von einem monatlichen Plan im Wert von 10 USD auf eine Option im Wert von 20 USD umsteigt, werden ihr/ihm anteilmäßig verrechnete Beträge für die Zeit berechnet, die sie/er mit jeder Option verbracht hat. Unter der Annahme, dass der Wechsel nach der Hälfte des Rechnungsstellungszeitraums erfolgte, werden der/dem Kundin/Kunden zusätzlich 5 USD in Rechnung gestellt: -5 USD für die ungenutzte Zeit im ursprünglichen Preis und 10 USD für die verbleibende Zeit im neuen Preis.

Die anteilmäßige Verrechnung stellt sicher, dass die Kundinnen/Kunden genaue Rechnungen erhalten. Allerdings kann die anteilmäßige Verrechnung zu unerwarteten Zahlungsbeträgen führen. Negative anteilmäßige Verrechnungen werden nicht automatisch zurückerstattet und positive anteilmäßige Verrechnungen nicht sofort in Rechnung gestellt, obwohl beides manuell möglich ist.

Sie können sich eine Vorschau der anteilmäßigen Verrechnung anzeigen lassen, um den Betrag vor dem Übernehmen der Änderungen zu sehen. Wenn Sie mehr darüber erfahren möchten, wie die anteilmäßige Verrechnung von Gutschriften funktioniert, lesen Sie unseren Leitfaden.

Anteilmäßige Verrechnungen und Rabatte

Alle Rechnungsposten bei denen es sich um anteilmäßige Verrechnungen (prorations=true) sind auf discountable=falsch gesetzt. Rabatte, die auf eine Rechnung angewendet werden, die anteilige Verrechnungen enthält, werden nur auf Rechnungsposten und Rechnungszeilenposten angewendet, die keine anteilmäßige Verrechnungen sind. Alle Rabatte, die zuvor auf das Abonnement angewendet wurden und sich auf den Betrag der anteiligen Verrechnungen auswirken, spiegeln sich im Betrag des anteiligen Rechnungspostens wider.

Nicht anteilmäßige Verrechnungen zeigen Rabattkorrekturen in discount_amounts.

Wodurch werden anteilmäßige Verrechnungen ausgelöst

Standardmäßig führen die folgenden Szenarien zu einer anteilmäßigen Verrechnung:

  • Wechsel zu einem Preis mit anderen Grundkosten
  • Wechsel zu einem Preis mit anderem Abrechnungsintervall
  • Hinzufügen eines Testzeitraums zu einem aktiven Abonnement
  • Ändern der Menge
  • Lizenzierte Abonnements, (da diese immer zu Beginn eines Abrechnungszeitraums in Rechnung gestellt werden)

Eigene anteilmäßige Verrechnungen manuell erstellen

Um Ihre eigene anteilmäßige Verrechnung außerhalb von Stripe zu berechnen und sie dem Abonnement hinzuzufügen, übergeben Sie add_invoice_items mit einem negativen unit_amount (gleich dem berechneten Anteilsbetrag) an diese Endpoints:

  • CreateSubscription
  • UpdateSubscription
  • CreateSubscriptionSchedule
  • UpdateSubscriptionSchedule

Anteilmäßige Verrechnungen werden unter folgenden Umständen angewendet

Anteilmäßige Verrechnungen gelten nur für Zahlungen, die vor dem Abrechnungszylus erfolgen. Die nutzungsbasierte Abrechnung ist nicht von der anteilmäßigen Verrechnung betroffen.

Der anteilige Betrag wird berechnet, sobald das Abonnement über die API aktualisiert wird. Anhand der Start- und Endzeiten des aktuellen Abrechnungszeitraums werden die Kosten des Abonnements vor und nach der Änderung berechnet.

Anteilmäßige Verrechnungen und unbezahlte Rechnungen

Stripe berechnet die anteiligen Verrechnungen basierend auf dem Status des Abonnements zum Zeitpunkt einer Aktualisierung und geht davon aus, dass alle früheren Rechnungen für das Abonnement irgendwann bezahlt werden. Wenn ein Kunde/eine Kundin sein/ihr Abonnement ändert und für den aktuellen Zeitraum noch eine Rechnung offen hat, erhält er möglicherweise eine Gutschrift für die nicht genutzte Zeit des höherpreisigen Tarifs, auch wenn er für diese Zeit noch nicht bezahlt hat.

Um eine Gutschrift für unbezahlte Zeit zu vermeiden, können Sie die anteilmäßige Verrechnung deaktivieren, wenn die letzte Rechnung des Abonnements nicht bezahlt ist. Legen Sie beim Aktualisieren des Abonnements proration_behavior auf none fest. Wählen Sie eines der folgenden Verfahren aus:

  1. So behalten Sie den ursprünglichen Abrechnungszyklus bei: Erstellen Sie manuell eine einmalige Rechnung für alle neuen Zahlungen.
  2. Um die Zahlung für den neuen Plan sofort abzuwickeln und den Abrechnungszyklus zurückzusetzen: Setzen Sie billing_cycle_anchor auf now. Weitere Einzelheiten finden Sie unter Zurücksetzen des Abrechnungszyklus auf den aktuellen Zeitpunkt.

Beide Vorgehensweisen können zu einer doppelten Zahlung führen, wenn die/der Kundin/Kunde vielleicht die alte Rechnung bezahlt. Um dies zu vermeiden, stornieren Sie die unbezahlte Rechnung.

Steuern und anteilmäßige Verrechnungen

Informationen darüber, wie Steuern mit anteilmäßiger Verrechnung funktionieren, finden Sie unter Steuern für wiederkehrende Zahlungen einziehen.

Anteilmäßige Verrechnung von Gutschriften

Anteilmäßige Verrechnungen werden ausgestellt, wenn Kund/innen ihre Abonnements herabstufen oder Posten vor dem Ende des Rechnungsstellungszeitraums stornieren. Stripe bietet zwei Ansätze zur Berechnung der anteilmäßigen Verrechnung, je nachdem, ob Sie den billing_mode Ihres Abonnements auf classic oder flexible setzen.

Berechnungslogik ohne anteilmäßige Verrechnungen

Im folgenden Szenario erhöhen Sie ein monatliches Abonnement von 10 USD auf 20 USD mit der Einstellung proration_behavior auf none für 10 Tage. Es gibt keine vorherige Abbuchung, auf die Sie sich stützen könnten. Später stufen Sie das Abonnement auf 10 USD pro Monat herab, wobei proration_behavior auf always_invoice eingestellt ist.

Um dieses Szenario einzurichten, erstellen Sie zunächst ein Abonnement für 10 USD pro Monat am 1. April:

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl https://api.stripe.com/v1/subscriptions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "items[0][price]"=price_10_monthly

Die Antwort enthält die Rechnung, die für dieses Abonnement erstellt wurde:

Create subscription response
{ id: "sub_123", latest_invoice: { id: "in_123", total: 10_00, currency: "usd" } }

Am 11. April stocken Sie dann das Abonnement auf 20 USD pro Monat auf, ohne anteilmäßige Verrechnungen zu erstellen:

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl https://api.stripe.com/v1/subscriptions/sub_123 \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "items[0][price]"=price_20_monthly \ -d proration_behavior=none

Die letzte Rechnung bleibt unverändert, da proration_behavior gleich none ist:

Upgrade subscription response
{ id: "sub_123", latest_invoice: { id: "in_123" } }

Am 21. April stufen Sie das Abonnement auf 10 USD pro Monat herab und verrechnen anteilmäßig:

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl https://api.stripe.com/v1/subscriptions/sub_123 \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "items[0][price]"=price_10_monthly \ -d proration_behavior=always_invoice
KlassischFlexibel
Die Berechnungslogik billing_mode=classic erstellt eine anteilmäßige Verrechnung basierend auf dem aktuellen Preis, obwohl die/der Kundin/Kunde die 20 USD Monatsrate nie bezahlt hat. Die letzte Rechnung schreibt ein Drittel des Monats für 20 USD (-6.67 USD) vor, obwohl die/der Kundin/Kunde den price_20_monthly nie bezahlt hat. Außerdem wird ein Drittel des Monats für 10 USD (3.33 USD) berechnet.Die mit billing_mode=flexible aktivierte Berechnungslogik erstellt eine anteilmäßige Verrechnung, die auf dem zuletzt für den Posten des Abonnements abgerechneten Preis basiert. In diesem Fall schreibt die letzte Rechnung ein Drittel eines Monats für den am 1. April abgerechneten monatlichen Preis von 10 USD gut (3.33 USD) und belastet ein Drittel des Monats für den Preis von 10 USD (3.33 USD). Die Gutschrift und die Belastung heben sich auf, sodass der Rechnungsbetrag 0 USD beträgt.
# billing_mode = classic { id: "sub_123", latest_invoice: { id: "in_456", total: -3_34, currency: "usd" } }
# billing_mode = flexible { id: "sub_123", latest_invoice: { id: "in_456", total: 0, currency: "usd" } }

Berechnungslogik für Gutscheine, die auf mehrere Abonnementartikel angewendet werden

Stripe gewichtet den amount_off-Gutschein bei der anteilmäßigen Verrechnung der Gutschrift, um eine überhöhte Rechnungsstellung zu vermeiden.

Im folgenden Szenario wird ein Gutschein in Höhe von 5 USD ungleichmäßig einem monatlichen Abonnement in Höhe von 25 USD für einen Artikel über 10 USD und einen Artikel über 20 USD zugewiesen.

Um dieses Szenario einzurichten, erstellen Sie ein Abonnement mit mehreren Posten und einem Gutschein für den 1. Februar:

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl https://api.stripe.com/v1/subscriptions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "items[0][price]"=price_20_monthly \ -d "discounts[0][coupon]"=five_dollars_off

Dadurch wird die folgende Antwort zurückgegeben:

Create subscription with multiple items and a coupon response
{ id: "sub_123", latest_invoice: { id: "in_123", total: 25_00, currency: "usd", lines: { data: [ { id: "ili_1", amount: 10_00, price: "price_10_monthly", discount_amounts: [{ discount: "di_a", amount: 1_66 }] }, { id: "ili_2", amount: 20_00, price: "price_20_monthly", discount_amounts: [{ discount: "di_a", amount: 3_34 }] }, ] } } }

Um den Posten 10 USD des monatlichen Abonnements mit billing_mode=classic zu stornieren:

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl https://api.stripe.com/v1/subscription_items/si_10_monthly \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d proration_behavior=create_prorations

So stornieren Sie denselben Artikel mit billing_mode=flexible:

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl https://api.stripe.com/v1/subscription_items/si_10_monthly \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d proration_behavior=create_prorations \ -d billing_mode=flexible
KlassischFlexibel
Es wird standardmäßig ein 5 USD Gutschein auf jeden Posten (2.5 USD each) angewendet, wodurch der günstigere Posten (5 USD) storniert wird und eine Rückerstattung von 2.5 USD erfolgt. Stripe berechnet den Gesamtbetrag mit der Formel -0,5 x (10 USD price - 5 USD coupon) = -2,50 USD.Diese flexible Lösung spiegelt den proportionalen Rabatt wider, der auf den stornierten Posten angewandt wird, anstatt möglicherweise den gesamten Rabattbetrag anteilmäßig zu verrechnen. Stripe berechnet den Gesamtbetrag nach der Formel -0.5 x (10 USD price - 1.66 USD discount amount) = -4.17 USD.
# billing_mode = classic { "id": "sub_123", "latest_invoice": { "id": "in_456", "total": -250, "currency": "usd" } }
# billing_mode = flexible { "id": "sub_123", "latest_invoice": { "id": "in_789", "total": -417, "currency": "usd" } }

Vorschau für eine anteilmäßige Verrechnung anzeigen

Sie können eine Rechnungsvorschau erstellen, um eine Vorschau der Änderungen an einem Abonnement anzuzeigen. Dieser API-Aufruf ändert das Abonnement nicht. Stattdessen wird die ausstehende Rechnung nur basierend auf den von Ihnen übergebenen Parametern zurückgegeben. Änderungen sowohl am price als auch an der quantity führen zu einer anteilmäßigen Verrechnung. In diesem Beispiel wird der price geändert und ein Datum für die anteilmäßige Verrechnung festgelegt.

Ruby
Python
PHP
Java
Node
Go
.NET
No results
# Set your secret key. Remember to switch to your live secret key in production. # See your keys here: https://dashboard.stripe.com/apikeys Stripe.api_key =
'sk_test_BQokikJOvBiI2HlWgH4olfQ2'
# Set proration date to this moment: proration_date = Time.now.to_i subscription = Stripe::Subscription.retrieve('sub_49ty4767H20z6a') # See what the next invoice would look like with a price switch # and proration set: items = [{ id: subscription.items.data[0].id, price: 'price_CBb6IXqvTLXp3f', # Switch to new price }] invoice = Stripe::Invoice.create_preview({ customer: 'cus_4fdAW5ftNQow1a', subscription: 'sub_49ty4767H20z6a', subscription_details: { items: items, proration_date: proration_date, } })

Sie können die Beispielantwort erweitern, um Folgendes anzuzeigen:

  • Das Guthaben für nicht genutzte Zeit zum vorherigen Preis in den Zeilen 36 bis 38.
  • Die Kosten für genutzte Zeit zum neuen Preis in den Zeilen 107 bis 109.
  • Die neue Zwischensumme und die Summe für die Rechnung in den Zeilen 276 bis 279.
{ "id": "upcoming_in_1OujwkClCIKljWvsq5v2ICAN", "account_country": "US", "account_name": "Test account", "amount_due": 3627, "amount_paid": 0, "amount_remaining": 3627, "application_fee_amount": null, "attempt_count": 0, "attempted": false,

Anhand dieser Informationen können Sie die Kundin/den Kunden über die Änderungen informieren, bevor Sie das Abonnement ändern. Da Stripe sekundengenau abrechnet, können sich anteilige Beträge zwischen der Vorschau und dem Zeitpunkt der Aktualisierung ändern. Um dies zu vermeiden, übergeben Sie ein subscription_proration_date an die Rechnung, wenn Sie eine Änderung in der Vorschau anzeigen. Wenn Sie das Abonnement aktualisieren, übergeben Sie dasselbe Datum mithilfe des Parameters proration_date für ein Abonnement, damit die anteilmäßige Verrechnung zur gleichen Zeit ermittelt wird.

Ruby
Python
PHP
Java
Node
Go
.NET
No results
# Set your secret key. Remember to switch to your live secret key in production. # See your keys here: https://dashboard.stripe.com/apikeys Stripe.api_key =
'sk_test_BQokikJOvBiI2HlWgH4olfQ2'
subscription = Stripe::Subscription.update( 'sub_49ty4767H20z6a', { items: [ { id: subscription.items.data[0].id, price: 'price_CBb6IXqvTLXp3f', }, ], proration_date: proration_date, } )

Anteilmäßige Verrechnung steuern

Die anteilmäßige Verrechnung wird durch den Parameter proration_behavior gesteuert, der über drei mögliche Parameteroptionen verfügt: create_prorations, always_invoice und none.

Standardverhalten

Der Standardparameter für proration_behavior ist create_prorations, wodurch gegebenenfalls anteilige Rechnungsposten erstellt werden. Diese anteilmäßigen Posten werden nur unter bestimmten Voraussetzungen sofort in Rechnung gestellt.

Sofortige anteilmäßige Verrechnungen erstellen

Um einem Kunden/einer Kundin eine Änderung an einem Abonnement im selben Abrechnungszyklus sofort in Rechnung zu stellen, legen Sie proration_behavior auf always_invoice fest, wenn Sie das Abonnement ändern. Dadurch wird die anteilige Verrechnung ermittelt und sofort eine Rechnung erstellt.

Anteilmäßige Verrechnung deaktivieren

Um die anteilige Verrechnung auf Anforderungsbasis zu deaktivieren, legen Sie den Parameter proration_behavior auf none fest. Es gibt keinen Parameter, der alle zukünftigen anteilmäßigen Verrechnungen für ein Abonnement deaktiviert. Um die anteilmäßige Verrechnung auf unbestimmte Zeit zu deaktivieren, legen Sie proration_behavior für jede Anfrage, die anteilmäßige Verrechnungen generiert, auf none fest:

Command Line
Curl
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl https://api.stripe.com/v1/subscriptions/sub_49ty4767H20z6a \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "items[0][id]"="si_1AkFf6LlRB0eXbMtRFjYiJ0J" \ -d "items[0][price]"="price_CBb6IXqvTLXp3f" \ -d "proration_behavior"="none"

Wenn die anteilmäßige Verrechnung deaktiviert ist, wird Kundinnen/Kunden mit der nächsten Rechnung der gesamte Betrag zum neuen Preis in Rechnung gestellt.

War diese Seite hilfreich?
JaNein
  • Benötigen Sie Hilfe? Kontaktieren Sie den Kundensupport.
  • Nehmen Sie an unserem Programm für frühzeitigen Zugriff teil.
  • Schauen Sie sich unser Änderungsprotokoll an.
  • Fragen? Sales-Team kontaktieren.
  • LLM? Lesen Sie llms.txt.
  • Unterstützt von Markdoc