Skip to main content
The SubscriptionItem object defines which products are included in a subscription and how they are configured. It supports multiple variants and can be configured for specific subscription cycles, allowing customers to customize their subscription with different product options.

Reference

id
string<uuid>
required

Unique subscription item identifier (UUID).

Example:

"a1b2c3d4-e5f6-7890-abcd-ef1234567890"

resource
enum<string>
required
Available options:
subscription-item
title
string
required

Product title.

Minimum string length: 1
Example:

"Monthly Coffee Blend"

subtitle
null | string
required

Variant title. Matches the variant title in most cases.

Minimum string length: 1
Example:

"250g / Ground"

quantity
integer
required

Number of units ordered per billing cycle.

Required range: x >= 1
Example:

1

totalPrice
number
required

Final item price per billing cycle including all applicable discounts.

Required range: x >= 0
Example:

24.99

recurringCycleLimit
null | integer
required

Maximum number of billing cycles this item remains on the subscription. The item is automatically removed once this limit is reached. Null means no limit.

Required range: x >= 1
Example:

3

canceledAt
null | string<date-time>
required

Cancellation date of the item.

billingPolicy
null | BillingPolicy · object
required
deliveryPolicy
null | DeliveryPolicy · object
required
customAttributes
object[]
required

Arbitrary key-value pairs attached to this subscription item. In the Customer API, attributes whose key starts with _ are hidden and excluded.

variant
required

ProductVariant id when not expanded, or the full ProductVariant object when the field name is included in the expand query parameter. Can be null.

Minimum string length: 1
product
required

Product id when not expanded, or the full Product object when the field name is included in the expand query parameter. Can be null.

Minimum string length: 1