- Verschickt
- 11. November 2026 um 06:09 UTC
- Autor
- Kamo
- Commit
- 185198f
Generisch für jede Organisation, die über den Geschäftsbereich Subscription verkauft: - CorePlans: Das Core-Plan-Abonnement wird deterministisch ausgewählt; eine Ein Produkt (max_seats 1, pauschaliert, nicht KOSTENLOS — z.B. Marketing-Website) wird niemals a seat: keine Sitzreihen, nicht sitzend, nicht "lizenziert" (Seat-only-Lizenz-Abfrage). - OrgBillingAgreement.market_id + OrgBillingAgreements.live: Vereinbarungen sind pro Marktpreis und Preis vom KÄUFER (POS calculatePrice liest nicht mehr den Preis des Verkäufers). - Opt-in-Grace-Zeiten (grace_mode OFF|MANUAL|AUTO DEFAULT OFF, grace_days 60, grace_until, grace_expired_at) auf account_subscriptions und commerce_subscriptions; SubscriptionLifecycleService: automatischer Start bei Fälligkeit, Ablauf stoppt Service wie ein Manuelle Pause, Zahlung hebt es auf. - POS stornieren / Laufzeitende beendet nun den Zugriff des Kunden (CANCELLED, Sitze verfallen); Immediate=true endet jetzt, immediate=false endet am Ende der bezahlten Periode. - billing.subscription.paid / ended / grace-Ereignisse, die nach dem Commit an NATS weitergeleitet werden. - ONE_TIME Add-ons Rechnung nur auf der ersten Rechnung.
