Subscription
A subscription object representing a recurring billing agreement with a customer.
- billingType: string | nullFormat: date-time
_cycle _anchor requiredThe reference point that aligns future billing cycle dates. Sets the day of week for weekly intervals, day of month for monthly/yearly, etc.
- cancelType: boolean
_at _period _end requiredWhether this subscription will cancel at the end of the current billing period.
- createdType: stringFormat: date-timerequired
Time at which the subscription was created.
- customerrequired
The customer ID, or the expanded customer object when
expand=customeris requested.- Type: string
Customer ID (ULID).
- idType: stringrequired
Unique identifier for the subscription (ULID).
- nextType: stringFormat: date-time
_billing _date requiredNext scheduled billing date for the subscription.
- startType: stringFormat: date-time
_date requiredDate when the subscription was first created. May differ from
createddue to backdating. - statusType: stringenumrequired
Current lifecycle status of the subscription:
incomplete— subscription created but first payment not yet collected; Temporal owns charge attempts fordefault_incomplete, or inline charge failed forallow_incompleteincomplete_expired— all dunning attempts exhausted on adefault_incompletesubscription (terminal)trialing— subscription is in a free trial period; no charge until trial endsactive— subscription is active and billing normallypast_due— the most recent charge failed; dunning retries in progresscanceled— subscription has been canceled (terminal)unpaid— payment failed and all retries exhaustedpaused— billing is temporarily paused
values- incomplete
- incomplete
_expired - trialing
- active
- past
_due - canceled
- unpaid
- paused
- updatedType: stringFormat: date-time
_at requiredTime at which the subscription was last updated.
- billingType: object | null
_cycle _anchor _config Advanced billing cycle configuration. Allows precise control over when billing cycles occur. All fields are optional integers with specific ranges.
- dayType: integer
_of _month min:1max:31requiredDay of month for billing (1–31).
- hourType: integer | nullmin:0max:23
Hour of day for billing in UTC (0–23).
- minuteType: integer | nullmin:0max:59
Minute of hour for billing (0–59).
- monthType: integer | nullmin:1max:12
Month of year for billing (1–12).
- secondType: integer | nullmin:0max:59
Second of minute for billing (0–59).
- billingType: object | null
_thresholds Thresholds at which an invoice is generated and billing period advances.
- propertyType: anything
Name
- cancelType: string | nullFormat: date-time
_at If set, the date on which the subscription will be canceled.
- canceledType: string | nullFormat: date-time
_at If the subscription has been canceled, the date of that cancellation.
- cancellationType: object · CancellationDetails
_details Details about why this subscription was cancelled.
- commentType: string | nullmax length:5000
Free-form text comment explaining the cancellation reason.
- feedbackType: string | nullenum
Predefined cancellation reason category provided by the customer.
values- customer
_service - low
_quality - missing
_features - other
- switched
_service - too
_complex - too
_expensive - unused
- collectionType: stringenum
_method How payment is collected from the customer.
values- charge
_automatically - send
_invoice
- currencyType: string | null
Three-letter ISO currency code (uppercase).
- currentType: string | nullFormat: date-time
_period _end End of the current billing period.
- currentType: string | nullFormat: date-time
_period _start Start of the current billing period.
- daysType: integer | null
_until _due Number of days a customer has to pay invoices. Null for
charge_automatically. - defaultType: string | null
_payment _method ID of the default payment method for this subscription.
- endedType: string | nullFormat: date-time
_at If the subscription has ended, the date it ended.
- itemsType: array object[] · SubscriptionItem[]
List of subscription items, each representing a product/price in the subscription.
A subscription item representing a product/price combination active on the subscription.
- billingType: stringenum
_interval Resolved billing interval for this item (e.g.
monthly).values- daily
- weekly
- monthly
- yearly
- createdType: stringFormat: date-time
_at Timestamp when the item was created.
- currencyType: string | null
Three-letter ISO 4217 currency code (uppercase). Resolved from item.currency → subscription.currency.
- idType: string
Subscription item ID
- priceType: string
Price ID from the product catalog.
- productType: string
Unique identifier for the product.
- quantityType: integer
Quantity of the subscription item.
- recurringType: object
Recurring billing configuration.
- unitType: number | null
_amount Unit price in the smallest currency unit (e.g. cents).
- updatedType: stringFormat: date-time
_at Timestamp when the item was last updated.
- livemodeType: boolean
Whether this subscription exists in live mode (
true) or test mode (false). - metadataType: object
Set of key-value pairs attached to the subscription.
- propertyType: anything
Name
- onType: string | null
_behalf _of The account (if any) on behalf of which charges are made.
- pausedType: string | nullFormat: date-time
_at If the subscription has been paused, the date it was paused.
- paymentType: string | nullenum
_behavior The payment collection behavior configured for this subscription:
default_incomplete— created asincomplete; Temporal owns all charge attempts; exhaustion →incomplete_expiredallow_incomplete— inline charge at creation; success →active; failure →past_due; exhaustion →cancelederror_if_incomplete— pre-flight charge before creation; failure → 402, nothing created; success →activesend_invoice— (coming soon) invoice-based billing
values- allow
_incomplete - default
_incomplete - error
_if _incomplete - send
_invoice
- pendingType: string | null
_setup _intent ID of a pending SetupIntent for collecting payment credentials.
- trialType: string | nullFormat: date-time
_end If the subscription has a trial, the end of that trial.
- trialType: object
_settings Controls what happens when a trial period ends.
- endType: object
_behavior Behavior when the trial ends.
- trialType: string | nullFormat: date-time
_start If the subscription has a trial, the start of that trial.

