Pausing Subscriptions
You and your customers can pause active subscriptions to temporarily disable billing and services. For each subscription, configure the pause duration. Select whether customers can pause it from their account management portal. FastSpring will apply the pause the next rebill date. You or your customers can resume or cancel the subscription at any time before the resume date.
When someone pauses a subscription, FastSpring sends the subscription.paused and subscription.updated webhooks.
On the resume date, FastSpring will automatically rebill the customer, and reactivate the subscription.
Pausing Settings
Customize pausing settings for each subscription in your store. This includes which products your customers can pause, and the number of billing cycles the pause lasts. If enabled, FastSpring will offer a pause for the configured number of billing cycles each time a customer attempts to cancel the subscription.
Follow the steps below to configure pausing capabilities for each subscription:
- Navigate to Products > Subscriptions. Click the subscription you would like to edit pausing settings for.
- Next to Notification & Retention, click Edit. A popup appears
- In the Pause section, select the checkbox to allow customers to pause their subscriptions. Deselect this checkbox to limit pausing capabilities to sellers.
- In the dropdown, select the number of billing cycles to which the pause applies.
- For example, if you select 2, FastSpring will pause the subscription for 2 billing cycles each time you or a customer pauses it.
- Save your changes.
Schedule a Pause from the App
- Navigate to the subscription’s details page.
- At the top, right corner of the Overview section, click Pause. A popup appears.
- Enter the number of billing cycles you would like to pause the subscription for.
- Click Confirm. The subscription’s details page will automatically update.
The Next Charge field displays the start and end dates of the upcoming pause. These details are also reflected in the Sales pages.
On the next rebill date, FastSpring pauses the subscription. The subscription will display in the Active Subscriptions section of their account management portal. Depending on your settings, customers may cancel the pause before it starts or resume it early. Otherwise, ehe subscription will automatically resume on the renewal date you configure.
Cancel a Scheduled Pause
If you or a customer have scheduled a pause for the next billing cycle, you can cancel the scheduled pause.
- Navigate to the subscription’s details page.
- Click Cancel Scheduled Pause. This immediately resumes the customer’s subscription.
Customers may also cancel their scheduled pause from the account management portal.
Resume a Subscription
You and your customers can resume subscriptions that are in paused states. This immediately charges the customer and adjusts future rebills accordingly. Otherwise, the subscription will automatically resume on the date you configured.
- Navigate to Sales > Subscriptions.
- In the drop-down filter, click Paused Subscriptions. Click the subscription you would like to resume to access its details page.
- In the Overview section, click Resume.
To see the history of status changes for the subscription, scroll to the Timeline section below.
Using API + Webhooks
You can also utilize the FastSpring API and Webhooks to pause and resume customers’ subscriptions.
Contents of Event Payload
Field | Type | Description |
state | string | The current billing status of the subscription. “Paused” indicates that FastSpring will not bill the customer for the current cycle. |
pauseDateInSeconds | number | Exact timing of the scheduled pause. This displays in a 10-digit Unix timestamp format. |
pauseDateDisplay | string | (mm/dd/yy) The date on which the subscription was paused, or is scheduled to pause. |
resumeDateInSeconds | number | Exact timing of the scheduled resume date. This displays in a 10-digit Unix timestamp format. |
resumeDateDisplay | string | (mm/dd/yy) The date on which the subscription is scheduled to resume billing. |
Schedule a Pause
To schedule a subscription pause for your customer, send the following API request:
POST /subscriptions/ID/pause
In the pausePeriodCount= field, Input the number of rebill periods for which the subscription is paused. This can be any integer greater than 0 and less than 11. This will send the GET /subscriptions/ID response with the following attributes:
- pauseDateInSeconds
- pauseDateDisplay
- resumeDateInSeconds
- resumeDateDisplay
This change impacts existing subscription.updated webhook, sending a Subscription Paused email notification to the customer. The following attributes should be included in the payload:
- pauseDateInSeconds
- pauseDateDisplay
- resumeDateInSeconds
- resumeDateDisplay
Removing a Scheduled Pause
To cancel a customer’s scheduled pause, send the following API requests:
POST /subscriptions/ID/resume
This will send the GET /subscriptions/ID response, and resume the currently paused subscription. This response impacts the existing subscription.update webhook; the following attributes should be included in the payload:
- pauseDateInSeconds
- pauseDateDisplay
- resumeDateInSeconds
- resumeDateDisplay
Paused Subscriptions
When a subscription is paused, the pausing starts on the day of the next billing cycle, when the customer would usually be charged for a renewal. Instead, the subscription is sent into a Paused status. This triggers the subscription.updated and subscription.paused webhook events.
<p>state: “paused”</p>
<p>pauseDateInSeconds: 1625011200</p>
<p>pauseDateDisplay: 6/30/21</p>
<p>resumeDateInSeconds: 1625011200</p>
<p>resumeDateDisplay: 6/30/21</p>
Resume a Subscription Immediately / Cancel a Scheduled Pause
If you cancel an upcoming pause, FastSpring will immediately charge the customer and start a new billing cycle. To do so, send the following API request:
POST /subscriptions/ID/resume
The response will be GET /subscriptions/ID?. This will update to the active status and remove the pauseDate and resumeDate fields from the payload. This initiates the following webhooks:
- subscription.updated
- subscription.resumed
- subscription.charge.complete or subscription.charge.failed
Updated 12 months ago