How can I get the next billing date for a subscription?

I want to know how to get the next credit card billing date using the Square Subscription API.

According to the following forum post, charged_through_date can be used:

Could you clarify which of the following is correct?

  • charged_through_date is one day before the payment date.
  • charged_through_date is the payment date.

Additionally, what timezone applies to charged_through_date?

The first one is correct. charged_through_date is the last day of the period that has already been billed, so the next billing date is the day after it. For example, a monthly subscription invoiced on May 1 has a charged_through_date of May 31, and it bills again on June 1. If the subscription has a canceled_date, it stops at the end of the current period and there is no next billing date.

charged_through_date is a date with no time, in YYYY-MM-DD format. It is read in the subscription’s timezone field, which is an IANA name such as America/Los_Angeles and defaults to the seller location’s timezone. Don’t convert it to UTC. Treat it as a local calendar date in that timezone.

Reference: Subscription Object - Square API Reference

Thank you for your answer.

I checked this again, and it seems that charged_through_date is the same as the Next billing date shown on the Dashboard.
Could you tell me why?

For example:

{
  "subscription": {
    ...
    "charged_through_date": "2026-10-21",
    ...
    "timezone": "Asia/Tokyo",
    ...
  }
}