Calendar Billing

Calendar billing in Advanced Billing lets you align subscription renewals to a specific day of the month, making billing dates predictable for your customers and easier for your accounting team to manage. When enabled, all renewals follow a consistent schedule, reducing date drift, streamlining invoicing, and improving the customer experience. Calendar billing is available when the product’s billing interval is one month, all component price points match that interval or have no interval, there is no trial period, and the next_billing_at field is not set when creating a subscription via the API.

Advanced Billing supports calendar billing for subscriptions when the following criteria are met:

  • The product’s billing interval is one month.
  • All component price points are one month or have no defined billing interval.
  • The subscription has no trial period.
  • For API users: You must not set next_billing_at when creating the subscription. This field is typically used for importing existing subscriptions.

You can set calendar billing in the following ways:

  • Via a Public Signup Page, select the “Calendar Billing” option.
  • Via the API, specify a calendar billing day using the snap_day attribute when creating the subscription.
  • Via the Admin UI, select the calendar billing date when creating a subscription:

Set the Billing Day and the first charge handling.

Set the Billing Day and the first charge handling.

Billing Day

A valid calendar billing day (or snap_day in the API) can be any number between 1 and 28, or “last day of the month.” In API calls, the last day of the month is represented by end. When specified, the subscription renews by default at 12:00 PM in your site’s time zone on that day.

If end is used, the subscription renews on the last day of each month at 12:00 PM in the site’s time zone.

Snap time can optionally be set to 5:00 PM in Settings → Calendar Billing.

End of the Month

Without calendar billing, signups at the end of the month will shift earlier over time. For example, a signup on October 31 will renew on November 30, December 30, January 30, February 28, March 28, and continue on the 28th thereafter.

Daylight Savings Time

If your time zone observes daylight savings time (DST), renewal times may appear to shift by one hour twice a year as clocks “spring forward” and “fall back.” Advanced Billing stores dates in UTC, which does not observe DST, so renewals occur at the same UTC time year-round. This can cause local time changes.

To maintain a consistent local renewal time, manually adjust the next billing date and time for each subscription twice a year when DST changes. This includes ensuring the correct offset at the next renewal.

Tip: Avoid scheduling billing close to midnight on the first or last day of the month, as DST changes can shift the renewal across days, causing duplicate or skipped billing events.

Signups With Calendar Billing

Subscriptions created with calendar billing enabled can be charged in one of three ways at signup:

  • Prorated: The prorated product price is charged immediately.

    This is the universal default, but a site default can be set in Settings → Calendar Billing.

  • Immediate: The full product price is charged immediately.
  • Delayed: The full product price is charged with the first scheduled renewal.

Prorated Calendar Billing

For prorated charges, the amount depends on the signup date and time relative to the snap_day. Signups within 24 hours before the site’s renewal time (12:00 PM or 5:00 PM) on the snap_day are treated as full period signups. All others are charged a prorated amount until the next snap_day.

snap_day Signup Date Amount Charged at Signup current_period_ends_at
15 June 2, 3:00 PM Pro-rated amount from 6/2 to 6/15 June 15, 12:00 PM
15 June 14, 3:00 PM Full amount from 6/14 to 7/15 July 15, 12:00 PM
15 June 15, 12:01 PM Pro-rated amount from 6/15 to 7/15 July 15, 12:00 PM
end June 2, 3:00 PM Pro-rated amount from 6/2 to 6/30 June 30, 12:00 PM
end June 29, 3:00 PM Full amount from 6/29 to 7/31 July 31, 12:00 PM
end June 30, 12:01 PM Pro-rated amount from 6/30 to 7/31 July 31, 12:00 PM

Immediate Calendar Billing

The full amount is charged at signup regardless of the signup date. Signups within 24 hours before renewal time are treated as full period signups.

snap_day Signup Date Amount Charged at Signup current_period_ends_at
15 June 2, 3:00 PM Full amount June 15, 12:00 PM
15 June 14, 3:00 PM Full amount July 15, 12:00 PM
15 June 15, 12:01 PM Full amount July 15, 12:00 PM
end June 2, 3:00 PM Full amount June 30, 12:00 PM
end June 29, 3:00 PM Full amount July 31, 12:00 PM
end June 30, 12:01 PM Full amount July 31, 12:00 PM

Delayed Calendar Billing

No charge is applied at signup. The first full charge occurs on the first renewal date as determined by snap_day.

snap_day Signup Date Amount Charged at Signup current_period_ends_at
15 June 2, 3:00 PM nothing June 15, 12:00 PM
15 June 14, 3:00 PM nothing June 15, 12:00 PM
15 June 15, 12:01 PM nothing July 15, 12:00 PM
end June 2, 3:00 PM nothing June 30, 12:00 PM
end June 29, 3:00 PM nothing June 30, 12:00 PM
end June 30, 12:01 PM nothing July 31, 12:00 PM

Editing Calendar Billing Dates

If a subscriber signs up via a Public Signup Page with calendar billing enabled, the snap_day can be changed via the Admin UI. Follow the steps in Subscription Summary.

Modifying the next billing date may result in a prorated charge if it affects the subscription’s alignment to its configured snap_day and snap time.

  • The snap_day must match both current_period_ends_at and next_assessment_at.
  • The renewal time must match the configured site time (12:00 PM or 5:00 PM).
  • No interim billing date can cause a shortened or extended billing period before the next snap_day.

Product Changes and Calendar Billing

  • You cannot change a subscription to a product with an expiration date. Use an upgrade or downgrade instead.
  • You can change to a product with a trial period, but the trial is ignored unless the subscription is already in trial.
  • Additional restrictions, including prepaid product rules, may prevent certain product changes while on calendar billing.
Was this article helpful?
0 out of 0 found this helpful

Comments

0 comments

Article is closed for comments.