Every subscription goes through a series of states from creation to cancellation. Understanding this lifecycle helps you manage customer relationships effectively and ensure proper billing at each stage.
Why Lifecycle Matters
The subscription lifecycle determines:
When customers are billed - Invoices generate based on lifecycle events
What access customers have - Features unlock/lock based on status
How changes are applied - Upgrades, downgrades, and cancellations follow specific rules
What your revenue looks like - MRR, churn, and expansion metrics depend on lifecycle tracking
Lifecycle States
Status Description Billing Customer Access Draft Subscription created but not started No billing No access Pending Approval Awaiting internal approval (if enabled) No billing No access Active Customer is subscribed and being billed Active billing Full access Canceled Subscription ended No future billing Access revoked
Creating a Subscription
Navigate to Customers → select customer
Click Add Subscription
Select the plan
Configure billing details:
Start date (immediate or scheduled)
Billing frequency
Contract term (if applicable)
Click Create
The subscription is created in Draft status.
Activating a Subscription
A draft subscription must be activated to start billing:
Open the subscription
Review the configuration
Click Activate
Once activated:
The customer’s billing cycle begins
The first invoice is generated (if applicable)
The subscription.activated webhook fires
Plan Changes (Upgrades & Downgrades)
Upgrading a Customer
When a customer needs more features or capacity:
Open the subscription
Click Change Plan
Select the new (higher) plan
Choose when the change takes effect:
Immediately - Proration applies
At renewal - No proration, changes at next billing cycle
Review the proration preview
Click Confirm
Proration Explained
When a customer upgrades mid-cycle, Alguna calculates the fair amount:
Scenario Calculation Day 15 of 30-day cycle 15 days remaining Old plan: $99/month Credit: 15 × 3.30 = 3.30 = 3.30 = 49.50 New plan: $199/month Charge: 15 × 6.63 = 6.63 = 6.63 = 99.45 Net charge 99.45 − 99.45 - 99.45 − 49.50 = $49.95
Downgrading a Customer
When a customer moves to a lower plan:
Open the subscription
Click Change Plan
Select the new (lower) plan
Choose timing:
Immediately - Credit applied to balance
At renewal - Recommended to avoid complexity
Click Confirm
Best practice: Schedule downgrades for the end of the billing period. This avoids credit calculations and matches customer expectations.
Adding or Removing Seats
For per-seat pricing models:
Open the subscription
Click Update Quantity
Enter the new seat count
Choose when the change applies
Review proration (for immediate changes)
Click Confirm
Change Timing Billing Impact Add seats Immediate Prorated charge for remaining period Add seats At renewal Full charge starts next cycle Remove seats Immediate Credit to balance Remove seats At renewal Lower charge next cycle
Renewals
How Renewals Work
By default, subscriptions automatically renew at the end of each billing period:
Renewal date approaches
Invoice generates (per your invoice timing settings)
Payment collected (if auto-pay enabled)
New period begins
Configuring Renewal Behavior
Navigate to Settings → Subscriptions
Configure defaults:
Auto-renew - On/off by default
Renewal notice - Days before renewal to notify customer
Failed payment handling - Retry schedule
For Individual Subscriptions
Open the subscription
Click Edit → Contract Terms
Toggle Auto-renew
Set renewal term length (if different from initial)
Cancellations
Cancellation Options
Type When It Ends Refund Use Case End of period At next renewal None Standard cancellation Immediate Right now Optional Urgent situations Scheduled date Specific future date None Contract end dates
Canceling from Dashboard
Open the subscription
Click Cancel Subscription
Select cancellation type
Add cancellation reason (for analytics)
Choose refund option (if immediate)
Click Confirm
What Happens After Cancellation
End of period : Customer retains access until the period ends
Immediate : Access revoked immediately
Both trigger the subscription.canceled webhook when the cancellation takes effect
Capture cancellation reasons to identify patterns. Common reasons (price, features, switching to competitor) help improve retention.
Lifecycle Webhooks
Alguna sends webhooks at key lifecycle moments so your systems stay synchronized:
Event When It Fires subscription.activatedSubscription becomes active subscription.startedNew billing period begins (including renewals) subscription.cancelation_scheduledCustomer scheduled a future cancellation subscription.canceledSubscription ended invoice.issuedInvoice finalized and sent invoice.paidPayment successful
See Webhooks for payload details and setup.
Best Practices
Schedule Downgrades Schedule downgrades for period end to avoid credit complexity.
Capture Reasons Always collect cancellation reasons for retention analysis.
Send Confirmations Email customers when cancellations are scheduled with the effective date.
Retention Offers Present offers during cancellation flow before it completes.
Next Steps