Fügt die Möglichkeit hinzu, Rabatte mit anteilmäßiger Verrechnung detailliert aufzuführen
Das ändert sich
Fügt die Möglichkeit hinzu, die anteilmäßige Verrechnung von Rabattbeträgen aufzuschlüsseln, sodass die Beträge der anteilmäßigen Verrechnung und der Rabatte konsequent ohne anteilmäßige Verrechnung angezeigt werden. Wenn diese Option aktiviert ist, zeigen die Eigenschaften des Betrags der anteilmäßigen Verrechnung die Bruttobeträge an, bevor die Rabatte angewendet werden. Die Rabattbeträge enthalten die tatsächlich angewendeten Rabattbeträge. Wenn diese Option deaktiviert ist, enthalten die Eigenschaften der anteilmäßigen Verrechnung Rabatt-IDs, doch die Rabattbeträge sind 0.
Auswirkungen
Sie können jetzt die Rabattbeträge mit anteilmäßiger Verrechnung aufschlüsseln, indem Sie den Parameter proration_discounts aufdetailliert einstellen, wenn Sie Abonnements, Abonnementpläne, Angebote, Bezahlvorgang-Sitzungen oder Vorschau-Rechnungen erstellen. Sie können diesen Parameter auch aufdetailliert für ein bestehendes Abonnement setzen, indem Sie ihn migrieren. Sie können ein Abonnement jedoch nicht vondetailliert auf enthalten migrieren.
Zusammenfassung der Änderungen
| Objekt | Eigenschaft | Inbegriffen | Detailliert (neues Verhalten) |
|---|---|---|---|
| Einzelposten mit anteilmäßiger Verrechnung | amount | Nettobetrag (nach Abzug von Rabatten) | Bruttobetrag (vor Rabatten) |
discount_ | Fehlende Rabatte auf Posten-Ebene; Rabatte auf Gruppenebene werden angezeigtamount=0 | Alle Rabatte sind mit genauen Beträgen enthalten | |
| Rechnungsposten | amount | Nettobetrag | Bruttobetrag |
net_ (neue Eigenschaft) | Nettobetrag für nicht rabattfähige Rechnungspositionen, sonst null | Nettobetrag für nicht rabattfähige Rechnungspositionen, sonst null | |
proration_ (neue Eigenschaft) | Alle Rabatte inbegriffen mit amount=0 | Alle Rabatte sind mit genauen Beträgen enthalten | |
| Rechnung | total_ | Ausgenommen ist die anteilmäßige Verrechnung von Rabatten | Beinhaltet anteilmäßige Verrechnung von Rabatten |
subtotal | Enthält Beträge zur anteilmäßigen Verrechnung (bereits angewendete Rabatte) | Enthält die anteilmäßige Verrechnung von Beträgen nach Abzug von Rabatten auf Posten-Ebene (Rabatte auf Gruppenebene werden separat angewendet) |
Beispiel: 10 EUR anteilmäßige Verrechnung mit 10 % Rabatt auf Posten-Ebene und 2 EUR Rabatt auf Gruppenebene
Inbegriffen
Das folgende Beispiel zeigt das bestehende Verhalten bei bereits angewandten Rabatten:
Antwort:
// Line Item { "proration": true, "amount": 700, // Net: 7 USD after discounts (10 USD - 1 USD item - 2 USD group) "discount_amounts": [ // Item-level discount missing entirely {"amount": 0, "discount": "di_group_2off"} // Group-level shows ID but no amount ] } // Invoice Item { "proration": true, "amount": 700 // Net amount only } // Invoice { "total_discount_amounts": [ {"amount": 0, "discount": "di_group_2off"} // Missing item-level proration discount ], "subtotal": 700 // Adds proration amount after all discounts }
Detailliert:
Anfrage:
// POST /v1/subscriptions { // ... omitting irrelevant fields ... billing_mode: { type: "flexible", flexible: { // New parameter: only available when billing mode type is flexible proration_discounts: "itemized" // Default value is "included" } } // ... omitting irrelevant fields ... }
Antwort:
// Line Item { "proration": true, "amount": 1000, // Gross: 10 USD before discounts "discount_amounts": [ {"amount": 100, "discount": "di_item_10pct"}, // Item-level discount now visible {"amount": 200, "discount": "di_group_2off"} // Group-level with actual amount ] } // Invoice Item { "proration": true, "amount": 1000, // Gross amount "net_amount": 700, // New property: net amount after both discounts "proration_details": { // New property: populated when the invoice item is a proration "discount_amounts": [ {"amount": 100, "discount": "di_item_10pct"}, {"amount": 200, "discount": "di_group_2off"} ] } } // Invoice { "total_discount_amounts": [ {"amount": 100, "discount": "di_item_10pct"}, // Now includes item-level proration discount {"amount": 200, "discount": "di_group_2off"} // Now includes group-level proration discount ], "subtotal": 9000 // Includes proration amount after item-level discounts }
Überlegungen zum Upgrade
- Geltungsbereich: Diese Funktionalität ist nur für Abonnements mit flexiblem Abrechnungsmodus verfügbar.
- Unidirektionale Migration: Nachdem Sie detaillierte Rabattbeträge für ein Abonnement aktiviert haben, können Sie nicht mehr zu „enthalten“ zurückkehren.
- Codeänderungen erforderlich: Wenn Ihre Integration die Eigenschaften des Betrags einer anteilmäßigen Verrechnung mit Erwartung der Nettowerte liest, führen Sie stattdessen eine Aktualisierung durch, um die neue net_amount-Eigenschaft zu verwenden.
- Frühere Rechnungen: Vorhandene Rechnungen spiegeln das Verhalten wider, das aktiv war, als Sie sie erstellt haben.
- Support für gemischte Rechnungen: Einzelne Rechnungen können sowohl eingeschlossene als auch aufgeschlüsselte Einzelposten der anteilmäßigen Verrechnung enthalten, wenn Sie ein Abonnement zwischen den Erstellungen von anteilmäßigen Verrechnungen migrieren.
Änderungen
Upgrade
Zugehörige Änderungen
- Entfernt Iterationsparameter für Abonnement-Zeitpläne
- Promo-Codes verweisen jetzt auf Gutscheine mit einem polymorphen Feld für Werbeaktionen
- Fügt die Eigenschaft „Discount source“ hinzu und entfernt die Eigenschaft „Discount coupon“
- Macht den flexiblen Abrechnungsmodus zum Standard für neue Abos
- Aktualisiert die Berechnung des Enddatums der Phase des Abonnementplans, um Änderungen an den Ankern des Abrechnungszeitraums zu berücksichtigen
- Fügt die Konfiguration des Testzeitraums im Kundenportal hinzu