On Hold Subscriptions

There are some instances where you or your subscriber would like to option to pause billing. Use the on-hold feature to cease billing for a specific period of time. You can also use the on-hold feature’s option to automatically resume the subscription at a specific date.

Below, we’ll get into some specific use cases and how the function works. At a high level, putting a subscription on-hold can be useful for both you and your subscribers to have some additional room to breathe.

Overview

Chargify will not apply automatic charges or payments to a subscription in the on_hold state. The exception to this rule is for subscriptions set to automatically resume. Subscriptions that automatically resume at a date in the future will incur charges (and payments if applicable) after the resume date has arrived.

During the time that a subscription is on-hold, all activity on the subscription is effectively on-hold. This means that the following events / activities will not take place:

  • Renewals will not occur
  • If an expiration date exists, the subscription will not expire
  • If a subscription is set to pending cancellation, the subscription will not cancel until it is resumed

Applicable Subscriptions

Chargify will allow you to place any active subscription on hold. The option to place a subscription on hold is not an option for the following subscription states:

  • Canceled
  • Expired
  • Past due
  • Trial
  • Trial ended
  • Unpaid
A subscription cannot be placed on hold if the Next Billing timestamp occurs within the next hour.

For further questions on subscription states, please view our documentation about our subscription states.

Examples

Jane has a monthly subscription that renews on March 28th. It is March 21st, and she is about to leave for a two-week vacation. Knowing she will not be at home to receive the package, she puts her subscription on hold until April 4th.

Scenario A: Jane enjoys her vacation and returns as scheduled on April 4th. The system automatically resumes her subscription that day. Since her normal renewal date (the 28th) has passed, the system “reactivates” her subscription. She will be charged for a full billing period on April 4th, and her next renewal date will be May 4th.

Scenario B: Unfortunately, something happens and she has to return early on March 26th. She uses the Billing Portal to manually resume her subscription. Her subscription is returned to active status, and nothing will happen until her normal renewal on the 28th.

Put a subscription on hold

There are three ways a subscription can be put on hold.

  1. From a subscriber’s summary page via the actions menu
  2. As a subscriber: from the Billing Portal (depending on your settings)
  3. Via the API

Subscription summary method

You can request that a subscription be put on hold by selecting “Put On Hold” from the actions menu.

Place a subscription on hold

After selecting “Put On Hold”, you will have the opportunity to choose whether to leave the subscription on hold indefinitely, or to enter a date and time at which it should automatically resume. If entered, the date must be at least an hour in the future.

Decide what will happen with your on-hold subscription in the future
You can later resume a subscription manually that is currently on hold. Please see the section below titled Resume to learn more.

Billing Portal method

If you have configured the option in your Billing Portal settings to “Allow customers to put their subscriptions on hold”, your subscribers with an active subscription will be given the option to put their billing on hold.

You can find more information about this action in the Billing Portal Interface documentation.

API

Please consult the Subscription Hold API documentation for more information.

Resume Overview

If a subscription is in the on_hold state, you can resume the billing schdule so that the subscription will incur charges. There are four ways a subscription can be resumed.

  1. From the subscription actions menu
  2. From the Billing Portal (depending on your settings)
  3. Automatically upon reaching the specified date and time
  4. Via API

Resume from subscription summary

You can request that a subscription be resumed by clicking “Resume” from the actions menu, or from the button on the summary.

Select "Resume" from the subscription actions menu
Select "Resume" from the subscription summary

After clicking “Resume”, you will have the opportunity to review what is going to happen before confirming.

Resume an on-hold subscription
A subscription must have been previously put on hold before it can be resumed.

If the subscription is being resumed prior to its normal next renewal date, then it will be made active and nothing will happen until the renewal date arrives.

If the subscription is being resumed after its normal next renewal date, then resuming will behave like a reactivation, changing the billing date to “now” and charging for the billing period. If there is a payment due and the payment fails, the subscription will follow the dunning strategy for the site.

Resume from Billing Portal

If you have configured the “Allow Customers Resume Subscriptions” setting in Settings -> Billing Portal, then customers with an On Hold subscription will be given the option to resume their billing.

You can find more information about this action in the Billing Portal Interface documentation.

Resume automatically

If a date and time to resume was specified when the subscription was put on hold, then the subscription will be automatically resumed around that time.

Resume via API

Please consult the Subscription Resume API documentation for more information.

Special Considerations

Expiring Subscriptions Scenario 1

If a subscription has an expiration date is put on-hold, the subscription’s “expires at” date will remain the same as it was before being placed on-hold. It doesn’t shift or change. The subscription will transition to expired on the “expires at” date.

Example:

  1. A monthly subscription has an “expires_at” date that occurs in the future
  2. Change the “next_billing_date” to 24 hours from now
  3. Put the subscription on hold
  4. Schedule the date to resume the subscription for after next billing date
  5. Expiration date doesn’t change and the subscription will still expire at original date

Expiring Subscriptions Scenario 2

If a subscription has an expiration date that occurs while the subscription is on-hold, the subscription will transition to expired on the when the subscription is resumed.

Example:

  1. A monthly subscription has an “expires_at” date that occurs in the future
  2. Change “next_billing_date” & “expires_at” date to 24 hours from current timestamp
  3. Put on hold
  4. Schedule the date to resume the subscription for after next billing date
  5. Therefore the expiration takes place while the subscription is on hold
  6. Expiration date doesn’t change and the subscription will still expire at original date
  7. When the subscription is resumes, the subscription will transition from Active –> Expired when the subscription is processed (~20 minute window)
  8. Since expiration date was in the past, the expiration date is still applicable.