Trials and plan changes
Trials and plan changes converts each free trial to paid on its terms and moves a Customer between Offers with the period prorated.
Outcome
| Part | This Process |
|---|---|
| Outcome | Each trial converts to paid or ends on its terms after one reminder, and each plan change takes effect with the period prorated. |
| Reads | Subscription, Offer |
| Leaves | Invoice, Entitlement, Message, Subscription |
| Runs in | Each Startup |
Accountable
Billing Specialist, Finance Team.
Responsible: Billing Specialist.
Consulted: Success Manager.
Informed: Finance Lead.
Workflows
| Workflow | Runs | Team |
|---|---|---|
| Convert a trial | every day | Finance Team |
| Change a plan | on every Subscription.switch call | Finance Team |
| Cancel a subscription | on every Subscription.unsubscribe call | Finance Team |
Who does each step
| Workflow | Step | Role | Calls | Approval |
|---|---|---|---|---|
| Convert a trial | 1. Find trials that end within the reminder window. | Billing Specialist | Subscription.list | None |
| Convert a trial | 2. Remind each Customer of the date, the Price and a one-step cancel link. | Billing Specialist | Message.create | None |
| Convert a trial | 3. Charge the card on file when the trial ends. | Billing Specialist | Invoice.collect | Within a Mandate; waits 1 business hour |
| Change a plan | 1. Prorate the current period and bill or credit the difference. | Billing Specialist | Invoice.create | None |
| Change a plan | 2. Move the Customer’s Entitlements to the new Offer. | Billing Specialist | Entitlement.update | None |
| Change a plan | 3. Confirm the change, the new Price and the next charge date. | Billing Specialist | Message.create | None |
| Change a plan | 4. Hand a downgrade to the Success Manager to ask why. | Success Manager | Renewal.open | None |
| Cancel a subscription | 1. End renewal at the close of the paid period, at once, with no call or offer in the way. | Billing Specialist | Subscription.update | None |
| Cancel a subscription | 2. Confirm the cancellation with the last day of access and how to come back. | Billing Specialist | Message.create | None |
| Cancel a subscription | 3. Send the Customer an export of their data, kept available after access ends. | Success Manager | Collection.export | None |
Events
| Direction | When | What happens |
|---|---|---|
| In | Every day | Starts Convert a trial |
| In | On every Subscription.switch call | Starts Change a plan |
| In | On every Subscription.unsubscribe call | Starts Cancel a subscription |
| In | On Offer.trialed | Wakes this Process, the first time only. The first Customer starts a trial. |
| Out | Message.created | Raised by step 2 of Convert a trial |
| Out | Invoice.collected | Raised by step 3 of Convert a trial |
| Out | Invoice.created | Raised by step 1 of Change a plan |
| Out | Entitlement.updated | Raised by step 2 of Change a plan |
| Out | Renewal.opened | Raised by step 4 of Change a plan |
| Out | Subscription.updated | Raised by step 1 of Cancel a subscription |
| Out | Collection.exported | Raised by step 3 of Cancel a subscription |
Plays
No Play names this Process.
Controls
No Control names this Process or a Workflow of it.
Settings
| Setting | Type | Default | Say | Set with |
|---|---|---|---|---|
trials.remindDaysBefore | integer | 3 | Remind trial users three days before they are charged | Setting.update |
plans.prorate | boolean | true | Prorate every plan change | Setting.update |
Failure
A failed step retries; when retries run out, the Action goes to the Billing Specialist.
| Step | On failure |
|---|---|
| Convert a trial 3. Charge the card on file when the trial ends. | noCard: The trial has no card on file, so it ends and the Customer keeps their data. |
Loop
| Step | Value |
|---|---|
| Hypothesis | Reminding a trial three days before it ends converts more trials to paid than reminding on the last day. |
| Measure | Activation rate over 30d, at least 100 observations |
| Learn | The learn step reads the Readout, records Evidence and a Decision, and drafts the next Variant. |
Code
Turn on trials and plan changesEnable
On by default for SaaS, Headless SaaS, Dataset API, Agent as a Service. Process.pause stops new Actions; Actions in progress finish.
Remind trial users three days before they are chargedExample
A Customer on a 14-day trial of a $29 plan gets a reminder on day 11 and converts on day 14. Another moves from monthly to annual mid-month and pays $290 minus the unused $14.