SubscriptionSchedule
A subscription schedule manages the lifecycle of a subscription through a series of phases, allowing you to configure billing changes at specific future dates.
- idType: stringrequired
Unique identifier for the subscription schedule (ULID).
- accountType: string
Merchant account ID.
- customerType: stringrequired
ID of the customer this schedule belongs to.
- statusType: SubscriptionScheduleStatusenumrequired
Current lifecycle state of a subscription schedule:
NOT_STARTED— created but waiting for the first phase start dateACTIVE— currently running; a phase is activeCOMPLETED— all phases have ended (viaend_behavior: CANCEL)CANCELED— manually canceled before completionRELEASED— released from the subscription; billing continues independently
valuesNOT_STARTEDACTIVECOMPLETEDCANCELEDRELEASED - endType: ScheduleEndBehaviorenum
_behavior requiredWhat happens when the last phase ends:
RELEASE— schedule becomesRELEASED; the subscription continues billing on its own cadenceCANCEL— the subscription is immediately canceled; schedule becomesCOMPLETEDNONE— no action taken; schedule remains active
valuesRELEASECANCELNONE - subscriptionType: string | null
ID of the subscription created when the schedule was activated. Null until the first phase is applied.
- releasedType: string | null
_subscription ID of the subscription that was released from this schedule.
- defaultType: ScheduleDefaultSettings
_settings Properties: 3Default settings applied to the subscription created by this schedule.
- metadataType: object | nullProperties: 1
Set of key-value pairs attached to the schedule.
- livemodeType: booleanrequired
Whether this schedule exists in live mode (
true) or test mode (false). - startType: stringFormat: date-time
_date requiredDerived from
phases[0].start_date. When the workflow begins watching. - currentType: integer
_phase _index requiredZero-based index of the currently active phase.
- currentType: object | null
_phase Properties: 1Summary snapshot of the currently active phase (id, phase_index, start_date, end_at).
- nextType: string | nullFormat: date-time
_action _at When the workflow will next fire (next phase transition or schedule end).
- canceledType: string | nullFormat: date-time
_at If the schedule was canceled, the date of cancellation.
- completedType: string | nullFormat: date-time
_at If the schedule completed (all phases ended), the completion date.
- releasedType: string | nullFormat: date-time
_at If the schedule was released, the date of release.
- phasesType: SchedulePhases 1…20requiredProperties: 10
Ordered list of schedule phases. Applied sequentially by the workflow. The first phase's
start_datedetermines when the subscription is created. - applicationType: string | null
Application ID if created via a connected application.
- customerType: string | null
_account Customer account ID for connected account scenarios.
- billingType: object | null
_mode Properties: 1coming soon — Reserved for future billing mode configuration. Currently accepted and stored but has no effect on billing behavior.
- createdType: stringFormat: date-timerequired
Time at which the schedule was created.
- updatedType: stringFormat: date-time
_at requiredTime at which the schedule was last updated.

