Schematex
state·OMG UML 2.5.1·software, saas, billing·complexity 3/3·since v0.3.0

SaaS subscription lifecycle

UML statechart for a subscription moving through trial, active service, payment recovery, pause, cancellation, and reactivation.

For the SaaS product engineer

Open in Playground →
state-diagram·§ UML 2.5 / Harel
↘ preview
100%
State Diagram — Subscription Lifecycle UML 2.5 / Harel statechart rendered by Schematex Subscription Lifecycle Active entry / provisionWorkspace() exit / syncEntitlements() GracePeriod Paused Trialing PastDue Incomplete Cancelled Current trial_end [payment_method_valid] / startBilling() trial_end [payment_method_missing] / requestPaymentMethod() cancel invoice_failed payment_succeeded / restoreAccess() grace_expired payment_succeeded / clearDunning() cancel_at_period_end pause [plan_allows_pause] / suspendBilling() resume / resumeBilling() cancel_now / revokeAccess() payment_method_added / retryInvoice() expires period_end reactivate [within_retention_window] / restoreSubscription() purge_after_retention
UTF-8 · LF · 34 lines · 1139 chars✓ parsed·4.1 ms·12.6 KB SVG

Scenario

Subscription logic is where simple status enums drift out of sync with billing providers. This statechart makes the product contract explicit: trial conversion, incomplete setup, dunning recovery, pause, cancellation, and reactivation are separate transitions with guards and actions.

Annotation key

State diagram syntax