SchedulePhase
A single phase in a subscription schedule. Phases are applied sequentially. When a phase is applied, subscription items are updated to match the phase's items.
- itemsType: array · SchedulePhaseItems 1…required
Items active during a phase. At least one item is required per phase. Items without
recurringare one-time charges (captured at phase creation, excluded from all future billing cycles).For the terminal phase with
end_behavior: CANCEL, repeat the previous phase's items. The subscription is canceled immediately when the last phase is applied, so the repeated items are never charged again.Phase item referencing an existing catalog price.
One-time charge: omit
recurring(or set null) — the item is charged once on phase creation and excluded from all future billing cycles.- priceType: stringrequired
Price ID from your product catalog.
- currencyType: string | nullmin length:3max length:3
Currency override. Falls back to schedule default_settings or subscription currency.
- metadataType: object | null
Arbitrary key-value pairs for this item.
- quantityType: integermin:1
Quantity of this item.
- recurringType: object · RecurringConfig
Recurring billing configuration.
- unitType: number | null
_amount min:0Unit amount override in cents. Falls back to the catalog price if omitted.
- startType: stringFormat: date-time
_date requiredWhen this phase begins.
- billingType: string | null
_cycle _anchor Billing anchor for the subscription created by this phase:
"phase_start"(default) — usestart_dateas the billing anchor"automatic"— inherit the subscription's existing anchor (no change on transition)- ISO 8601 datetime string — use a specific date
- collectionType: stringenum
_method How to collect payment during this phase.
send_invoiceis (coming soon).values- charge
_automatically - send
_invoice
- endType: string | nullFormat: date-time
_date When this phase ends. Omit for an open-ended (last) phase. When reached and no further phases exist,
end_behaviordetermines what happens to the subscription. - metadataType: object | null
Arbitrary key-value pairs for this phase.
- propertyType: anything
Name
- onType: string | null
_behalf _of Account ID for connected account scenarios.
- phaseType: integer
_index Zero-based index. Auto-assigned from array position if omitted.
- trialType: string | nullFormat: date-time
_end Trial end date for the subscription created by this phase (Phase 0 only). When set, the subscription starts in
TRIALINGstatus and no charge is taken untiltrial_end. The billing schedulestartAtis set to this date. - trialType: object · TrialSettings
_settings Controls what happens when a trial period ends.
- endType: object
_behavior Behavior when the trial ends.

