The Customer object
Attributes
id(string) Unique identifier for the object.object(string) String representing the object’s type. Objects of the same type share the same value.address(object, nullable) The customer’s address.address.city(string, nullable) City, district, suburb, town, or village.address.country(string, nullable) Two-letter country code (ISO 3166-1 alpha-2).address.line1(string, nullable) Address line 1, such as the street, PO Box, or company name.address.line2(string, nullable) Address line 2, such as the apartment, suite, unit, or building.address.postal_code(string, nullable) ZIP or postal code.address.state(string, nullable) State, county, province, or region (ISO 3166-2).
balance(integer) The current balance, if any, that’s stored on the customer in their default currency. If negative, the customer has credit to apply to their next invoice. If positive, the customer has an amount owed that’s added to their next invoice. The balance only considers amounts that Stripe hasn’t successfully applied to any invoice. It doesn’t reflect unpaid invoices. This balance is only taken into account after invoices finalize. For multi-currency balances, see invoice_credit_balance.business_name(string, nullable) The customer’s business name.The maximum length is 150 characters.
cash_balance(object, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The current funds being held by Stripe on behalf of the customer. You can apply these funds towards payment intents when the source is “cash_balance”. Thesettings[reconciliation_mode]field describes if these funds apply to these payment intents manually or automatically.cash_balance.object(string) String representing the object’s type. Objects of the same type share the same value.cash_balance.available(object, nullable) A hash of all cash balances available to this customer. You cannot delete a customer with any cash balances, even if the balance is 0. Amounts are represented in the smallest currency unit.cash_balance.customer(string) The ID of the customer whose cash balance this object represents.cash_balance.customer_account(string, nullable) The ID of an Account representing a customer whose cash balance this object represents.cash_balance.livemode(boolean) If the object exists in live mode, the value istrue. If the object exists in test mode, the value isfalse.cash_balance.settings(object) A hash of settings for this cash balance.cash_balance.settings.reconciliation_mode(enum) The configuration for how funds that land in the customer cash balance are reconciled. Possible enum values:automaticmanual
cash_balance.settings.using_merchant_default(boolean) A flag to indicate if reconciliation mode returned is the user’s default or is specific to this customer cash balance
created(timestamp) Time at which the object was created. Measured in seconds since the Unix epoch.currency(string, nullable) Three-letter ISO code for the currency the customer can be charged in for recurring billing purposes.customer_account(string, nullable) The ID of an Account representing a customer. You can use this ID with any v1 API that accepts a customer_account parameter.default_source(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) ID of the default payment source for the customer.If you use payment methods created through the PaymentMethods API, see the invoice_settings.default_payment_method field instead.
delinquent(boolean, nullable) Tracks the most recent state change on any invoice belonging to the customer. Paying an invoice or marking it uncollectible via the API will set this field to false. An automatic payment failure or passing theinvoice.due_datewill set this field totrue.If an invoice becomes uncollectible by dunning,
delinquentdoesn’t reset tofalse.If you care whether the customer has paid their most recent subscription invoice, use
subscription.statusinstead. Paying or marking uncollectible any customer invoice regardless of whether it is the latest invoice for a subscription will always set this field tofalse.description(string, nullable) An arbitrary string attached to the object. Often useful for displaying to users.discount(object, nullable) Describes the current discount active on the customer, if there is one.discount.id(string) The ID of the discount object. Discounts cannot be fetched by ID. Useexpand[]=discountsin API calls to expand discount IDs in an array.discount.object(string) String representing the object’s type. Objects of the same type share the same value.discount.checkout_session(string, nullable) The Checkout session that this coupon is applied to, if it is applied to a particular session in payment mode. Will not be present for subscription mode.discount.customer(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The ID of the customer associated with this discount.discount.customer_account(string, nullable) The ID of the account representing the customer associated with this discount.discount.end(timestamp, nullable) If the coupon has a duration ofrepeating, the date that this discount will end. If the coupon has a duration ofonceorforever, this attribute will be null.discount.invoice(string, nullable) The invoice that the discount’s coupon was applied to, if it was applied directly to a particular invoice.discount.invoice_item(string, nullable) The invoice itemid(or invoice line itemidfor invoice line items of type=‘subscription’) that the discount’s coupon was applied to, if it was applied directly to a particular invoice item or invoice line item.discount.promotion_code(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The promotion code applied to create this discount.discount.source(object) The source of the discount.discount.source.coupon(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The coupon that was redeemed to create this discount.discount.source.type(enum) The source type of the discount. Possible enum values:couponCoupon source type
discount.start(timestamp) Date that the coupon was applied.discount.subscription(string, nullable) The subscription that this coupon is applied to, if it is applied to a particular subscription.discount.subscription_item(string, nullable) The subscription item that this coupon is applied to, if it is applied to a particular subscription item.
email(string, nullable) The customer’s email address.individual_name(string, nullable) The customer’s individual name.The maximum length is 150 characters.
invoice_credit_balance(object, expandable (can be expanded into an object with theexpandrequest parameter)) The current multi-currency balances, if any, that’s stored on the customer. If positive in a currency, the customer has a credit to apply to their next invoice denominated in that currency. If negative, the customer has an amount owed that’s added to their next invoice denominated in that currency. These balances don’t apply to unpaid invoices. They solely track amounts that Stripe hasn’t successfully applied to any invoice. Stripe only applies a balance in a specific currency to an invoice after that invoice (which is in the same currency) finalizes.invoice_prefix(string, nullable) The prefix for the customer used to generate unique invoice numbers.invoice_settings(object) The customer’s default invoice settings.invoice_settings.custom_fields(array of objects, nullable) Default custom fields to be displayed on invoices for this customer.invoice_settings.custom_fields.name(string) The name of the custom field.invoice_settings.custom_fields.value(string) The value of the custom field.
invoice_settings.default_payment_method(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) ID of a payment method that’s attached to the customer, to be used as the customer’s default payment method for subscriptions and invoices.invoice_settings.footer(string, nullable) Default footer to be displayed on invoices for this customer.invoice_settings.rendering_options(object, nullable) Default options for invoice PDF rendering for this customer.invoice_settings.rendering_options.amount_tax_display(string, nullable) How line-item prices and amounts will be displayed with respect to tax on invoice PDFs.invoice_settings.rendering_options.template(string, nullable) ID of the invoice rendering template to be used for this customer’s invoices. If set, the template will be used on all invoices for this customer unless a template is set directly on the invoice.
livemode(boolean) If the object exists in live mode, the value istrue. If the object exists in test mode, the value isfalse.metadata(object) Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.name(string, nullable) The customer’s full name or business name.next_invoice_sequence(integer, nullable) The suffix of the customer’s next invoice number (for example, 0001). When the account uses account level sequencing, this parameter is ignored in API requests and the field omitted in API responses.phone(string, nullable) The customer’s phone number.preferred_locales(array of strings, nullable) The customer’s preferred locales (languages), ordered by preference.shipping(object, nullable) Mailing and shipping address for the customer. Appears on invoices emailed to this customer.shipping.address(object) Customer shipping address.shipping.address.city(string, nullable) City, district, suburb, town, or village.shipping.address.country(string, nullable) Two-letter country code (ISO 3166-1 alpha-2).shipping.address.line1(string, nullable) Address line 1, such as the street, PO Box, or company name.shipping.address.line2(string, nullable) Address line 2, such as the apartment, suite, unit, or building.shipping.address.postal_code(string, nullable) ZIP or postal code.shipping.address.state(string, nullable) State, county, province, or region (ISO 3166-2).
shipping.name(string) Customer name.shipping.phone(string, nullable) Customer phone (including extension).
sources(object, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The customer’s payment sources, if any.sources.object(string) String representing the object’s type. Objects of the same type share the same value. Always has the valuelist.sources.data(array of objects) Details about each object.sources.data.id(string) Unique identifier for the object.sources.data.object(string) String representing the object’s type. Objects of the same type share the same value.sources.data.account(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The account this bank account belongs to. Only applicable on Accounts (not customers or recipients) This property is only available when returned as an External Account where controller.is_controller istrue.sources.data.account_holder_name(string, nullable) The name of the person or business that owns the bank account.sources.data.account_holder_type(string, nullable) The type of entity that holds the account. This can be eitherindividualorcompany.sources.data.account_type(string, nullable) The bank account type. This can only becheckingorsavingsin most countries. In Japan, this can only befutsuortoza.sources.data.available_payout_methods(array of enums, nullable) A set of available payout methods for this bank account. Only values from this set should be passed as themethodwhen creating a payout. Possible enum values:instantstandard
sources.data.bank_name(string, nullable) Name of the bank associated with the routing number (e.g.,WELLS FARGO).sources.data.country(string) Two-letter ISO code representing the country the bank account is located in.sources.data.currency(enum) Three-letter ISO code for the currency paid out to the bank account.sources.data.customer(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The ID of the customer that the bank account is associated with.sources.data.fingerprint(string, nullable) Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same.sources.data.last4(string) The last four digits of the bank account number.sources.data.metadata(object, nullable) Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.sources.data.routing_number(string, nullable) The routing transit number for the bank account.sources.data.status(string) For bank accounts, possible values arenew,validated,verified,verification_failed,tokenized_account_number_deactivatedorerrored. A bank account that hasn’t had any activity or validation performed isnew. If Stripe can determine that the bank account exists, its status will bevalidated. Note that there often isn’t enough information to know (e.g., for smaller credit unions), and the validation is not always run. If customer bank account verification has succeeded, the bank account status will beverified. If the verification failed for any reason, such as microdeposit failure, the status will beverification_failed. If the status istokenized_account_number_deactivated, the account utilizes a tokenized account number which has been deactivated due to expiration or revocation. This account will need to be reverified to continue using it for money movement. If a payout sent to this bank account fails, we’ll set the status toerroredand will not continue to send scheduled payouts until the bank details are updated.For external accounts, possible values are
new,errored,verification_failed, andtokenized_account_number_deactivated. If a payout fails, the status is set toerroredand scheduled payouts are stopped until account details are updated. In the US and India, if we can’t verify the owner of the bank account, we’ll set the status toverification_failed. Other validations aren’t run against external accounts because they’re only used for payouts. This means the other statuses don’t apply.
sources.has_more(boolean) True if this list has another page of items after this one that can be fetched.sources.url(string) The URL where this list can be accessed.
subscriptions(object, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The customer’s current subscriptions, if any.subscriptions.object(string) String representing the object’s type. Objects of the same type share the same value. Always has the valuelist.subscriptions.data(array of objects) Details about each object.subscriptions.data.id(string) Unique identifier for the object.subscriptions.data.object(string) String representing the object’s type. Objects of the same type share the same value.subscriptions.data.application(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) ID of the Connect Application that created the subscription.subscriptions.data.application_fee_percent(float, nullable) A non-negative decimal between 0 and 100, with at most two decimal places. This represents the percentage of the subscription invoice total that will be transferred to the application owner’s Stripe account.subscriptions.data.automatic_tax(object) Automatic tax settings for this subscription.subscriptions.data.automatic_tax.disabled_reason(enum, nullable) If Stripe disabled automatic tax, this enum describes why. Possible enum values:requires_location_inputsStripe’s systems automatically turned off Tax for this subscription when finalizing one of its invoices with a missing or incomplete location for your customer.
subscriptions.data.automatic_tax.enabled(boolean) Whether Stripe automatically computes tax on this subscription.subscriptions.data.automatic_tax.liability(object, nullable) The account that’s liable for tax. If set, the business address and tax registrations required to perform the tax calculation are loaded from this account. The tax transaction is returned in the report of the connected account.subscriptions.data.automatic_tax.liability.account(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The connected account being referenced whentypeisaccount.subscriptions.data.automatic_tax.liability.type(enum) Type of the account referenced. Possible enum values:accountIndicates that the account being referenced is a connected account which is different from the account making the API request but related to it.selfIndicates that the account being referenced is the account making the API request.
subscriptions.data.billing_cycle_anchor(timestamp) The reference point that aligns future billing cycle dates. It sets the day of week forweekintervals, the day of month formonthandyearintervals, and the month of year foryearintervals. The timestamp is in UTC format.subscriptions.data.billing_cycle_anchor_config(object, nullable) The fixed values used to calculate thebilling_cycle_anchor.subscriptions.data.billing_cycle_anchor_config.day_of_month(integer) The day of the month of the billing_cycle_anchor.subscriptions.data.billing_cycle_anchor_config.hour(integer, nullable) The hour of the day of the billing_cycle_anchor.subscriptions.data.billing_cycle_anchor_config.minute(integer, nullable) The minute of the hour of the billing_cycle_anchor.subscriptions.data.billing_cycle_anchor_config.month(integer, nullable) The month to start full cycle billing periods.subscriptions.data.billing_cycle_anchor_config.second(integer, nullable) The second of the minute of the billing_cycle_anchor.
subscriptions.data.billing_mode(object) Controls how prorations and invoices for subscriptions are calculated and orchestrated.subscriptions.data.billing_mode.flexible(object, nullable) Configure behavior for flexible billing modesubscriptions.data.billing_mode.flexible.proration_discounts(enum) Controls how invoices and invoice items display proration amounts and discount amounts. Possible enum values:includedAmounts are net of discounts, and discount amounts are zero.itemizedAmounts are gross of discounts, and discount amounts are accurate.
subscriptions.data.billing_mode.type(enum) Controls how prorations and invoices for subscriptions are calculated and orchestrated. Possible enum values:classicCalculations for subscriptions and invoices are based on legacy defaults.flexibleSupports more flexible calculation and orchestration options for subscriptions and invoices.
subscriptions.data.billing_mode.updated_at(timestamp, nullable) Details on when the current billing_mode was adopted.
subscriptions.data.billing_thresholds(object, nullable) Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing periodsubscriptions.data.billing_thresholds.amount_gte(integer, nullable) Monetary threshold that triggers the subscription to create an invoicesubscriptions.data.billing_thresholds.reset_billing_cycle_anchor(boolean, nullable) Indicates if thebilling_cycle_anchorshould be reset when a threshold is reached. If true,billing_cycle_anchorwill be updated to the date/time the threshold was last reached; otherwise, the value will remain unchanged. This value may not betrueif the subscription contains items with plans that haveaggregate_usage=last_ever.
subscriptions.data.cancel_at(timestamp, nullable) A date in the future at which the subscription will automatically get canceledsubscriptions.data.cancel_at_period_end(boolean) Whether this subscription will (ifstatus=active) or did (ifstatus=canceled) cancel at the end of the current billing period.subscriptions.data.canceled_at(timestamp, nullable) If the subscription has been canceled, the date of that cancellation. If the subscription was canceled withcancel_at_period_end,canceled_atwill reflect the time of the most recent update request, not the end of the subscription period when the subscription is automatically moved to a canceled state.subscriptions.data.cancellation_details(object, nullable) Details about why this subscription was cancelledsubscriptions.data.cancellation_details.comment(string, nullable) Additional comments about why the user canceled the subscription, if the subscription was canceled explicitly by the user.subscriptions.data.cancellation_details.feedback(enum, nullable) The customer submitted reason for why they canceled, if the subscription was canceled explicitly by the user. Possible enum values:customer_serviceCustomer service was less than expectedlow_qualityQuality was less than expectedmissing_featuresSome features are missingotherOther reasonswitched_serviceI’m switching to a different servicetoo_complexEase of use was less than expectedtoo_expensiveIt’s too expensiveunusedI don’t use the service enough
subscriptions.data.cancellation_details.reason(enum, nullable) Why this subscription was canceled. Possible enum values:canceled_by_retention_policyCanceled because our retention policy automatically expires subscriptions withlivemode: false.cancellation_requestedCanceled explicitly through the API or Dashboard.payment_disputedCanceled automatically after a dispute was opened, according to your billing settings.payment_failedCanceled automatically after payment failure, according to your billing settings.
subscriptions.data.collection_method(enum) Eithercharge_automatically, orsend_invoice. When charging automatically, Stripe will attempt to pay this subscription at the end of the cycle using the default source attached to the customer. When sending an invoice, Stripe will email your customer an invoice with payment instructions and mark the subscription asactive. Possible enum values:charge_automaticallysend_invoice
subscriptions.data.created(timestamp) Time at which the object was created. Measured in seconds since the Unix epoch.subscriptions.data.currency(enum) Three-letter ISO currency code, in lowercase. Must be a supported currency.subscriptions.data.customer(string, expandable (can be expanded into an object with theexpandrequest parameter)) ID of the customer who owns the subscription.subscriptions.data.customer_account(string, nullable) ID of the account representing the customer who owns the subscription.subscriptions.data.days_until_due(integer, nullable) Number of days a customer has to pay invoices generated by this subscription. This value will benullfor subscriptions wherecollection_method=charge_automatically.subscriptions.data.default_payment_method(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) ID of the default payment method for the subscription. It must belong to the customer associated with the subscription. This takes precedence overdefault_source. If neither are set, invoices will use the customer’s invoice_settings.default_payment_method or default_source.subscriptions.data.default_source(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) ID of the default payment source for the subscription. It must belong to the customer associated with the subscription and be in a chargeable state. Ifdefault_payment_methodis also set,default_payment_methodwill take precedence. If neither are set, invoices will use the customer’s invoice_settings.default_payment_method or default_source.subscriptions.data.default_tax_rates(array of objects, nullable) The tax rates that will apply to any subscription item that does not havetax_ratesset. Invoices created will have theirdefault_tax_ratespopulated from the subscription.subscriptions.data.default_tax_rates.id(string) Unique identifier for the object.subscriptions.data.default_tax_rates.object(string) String representing the object’s type. Objects of the same type share the same value.subscriptions.data.default_tax_rates.active(boolean) Defaults totrue. When set tofalse, this tax rate cannot be used with new applications or Checkout Sessions, but will still work for subscriptions and invoices that already have it set.subscriptions.data.default_tax_rates.country(string, nullable) Two-letter country code (ISO 3166-1 alpha-2).subscriptions.data.default_tax_rates.created(timestamp) Time at which the object was created. Measured in seconds since the Unix epoch.subscriptions.data.default_tax_rates.description(string, nullable) An arbitrary string attached to the tax rate for your internal use only. It will not be visible to your customers.subscriptions.data.default_tax_rates.display_name(string) The display name of the tax rates as it will appear to your customer on their receipt email, PDF, and the hosted invoice page.subscriptions.data.default_tax_rates.effective_percentage(float, nullable) Actual/effective tax rate percentage out of 100. For tax calculations with automatic_tax[enabled]=true, this percentage reflects the rate actually used to calculate tax based on the product’s taxability and whether the user is registered to collect taxes in the corresponding jurisdiction.subscriptions.data.default_tax_rates.flat_amount(object, nullable) The amount of the tax rate when therate_typeisflat_amount. Tax rates withrate_typepercentagecan vary based on the transaction, resulting in this field beingnull. This field exposes the amount and currency of the flat tax rate.subscriptions.data.default_tax_rates.flat_amount.amount(integer) Amount of the tax when therate_typeisflat_amount. This positive integer represents how much to charge in the smallest currency unit (e.g., 100 cents to charge $1.00 or 100 to charge ¥100, a zero-decimal currency). The amount value supports up to eight digits (e.g., a value of 99999999 for a USD charge of $999,999.99).subscriptions.data.default_tax_rates.flat_amount.currency(string) Three-letter ISO currency code, in lowercase.
subscriptions.data.default_tax_rates.inclusive(boolean) This specifies if the tax rate is inclusive or exclusive.subscriptions.data.default_tax_rates.jurisdiction(string, nullable) The jurisdiction for the tax rate. You can use this label field for tax reporting purposes. It also appears on your customer’s invoice.subscriptions.data.default_tax_rates.jurisdiction_level(enum, nullable) The level of the jurisdiction that imposes this tax rate. Will benullfor manually defined tax rates. Possible enum values:citycountrycountydistrictmultiplestate
subscriptions.data.default_tax_rates.livemode(boolean) If the object exists in live mode, the value istrue. If the object exists in test mode, the value isfalse.subscriptions.data.default_tax_rates.metadata(object, nullable) Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.subscriptions.data.default_tax_rates.percentage(float) Tax rate percentage out of 100. For tax calculations with automatic_tax[enabled]=true, this percentage includes the statutory tax rate of non-taxable jurisdictions.subscriptions.data.default_tax_rates.rate_type(enum, nullable) Indicates the type of tax rate applied to the taxable amount. This value can benullwhen no tax applies to the location. This field is only present for TaxRates created by Stripe Tax. Possible enum values:flat_amountA fixed amount applied as tax, regardless of the taxable amount, such as a retail delivery fee.percentageA tax rate expressed as a percentage of the taxable amount, such as the sales tax rate in California.
subscriptions.data.default_tax_rates.state(string, nullable) ISO 3166-2 subdivision code, without country prefix. For example, “NY” for New York, United States.subscriptions.data.default_tax_rates.tax_type(enum, nullable) The high-level tax type, such asvatorsales_tax. Possible enum values:admissions_taxAdmissions Taxamusement_taxAmusement Taxattendance_taxAttendance Taxcommunications_taxCommunications Taxentertainment_taxEntertainment Taxgross_receipts_taxGross Receipts TaxgstGoods and Services Taxhospitality_taxHospitality TaxhstHarmonized Sales TaxigstIntegrated Goods and Services TaxjctJapanese Consumption Taxlease_taxChicago Lease Taxluxury_taxLuxury TaxpstProvincial Sales TaxqstQuebec Sales Taxresort_taxResort Taxretail_delivery_feeRetail Delivery FeerstRetail Sales Taxsales_taxSales Taxservice_taxService Taxtourism_taxTourism TaxvatValue-Added Tax
subscriptions.data.description(string, nullable) The subscription’s description, meant to be displayable to the customer. Use this field to optionally store an explanation of the subscription for rendering in Stripe surfaces and certain local payment methods UIs.The maximum length is 500 characters.
subscriptions.data.discounts(array of strings, expandable (can be expanded into an object with theexpandrequest parameter)) The discounts applied to the subscription. Subscription item discounts are applied before subscription discounts. Useexpand[]=discountsto expand each discount.subscriptions.data.ended_at(timestamp, nullable) If the subscription has ended, the date the subscription ended.subscriptions.data.invoice_settings(object) All invoices will be billed using the specified settings.subscriptions.data.invoice_settings.account_tax_ids(array of strings, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The account tax IDs associated with the subscription. Will be set on invoices generated by the subscription.subscriptions.data.invoice_settings.issuer(object) The connected account that issues the invoice. The invoice is presented with the branding and support information of the specified account.subscriptions.data.invoice_settings.issuer.account(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The connected account being referenced whentypeisaccount.subscriptions.data.invoice_settings.issuer.type(enum) Type of the account referenced. Possible enum values:accountIndicates that the account being referenced is a connected account which is different from the account making the API request but related to it.selfIndicates that the account being referenced is the account making the API request.
subscriptions.data.items(object) List of subscription items, each with an attached price.subscriptions.data.items.object(string) String representing the object’s type. Objects of the same type share the same value. Always has the valuelist.subscriptions.data.items.data(array of objects) Details about each object.subscriptions.data.items.data.id(string) Unique identifier for the object.subscriptions.data.items.data.object(string) String representing the object’s type. Objects of the same type share the same value.subscriptions.data.items.data.billing_thresholds(object, nullable) Define thresholds at which an invoice will be sent, and the related subscription advanced to a new billing periodsubscriptions.data.items.data.billing_thresholds.usage_gte(integer, nullable) Usage threshold that triggers the subscription to create an invoice
subscriptions.data.items.data.created(integer) Time at which the object was created. Measured in seconds since the Unix epoch.subscriptions.data.items.data.current_period_end(timestamp) The end time of this subscription item’s current billing period.subscriptions.data.items.data.current_period_start(timestamp) The start time of this subscription item’s current billing period.subscriptions.data.items.data.discounts(array of strings, expandable (can be expanded into an object with theexpandrequest parameter)) The discounts applied to the subscription item. Subscription item discounts are applied before subscription discounts. Useexpand[]=discountsto expand each discount.subscriptions.data.items.data.metadata(object) Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.subscriptions.data.items.data.price(object) The price the customer is subscribed to.subscriptions.data.items.data.price.id(string) Unique identifier for the object.subscriptions.data.items.data.price.object(string) String representing the object’s type. Objects of the same type share the same value.subscriptions.data.items.data.price.active(boolean) Whether the price can be used for new purchases.subscriptions.data.items.data.price.billing_scheme(enum) Describes how to compute the price per period. Eitherper_unitortiered.per_unitindicates that the fixed amount (specified inunit_amountorunit_amount_decimal) will be charged per unit inquantity(for prices withusage_type=licensed), or per unit of total usage (for prices withusage_type=metered).tieredindicates that the unit pricing will be computed using a tiering strategy as defined using thetiersandtiers_modeattributes. Possible enum values:per_unittiered
subscriptions.data.items.data.price.created(timestamp) Time at which the object was created. Measured in seconds since the Unix epoch.subscriptions.data.items.data.price.currency(enum) Three-letter ISO currency code, in lowercase. Must be a supported currency.subscriptions.data.items.data.price.currency_options(object, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) Prices defined in each available currency option. Each key must be a three-letter ISO currency code and a supported currency.subscriptions.data.items.data.price.currency_options.<currency>.custom_unit_amount(object, nullable) When set, provides configuration for the amount to be adjusted by the customer during Checkout Sessions and Payment Links.subscriptions.data.items.data.price.currency_options.<currency>.custom_unit_amount.maximum(integer, nullable) The maximum unit amount the customer can specify for this item.subscriptions.data.items.data.price.currency_options.<currency>.custom_unit_amount.minimum(integer, nullable) The minimum unit amount the customer can specify for this item. Must be at least the minimum charge amount.subscriptions.data.items.data.price.currency_options.<currency>.custom_unit_amount.preset(integer, nullable) The starting unit amount which can be updated by the customer.
subscriptions.data.items.data.price.currency_options.<currency>.tax_behavior(enum, nullable) Only required if a default tax behavior) was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One ofinclusive,exclusive, orunspecified. Once specified as eitherinclusiveorexclusive, it cannot be changed. Possible enum values:exclusiveinclusiveunspecified
subscriptions.data.items.data.price.currency_options.<currency>.tiers(array of objects, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) Each element represents a pricing tier. This parameter requiresbilling_schemeto be set totiered. See also the documentation forbilling_scheme.subscriptions.data.items.data.price.currency_options.<currency>.tiers.flat_amount(integer, nullable) Price for the entire tier.subscriptions.data.items.data.price.currency_options.<currency>.tiers.flat_amount_decimal(decimal string, nullable) Same asflat_amount, but contains a decimal value with at most 12 decimal places.subscriptions.data.items.data.price.currency_options.<currency>.tiers.unit_amount(integer, nullable) Per unit price for units relevant to the tier.subscriptions.data.items.data.price.currency_options.<currency>.tiers.unit_amount_decimal(decimal string, nullable) Same asunit_amount, but contains a decimal value with at most 12 decimal places.subscriptions.data.items.data.price.currency_options.<currency>.tiers.up_to(integer, nullable) Up to and including to this quantity will be contained in the tier.
subscriptions.data.items.data.price.currency_options.<currency>.unit_amount(integer, nullable) The unit amount in the smallest currency unit to be charged, represented as a whole integer if possible. Only set ifbilling_scheme=per_unit.subscriptions.data.items.data.price.currency_options.<currency>.unit_amount_decimal(decimal string, nullable) The unit amount in the smallest currency unit to be charged, represented as a decimal string with at most 12 decimal places. Only set ifbilling_scheme=per_unit.
subscriptions.data.items.data.price.custom_unit_amount(object, nullable) When set, provides configuration for the amount to be adjusted by the customer during Checkout Sessions and Payment Links.subscriptions.data.items.data.price.custom_unit_amount.maximum(integer, nullable) The maximum unit amount the customer can specify for this item.subscriptions.data.items.data.price.custom_unit_amount.minimum(integer, nullable) The minimum unit amount the customer can specify for this item. Must be at least the minimum charge amount.subscriptions.data.items.data.price.custom_unit_amount.preset(integer, nullable) The starting unit amount which can be updated by the customer.
subscriptions.data.items.data.price.livemode(boolean) If the object exists in live mode, the value istrue. If the object exists in test mode, the value isfalse.subscriptions.data.items.data.price.lookup_key(string, nullable) A lookup key used to retrieve prices dynamically from a static string. This may be up to 200 characters.subscriptions.data.items.data.price.metadata(object) Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.subscriptions.data.items.data.price.nickname(string, nullable) A brief description of the price, hidden from customers.subscriptions.data.items.data.price.product(string, expandable (can be expanded into an object with theexpandrequest parameter)) The ID of the product this price is associated with.subscriptions.data.items.data.price.recurring(object, nullable) The recurring components of a price such asintervalandusage_type.subscriptions.data.items.data.price.recurring.interval(enum) The frequency at which a subscription is billed. One ofday,week,monthoryear.subscriptions.data.items.data.price.recurring.interval_count(integer) The number of intervals (specified in theintervalattribute) between subscription billings. For example,interval=monthandinterval_count=3bills every 3 months.subscriptions.data.items.data.price.recurring.meter(string, nullable) The meter tracking the usage of a metered pricesubscriptions.data.items.data.price.recurring.usage_type(enum) Configures how the quantity per period should be determined. Can be eithermeteredorlicensed.licensedautomatically bills thequantityset when adding it to a subscription.meteredaggregates the total usage based on usage records. Defaults tolicensed.
subscriptions.data.items.data.price.tax_behavior(enum, nullable) Only required if a default tax behavior) was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One ofinclusive,exclusive, orunspecified. Once specified as eitherinclusiveorexclusive, it cannot be changed. Possible enum values:exclusiveinclusiveunspecified
subscriptions.data.items.data.price.tiers(array of objects, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) Each element represents a pricing tier. This parameter requiresbilling_schemeto be set totiered. See also the documentation forbilling_scheme.subscriptions.data.items.data.price.tiers.flat_amount(integer, nullable) Price for the entire tier.subscriptions.data.items.data.price.tiers.flat_amount_decimal(decimal string, nullable) Same asflat_amount, but contains a decimal value with at most 12 decimal places.subscriptions.data.items.data.price.tiers.unit_amount(integer, nullable) Per unit price for units relevant to the tier.subscriptions.data.items.data.price.tiers.unit_amount_decimal(decimal string, nullable) Same asunit_amount, but contains a decimal value with at most 12 decimal places.subscriptions.data.items.data.price.tiers.up_to(integer, nullable) Up to and including to this quantity will be contained in the tier.
subscriptions.data.items.data.price.tiers_mode(enum, nullable) Defines if the tiering price should begraduatedorvolumebased. Involume-based tiering, the maximum quantity within a period determines the per unit price. Ingraduatedtiering, pricing can change as the quantity grows. Possible enum values:graduatedvolume
subscriptions.data.items.data.price.transform_quantity(object, nullable) Apply a transformation to the reported usage or set quantity before computing the amount billed. Cannot be combined withtiers.subscriptions.data.items.data.price.transform_quantity.divide_by(integer) Divide usage by this number.subscriptions.data.items.data.price.transform_quantity.round(enum) After division, either round the resultupordown.
subscriptions.data.items.data.price.type(enum) One ofone_timeorrecurringdepending on whether the price is for a one-time purchase or a recurring (subscription) purchase. Possible enum values:one_timerecurring
subscriptions.data.items.data.price.unit_amount(integer, nullable) The unit amount in the smallest currency unit to be charged, represented as a whole integer if possible. Only set ifbilling_scheme=per_unit.subscriptions.data.items.data.price.unit_amount_decimal(decimal string, nullable) The unit amount in the smallest currency unit to be charged, represented as a decimal string with at most 12 decimal places. Only set ifbilling_scheme=per_unit.
subscriptions.data.items.data.quantity(integer, nullable) The quantity of the plan to which the customer should be subscribed.subscriptions.data.items.data.subscription(string) Thesubscriptionthissubscription_itembelongs to.subscriptions.data.items.data.tax_rates(array of objects, nullable) The tax rates which apply to thissubscription_item. When set, thedefault_tax_rateson the subscription do not apply to thissubscription_item.subscriptions.data.items.data.tax_rates.id(string) Unique identifier for the object.subscriptions.data.items.data.tax_rates.object(string) String representing the object’s type. Objects of the same type share the same value.subscriptions.data.items.data.tax_rates.active(boolean) Defaults totrue. When set tofalse, this tax rate cannot be used with new applications or Checkout Sessions, but will still work for subscriptions and invoices that already have it set.subscriptions.data.items.data.tax_rates.country(string, nullable) Two-letter country code (ISO 3166-1 alpha-2).subscriptions.data.items.data.tax_rates.created(timestamp) Time at which the object was created. Measured in seconds since the Unix epoch.subscriptions.data.items.data.tax_rates.description(string, nullable) An arbitrary string attached to the tax rate for your internal use only. It will not be visible to your customers.subscriptions.data.items.data.tax_rates.display_name(string) The display name of the tax rates as it will appear to your customer on their receipt email, PDF, and the hosted invoice page.subscriptions.data.items.data.tax_rates.effective_percentage(float, nullable) Actual/effective tax rate percentage out of 100. For tax calculations with automatic_tax[enabled]=true, this percentage reflects the rate actually used to calculate tax based on the product’s taxability and whether the user is registered to collect taxes in the corresponding jurisdiction.subscriptions.data.items.data.tax_rates.flat_amount(object, nullable) The amount of the tax rate when therate_typeisflat_amount. Tax rates withrate_typepercentagecan vary based on the transaction, resulting in this field beingnull. This field exposes the amount and currency of the flat tax rate.subscriptions.data.items.data.tax_rates.flat_amount.amount(integer) Amount of the tax when therate_typeisflat_amount. This positive integer represents how much to charge in the smallest currency unit (e.g., 100 cents to charge $1.00 or 100 to charge ¥100, a zero-decimal currency). The amount value supports up to eight digits (e.g., a value of 99999999 for a USD charge of $999,999.99).subscriptions.data.items.data.tax_rates.flat_amount.currency(string) Three-letter ISO currency code, in lowercase.
subscriptions.data.items.data.tax_rates.inclusive(boolean) This specifies if the tax rate is inclusive or exclusive.subscriptions.data.items.data.tax_rates.jurisdiction(string, nullable) The jurisdiction for the tax rate. You can use this label field for tax reporting purposes. It also appears on your customer’s invoice.subscriptions.data.items.data.tax_rates.jurisdiction_level(enum, nullable) The level of the jurisdiction that imposes this tax rate. Will benullfor manually defined tax rates. Possible enum values:citycountrycountydistrictmultiplestate
subscriptions.data.items.data.tax_rates.livemode(boolean) If the object exists in live mode, the value istrue. If the object exists in test mode, the value isfalse.subscriptions.data.items.data.tax_rates.metadata(object, nullable) Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.subscriptions.data.items.data.tax_rates.percentage(float) Tax rate percentage out of 100. For tax calculations with automatic_tax[enabled]=true, this percentage includes the statutory tax rate of non-taxable jurisdictions.subscriptions.data.items.data.tax_rates.rate_type(enum, nullable) Indicates the type of tax rate applied to the taxable amount. This value can benullwhen no tax applies to the location. This field is only present for TaxRates created by Stripe Tax. Possible enum values:flat_amountA fixed amount applied as tax, regardless of the taxable amount, such as a retail delivery fee.percentageA tax rate expressed as a percentage of the taxable amount, such as the sales tax rate in California.
subscriptions.data.items.data.tax_rates.state(string, nullable) ISO 3166-2 subdivision code, without country prefix. For example, “NY” for New York, United States.subscriptions.data.items.data.tax_rates.tax_type(enum, nullable) The high-level tax type, such asvatorsales_tax. Possible enum values:admissions_taxAdmissions Taxamusement_taxAmusement Taxattendance_taxAttendance Taxcommunications_taxCommunications Taxentertainment_taxEntertainment Taxgross_receipts_taxGross Receipts TaxgstGoods and Services Taxhospitality_taxHospitality TaxhstHarmonized Sales TaxigstIntegrated Goods and Services TaxjctJapanese Consumption Taxlease_taxChicago Lease Taxluxury_taxLuxury TaxpstProvincial Sales TaxqstQuebec Sales Taxresort_taxResort Taxretail_delivery_feeRetail Delivery FeerstRetail Sales Taxsales_taxSales Taxservice_taxService Taxtourism_taxTourism TaxvatValue-Added Tax
subscriptions.data.items.has_more(boolean) True if this list has another page of items after this one that can be fetched.subscriptions.data.items.url(string) The URL where this list can be accessed.
subscriptions.data.latest_invoice(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The most recent invoice this subscription has generated over its lifecycle (for example, when it cycles or is updated).subscriptions.data.livemode(boolean) If the object exists in live mode, the value istrue. If the object exists in test mode, the value isfalse.subscriptions.data.managed_payments(object, nullable) Settings for Managed Payments for this Subscription and resulting Invoices and PaymentIntents.subscriptions.data.managed_payments.enabled(boolean) Set totrueto enable Managed Payments, Stripe’s merchant of record solution, for this session.
subscriptions.data.metadata(object) Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.subscriptions.data.next_pending_invoice_item_invoice(timestamp, nullable) Specifies the approximate timestamp on which any pending invoice items will be billed according to the schedule provided atpending_invoice_item_interval.subscriptions.data.on_behalf_of(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The account (if any) the charge was made on behalf of for charges associated with this subscription. See the Connect documentation for details.subscriptions.data.pause_collection(object, nullable) If specified, payment collection for this subscription will be paused. Note that the subscription status will be unchanged and will not be updated topaused. Learn more about pausing collection.subscriptions.data.pause_collection.behavior(enum) The payment collection behavior for this subscription while paused. Possible enum values:keep_as_draftKeep all invoices asdraftwhile collection is paused.mark_uncollectibleMark all invoices asuncollectiblewhile collection is paused.voidVoid all invoices while collection is paused.
subscriptions.data.pause_collection.resumes_at(timestamp, nullable) The time after which the subscription will resume collecting payments.
subscriptions.data.payment_settings(object, nullable) Payment settings passed on to invoices created by the subscription.subscriptions.data.payment_settings.payment_method_options(object, nullable) Payment-method-specific configuration to provide to invoices created by the subscription.subscriptions.data.payment_settings.payment_method_options.acss_debit(object, nullable) This sub-hash contains details about the Canadian pre-authorized debit payment method options to pass to invoices created by the subscription.subscriptions.data.payment_settings.payment_method_options.acss_debit.mandate_options(object, nullable) Additional fields for Mandate creationsubscriptions.data.payment_settings.payment_method_options.acss_debit.mandate_options.transaction_type(enum, nullable) Transaction type of the mandate. Possible enum values:businessTransactions are made for business reasonspersonalTransactions are made for personal reasons
subscriptions.data.payment_settings.payment_method_options.acss_debit.verification_method(enum, nullable) Bank account verification method. The default value isautomatic. Possible enum values:automaticInstant verification with fallback to microdeposits.instantInstant verification.microdepositsVerification using microdeposits.
subscriptions.data.payment_settings.payment_method_options.bancontact(object, nullable) This sub-hash contains details about the Bancontact payment method options to pass to invoices created by the subscription.subscriptions.data.payment_settings.payment_method_options.bancontact.preferred_language(enum) Preferred language of the Bancontact authorization page that the customer is redirected to. Possible enum values:deGermanenEnglishfrFrenchnlDutch
subscriptions.data.payment_settings.payment_method_options.card(object, nullable) This sub-hash contains details about the Card payment method options to pass to invoices created by the subscription.subscriptions.data.payment_settings.payment_method_options.card.mandate_options(object, nullable) Configuration options for setting up an eMandate for cards issued in India.subscriptions.data.payment_settings.payment_method_options.card.mandate_options.amount(integer, nullable) Amount to be charged for future payments, specified in the presentment currency.subscriptions.data.payment_settings.payment_method_options.card.mandate_options.amount_type(enum, nullable) One offixedormaximum. Iffixed, theamountparam refers to the exact amount to be charged in future payments. Ifmaximum, the amount charged can be up to the value passed for theamountparam. Possible enum values:fixedIffixed, theamountparam refers to the exact amount to be charged in future payments.maximumIfmaximum, the amount charged can be up to the value passed for theamountparam.
subscriptions.data.payment_settings.payment_method_options.card.mandate_options.description(string, nullable) A description of the mandate or subscription that is meant to be displayed to the customer.The maximum length is 200 characters.
subscriptions.data.payment_settings.payment_method_options.card.network(enum, nullable) Selected network to process this Subscription on. Depends on the available networks of the card attached to the Subscription. Can be only set confirm-time. Possible enum values:amexcartes_bancairesdinersdiscovereftpos_augirocardinteracjcblinkmastercardunionpayunknownvisa
subscriptions.data.payment_settings.payment_method_options.card.request_three_d_secure(enum, nullable) We strongly recommend that you rely on our SCA Engine to automatically prompt your customers for authentication based on risk level and other requirements. However, if you wish to request 3D Secure based on logic from your own fraud engine, provide this option. Read our guide on manually requesting 3D Secure for more information on how this configuration interacts with Radar and our SCA Engine. Possible enum values:anyUseanyto manually request 3DS with a preference for africtionlessflow, increasing the likelihood of the authentication being completed without any additional input from the customer. 3DS will always be attempted if it is supported for the card, but Stripe can’t guarantee your preference because the issuer determines the ultimate authentication flow. To learn more about 3DS flows, read our guide.automatic(Default) Our SCA Engine automatically prompts your customers for authentication based on risk level and other requirements.challengeUsechallengeto request 3DS with a preference for achallengeflow, where the customer must respond to a prompt for active authentication. Stripe can’t guarantee your preference because the issuer determines the ultimate authentication flow. To learn more about 3DS flows, read our guide.
subscriptions.data.payment_settings.payment_method_options.customer_balance(object, nullable) This sub-hash contains details about the Bank transfer payment method options to pass to invoices created by the subscription.subscriptions.data.payment_settings.payment_method_options.customer_balance.bank_transfer(object, nullable) Configuration for the bank transfer funding type, if thefunding_typeis set tobank_transfer.subscriptions.data.payment_settings.payment_method_options.customer_balance.bank_transfer.eu_bank_transfer(object, nullable) Configuration for eu_bank_transfer funding type.subscriptions.data.payment_settings.payment_method_options.customer_balance.bank_transfer.eu_bank_transfer.country(enum) The desired country code of the bank account information. Permitted values include:DE,FR,IE, orNL. Possible enum values:BEDEESFRIENL
subscriptions.data.payment_settings.payment_method_options.customer_balance.bank_transfer.type(enum, nullable) The bank transfer type that can be used for funding. Permitted values include:eu_bank_transfer,gb_bank_transfer,jp_bank_transfer,mx_bank_transfer, orus_bank_transfer.
subscriptions.data.payment_settings.payment_method_options.customer_balance.funding_type(enum, nullable) The funding method type to be used when there are not enough funds in the customer balance. Permitted values include:bank_transfer. Possible enum values:bank_transfer
subscriptions.data.payment_settings.payment_method_options.konbini(object, nullable) This sub-hash contains details about the Konbini payment method options to pass to invoices created by the subscription.subscriptions.data.payment_settings.payment_method_options.payto(object, nullable) This sub-hash contains details about the PayTo payment method options to pass to invoices created by the subscription.subscriptions.data.payment_settings.payment_method_options.payto.mandate_options(object, nullable) Additional fields for Mandate creation.subscriptions.data.payment_settings.payment_method_options.payto.mandate_options.amount(integer, nullable) The maximum amount that can be collected in a single invoice. If you don’t specify a maximum, then there is no limit.subscriptions.data.payment_settings.payment_method_options.payto.mandate_options.amount_type(enum, nullable) Onlymaximumis supported. Possible enum values:fixedThe amount is the exact amount that will be charged.maximumThe amount is the maximum amount that can be charged.
subscriptions.data.payment_settings.payment_method_options.payto.mandate_options.purpose(enum, nullable) The purpose for which payments are made. Has a default value based on your merchant category code. Possible enum values:dependant_supportTransactions are made for dependant support reasonsgovernmentTransactions are made for government reasonsloanTransactions are made for loan reasonsmortgageTransactions are made for mortgage reasonsotherTransactions are made for other reasonspensionTransactions are made for pension reasonspersonalTransactions are made for personal reasonsretailTransactions are made for retail reasonssalaryTransactions are made for salary reasonstaxTransactions are made for tax reasonsutilityTransactions are made for utility reasons
subscriptions.data.payment_settings.payment_method_options.pix(object, nullable) This sub-hash contains details about the Pix payment method options to pass to invoices created by the subscription.subscriptions.data.payment_settings.payment_method_options.pix.expires_after_seconds(integer, nullable) The number of seconds (between 10 and 1209600) after which Pix payment will expire. Defaults to 86400 seconds.subscriptions.data.payment_settings.payment_method_options.pix.mandate_options(object, nullable) Configuration options for setting up a mandatesubscriptions.data.payment_settings.payment_method_options.pix.mandate_options.amount(integer, nullable) Amount to be charged for future payments.subscriptions.data.payment_settings.payment_method_options.pix.mandate_options.amount_includes_iof(enum, nullable) Determines if the amount includes the IOF tax. Possible enum values:alwaysThe IOF tax is included in the amount.neverThe IOF tax is not included in the amount.
subscriptions.data.payment_settings.payment_method_options.pix.mandate_options.end_date(string, nullable) Date when the mandate expires and no further payments will be charged, inYYYY-MM-DD.subscriptions.data.payment_settings.payment_method_options.pix.mandate_options.payment_schedule(enum, nullable) Schedule at which the future payments will be charged. Possible enum values:halfyearlyThe future payments will be charged half-yearly.monthlyThe future payments will be charged monthly.quarterlyThe future payments will be charged quarterly.weeklyThe future payments will be charged weekly.yearlyThe future payments will be charged yearly.
subscriptions.data.payment_settings.payment_method_options.sepa_debit(object, nullable) This sub-hash contains details about the SEPA Direct Debit payment method options to pass to invoices created by the subscription.subscriptions.data.payment_settings.payment_method_options.upi(object, nullable) This sub-hash contains details about the UPI payment method options to pass to invoices created by the subscription.subscriptions.data.payment_settings.payment_method_options.upi.mandate_options(object, nullable) Configuration options for setting up an eMandatesubscriptions.data.payment_settings.payment_method_options.upi.mandate_options.amount(integer, nullable) Amount to be charged for future payments.subscriptions.data.payment_settings.payment_method_options.upi.mandate_options.amount_type(enum, nullable) One offixedormaximum. Iffixed, theamountparam refers to the exact amount to be charged in future payments. Ifmaximum, the amount charged can be up to the value passed for theamountparam. Possible enum values:fixedIffixed, theamountparam refers to the exact amount to be charged in future payments.maximumIfmaximum, the amount charged can be up to the value passed for theamountparam.
subscriptions.data.payment_settings.payment_method_options.upi.mandate_options.description(string, nullable) A description of the mandate or subscription that is meant to be displayed to the customer.The maximum length is 20 characters.
subscriptions.data.payment_settings.payment_method_options.upi.mandate_options.end_date(timestamp, nullable) End date of the mandate or subscription.
subscriptions.data.payment_settings.payment_method_options.us_bank_account(object, nullable) This sub-hash contains details about the ACH direct debit payment method options to pass to invoices created by the subscription.subscriptions.data.payment_settings.payment_method_options.us_bank_account.financial_connections(object, nullable) Additional fields for Financial Connections Session creationsubscriptions.data.payment_settings.payment_method_options.us_bank_account.financial_connections.filters(object, nullable) Filter the list of accounts that are allowed to be linked.subscriptions.data.payment_settings.payment_method_options.us_bank_account.financial_connections.filters.account_subcategories(array of enums, nullable) The account subcategories to use to filter for possible accounts to link. Valid subcategories arecheckingandsavings. Possible enum values:checkingBank account subcategory is checkingsavingsBank account subcategory is savings
subscriptions.data.payment_settings.payment_method_options.us_bank_account.financial_connections.permissions(array of enums, nullable) The list of permissions to request. Thepayment_methodpermission must be included. Possible enum values:balancesAllows accessing balance data from the account.ownershipAllows accessing ownership data from the account.payment_methodAllows the creation of a payment method from the account.transactionsAllows accessing transactions data from the account.
subscriptions.data.payment_settings.payment_method_options.us_bank_account.financial_connections.prefetch(array of enums, nullable) Data features requested to be retrieved upon account creation. Possible enum values:balancesRequests to prefetch balance data on accounts collected in this session.ownershipRequests to prefetch ownership data on accounts collected in this session.transactionsRequests to prefetch transaction data on accounts collected in this session.
subscriptions.data.payment_settings.payment_method_options.us_bank_account.verification_method(enum, nullable) Bank account verification method. The default value isautomatic. Possible enum values:automaticInstant verification with fallback to microdeposits.instantInstant verification only.microdepositsVerification using microdeposits. Cannot be used with Stripe Checkout, Hosted Invoices, or Payment Element.
subscriptions.data.payment_settings.payment_method_types(array of enums, nullable) The list of payment method types to provide to every invoice created by the subscription. If not set, Stripe attempts to automatically determine the types to use by looking at the invoice’s default payment method, the subscription’s default payment method, the customer’s default payment method, and your invoice template settings. Possible enum values:ach_debitACHacss_debitCanadian pre-authorized debitaffirmAffirmIf set, the Subscription
collection_methodmust besend_invoice.amazon_payAmazon Payau_becs_debitBECS Direct Debitbacs_debitBacs Direct DebitbancontactBancontactIf set, the Subscription
collection_methodmust besend_invoice.boletoBoletocardCardcashappCash App PaycryptoCryptoIf set, the Subscription
collection_methodmust besend_invoice.customCustomcustomer_balanceBank transferIf set, the Subscription
collection_methodmust besend_invoice.epsEPSIf set, the Subscription
collection_methodmust besend_invoice.fpxFPXIf set, the Subscription
collection_methodmust besend_invoice.giropaygiropayIf set, the Subscription
collection_methodmust besend_invoice.grabpayGrabPayIf set, the Subscription
collection_methodmust besend_invoice.idealiDEALIf set, the Subscription
collection_methodmust besend_invoice.kakao_payKakao PayklarnaKlarnaIf set, the Subscription
collection_methodmust besend_invoice.konbiniKonbiniIf set, the Subscription
collection_methodmust besend_invoice.kr_cardKorean cardlinkLinkmultibancoMultibancoIf set, the Subscription
collection_methodmust besend_invoice.naver_payNaver Paynz_bank_accountNZ BECS Direct Debitp24Przelewy24If set, the Subscription
collection_methodmust besend_invoice.pay_by_bankPay By BankIf set, the Subscription
collection_methodmust besend_invoice.paycoPAYCOIf set, the Subscription
collection_methodmust besend_invoice.paynowPayNowIf set, the Subscription
collection_methodmust besend_invoice.paypalPayPalpaytoPayTopixPixpromptpayPromptPayIf set, the Subscription
collection_methodmust besend_invoice.revolut_payRevolut Paysepa_debitSEPA Direct DebitsofortSOFORTIf set, the Subscription
collection_methodmust besend_invoice.twintTwintupiUPIus_bank_accountACH direct debitwechat_payWeChat PayIf set, the Subscription
collection_methodmust besend_invoice.
subscriptions.data.payment_settings.save_default_payment_method(enum, nullable) Configure whether Stripe updatessubscription.default_payment_methodwhen payment succeeds. Defaults tooff. Possible enum values:offStripe never setssubscription.default_payment_method.on_subscriptionStripe setssubscription.default_payment_methodwhen a subscription payment succeeds.
subscriptions.data.pending_invoice_item_interval(object, nullable) Specifies an interval for how often to bill for any pending invoice items. It is analogous to calling Create an invoice for the given subscription at the specified interval.subscriptions.data.pending_invoice_item_interval.interval(enum) Specifies invoicing frequency. Eitherday,week,monthoryear. Possible enum values:daymonthweekyear
subscriptions.data.pending_invoice_item_interval.interval_count(integer) The number of intervals between invoices. For example,interval=monthandinterval_count=3bills every 3 months. Maximum of one year interval allowed (1 year, 12 months, or 52 weeks).
subscriptions.data.pending_setup_intent(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) You can use this SetupIntent to collect user authentication when creating a subscription without immediate payment or updating a subscription’s payment method, allowing you to optimize for off-session payments. Learn more in the SCA Migration Guide.subscriptions.data.pending_update(object, nullable) If specified, pending updates that will be applied to the subscription once thelatest_invoicehas been paid.subscriptions.data.pending_update.billing_cycle_anchor(timestamp, nullable) If the update is applied, determines the date of the first full invoice, and, for plans withmonthoryearintervals, the day of the month for subsequent invoices. The timestamp is in UTC format.subscriptions.data.pending_update.expires_at(timestamp) The point after which the changes reflected by this update will be discarded and no longer applied.subscriptions.data.pending_update.metadata(object, nullable) Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.subscriptions.data.pending_update.subscription_items(array of objects, nullable) List of subscription items, each with an attached plan, that will be set if the update is applied.subscriptions.data.pending_update.subscription_items.id(string) Unique identifier for the object.subscriptions.data.pending_update.subscription_items.object(string) String representing the object’s type. Objects of the same type share the same value.subscriptions.data.pending_update.subscription_items.billing_thresholds(object, nullable) Define thresholds at which an invoice will be sent, and the related subscription advanced to a new billing periodsubscriptions.data.pending_update.subscription_items.billing_thresholds.usage_gte(integer, nullable) Usage threshold that triggers the subscription to create an invoice
subscriptions.data.pending_update.subscription_items.created(integer) Time at which the object was created. Measured in seconds since the Unix epoch.subscriptions.data.pending_update.subscription_items.current_period_end(timestamp) The end time of this subscription item’s current billing period.subscriptions.data.pending_update.subscription_items.current_period_start(timestamp) The start time of this subscription item’s current billing period.subscriptions.data.pending_update.subscription_items.discounts(array of strings, expandable (can be expanded into an object with theexpandrequest parameter)) The discounts applied to the subscription item. Subscription item discounts are applied before subscription discounts. Useexpand[]=discountsto expand each discount.subscriptions.data.pending_update.subscription_items.metadata(object) Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.subscriptions.data.pending_update.subscription_items.price(object) The price the customer is subscribed to.subscriptions.data.pending_update.subscription_items.price.id(string) Unique identifier for the object.subscriptions.data.pending_update.subscription_items.price.object(string) String representing the object’s type. Objects of the same type share the same value.subscriptions.data.pending_update.subscription_items.price.active(boolean) Whether the price can be used for new purchases.subscriptions.data.pending_update.subscription_items.price.billing_scheme(enum) Describes how to compute the price per period. Eitherper_unitortiered.per_unitindicates that the fixed amount (specified inunit_amountorunit_amount_decimal) will be charged per unit inquantity(for prices withusage_type=licensed), or per unit of total usage (for prices withusage_type=metered).tieredindicates that the unit pricing will be computed using a tiering strategy as defined using thetiersandtiers_modeattributes. Possible enum values:per_unittiered
subscriptions.data.pending_update.subscription_items.price.created(timestamp) Time at which the object was created. Measured in seconds since the Unix epoch.subscriptions.data.pending_update.subscription_items.price.currency(enum) Three-letter ISO currency code, in lowercase. Must be a supported currency.subscriptions.data.pending_update.subscription_items.price.currency_options(object, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) Prices defined in each available currency option. Each key must be a three-letter ISO currency code and a supported currency.subscriptions.data.pending_update.subscription_items.price.currency_options.<currency>.custom_unit_amount(object, nullable) When set, provides configuration for the amount to be adjusted by the customer during Checkout Sessions and Payment Links.subscriptions.data.pending_update.subscription_items.price.currency_options.<currency>.custom_unit_amount.maximum(integer, nullable) The maximum unit amount the customer can specify for this item.subscriptions.data.pending_update.subscription_items.price.currency_options.<currency>.custom_unit_amount.minimum(integer, nullable) The minimum unit amount the customer can specify for this item. Must be at least the minimum charge amount.subscriptions.data.pending_update.subscription_items.price.currency_options.<currency>.custom_unit_amount.preset(integer, nullable) The starting unit amount which can be updated by the customer.
subscriptions.data.pending_update.subscription_items.price.currency_options.<currency>.tax_behavior(enum, nullable) Only required if a default tax behavior) was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One ofinclusive,exclusive, orunspecified. Once specified as eitherinclusiveorexclusive, it cannot be changed. Possible enum values:exclusiveinclusiveunspecified
subscriptions.data.pending_update.subscription_items.price.currency_options.<currency>.tiers(array of objects, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) Each element represents a pricing tier. This parameter requiresbilling_schemeto be set totiered. See also the documentation forbilling_scheme.subscriptions.data.pending_update.subscription_items.price.currency_options.<currency>.tiers.flat_amount(integer, nullable) Price for the entire tier.subscriptions.data.pending_update.subscription_items.price.currency_options.<currency>.tiers.flat_amount_decimal(decimal string, nullable) Same asflat_amount, but contains a decimal value with at most 12 decimal places.subscriptions.data.pending_update.subscription_items.price.currency_options.<currency>.tiers.unit_amount(integer, nullable) Per unit price for units relevant to the tier.subscriptions.data.pending_update.subscription_items.price.currency_options.<currency>.tiers.unit_amount_decimal(decimal string, nullable) Same asunit_amount, but contains a decimal value with at most 12 decimal places.subscriptions.data.pending_update.subscription_items.price.currency_options.<currency>.tiers.up_to(integer, nullable) Up to and including to this quantity will be contained in the tier.
subscriptions.data.pending_update.subscription_items.price.currency_options.<currency>.unit_amount(integer, nullable) The unit amount in the smallest currency unit to be charged, represented as a whole integer if possible. Only set ifbilling_scheme=per_unit.subscriptions.data.pending_update.subscription_items.price.currency_options.<currency>.unit_amount_decimal(decimal string, nullable) The unit amount in the smallest currency unit to be charged, represented as a decimal string with at most 12 decimal places. Only set ifbilling_scheme=per_unit.
subscriptions.data.pending_update.subscription_items.price.custom_unit_amount(object, nullable) When set, provides configuration for the amount to be adjusted by the customer during Checkout Sessions and Payment Links.subscriptions.data.pending_update.subscription_items.price.custom_unit_amount.maximum(integer, nullable) The maximum unit amount the customer can specify for this item.subscriptions.data.pending_update.subscription_items.price.custom_unit_amount.minimum(integer, nullable) The minimum unit amount the customer can specify for this item. Must be at least the minimum charge amount.subscriptions.data.pending_update.subscription_items.price.custom_unit_amount.preset(integer, nullable) The starting unit amount which can be updated by the customer.
subscriptions.data.pending_update.subscription_items.price.livemode(boolean) If the object exists in live mode, the value istrue. If the object exists in test mode, the value isfalse.subscriptions.data.pending_update.subscription_items.price.lookup_key(string, nullable) A lookup key used to retrieve prices dynamically from a static string. This may be up to 200 characters.subscriptions.data.pending_update.subscription_items.price.metadata(object) Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.subscriptions.data.pending_update.subscription_items.price.nickname(string, nullable) A brief description of the price, hidden from customers.subscriptions.data.pending_update.subscription_items.price.product(string, expandable (can be expanded into an object with theexpandrequest parameter)) The ID of the product this price is associated with.subscriptions.data.pending_update.subscription_items.price.recurring(object, nullable) The recurring components of a price such asintervalandusage_type.subscriptions.data.pending_update.subscription_items.price.recurring.interval(enum) The frequency at which a subscription is billed. One ofday,week,monthoryear.subscriptions.data.pending_update.subscription_items.price.recurring.interval_count(integer) The number of intervals (specified in theintervalattribute) between subscription billings. For example,interval=monthandinterval_count=3bills every 3 months.subscriptions.data.pending_update.subscription_items.price.recurring.meter(string, nullable) The meter tracking the usage of a metered pricesubscriptions.data.pending_update.subscription_items.price.recurring.usage_type(enum) Configures how the quantity per period should be determined. Can be eithermeteredorlicensed.licensedautomatically bills thequantityset when adding it to a subscription.meteredaggregates the total usage based on usage records. Defaults tolicensed.
subscriptions.data.pending_update.subscription_items.price.tax_behavior(enum, nullable) Only required if a default tax behavior) was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One ofinclusive,exclusive, orunspecified. Once specified as eitherinclusiveorexclusive, it cannot be changed. Possible enum values:exclusiveinclusiveunspecified
subscriptions.data.pending_update.subscription_items.price.tiers(array of objects, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) Each element represents a pricing tier. This parameter requiresbilling_schemeto be set totiered. See also the documentation forbilling_scheme.subscriptions.data.pending_update.subscription_items.price.tiers.flat_amount(integer, nullable) Price for the entire tier.subscriptions.data.pending_update.subscription_items.price.tiers.flat_amount_decimal(decimal string, nullable) Same asflat_amount, but contains a decimal value with at most 12 decimal places.subscriptions.data.pending_update.subscription_items.price.tiers.unit_amount(integer, nullable) Per unit price for units relevant to the tier.subscriptions.data.pending_update.subscription_items.price.tiers.unit_amount_decimal(decimal string, nullable) Same asunit_amount, but contains a decimal value with at most 12 decimal places.subscriptions.data.pending_update.subscription_items.price.tiers.up_to(integer, nullable) Up to and including to this quantity will be contained in the tier.
subscriptions.data.pending_update.subscription_items.price.tiers_mode(enum, nullable) Defines if the tiering price should begraduatedorvolumebased. Involume-based tiering, the maximum quantity within a period determines the per unit price. Ingraduatedtiering, pricing can change as the quantity grows. Possible enum values:graduatedvolume
subscriptions.data.pending_update.subscription_items.price.transform_quantity(object, nullable) Apply a transformation to the reported usage or set quantity before computing the amount billed. Cannot be combined withtiers.subscriptions.data.pending_update.subscription_items.price.transform_quantity.divide_by(integer) Divide usage by this number.subscriptions.data.pending_update.subscription_items.price.transform_quantity.round(enum) After division, either round the resultupordown.
subscriptions.data.pending_update.subscription_items.price.type(enum) One ofone_timeorrecurringdepending on whether the price is for a one-time purchase or a recurring (subscription) purchase. Possible enum values:one_timerecurring
subscriptions.data.pending_update.subscription_items.price.unit_amount(integer, nullable) The unit amount in the smallest currency unit to be charged, represented as a whole integer if possible. Only set ifbilling_scheme=per_unit.subscriptions.data.pending_update.subscription_items.price.unit_amount_decimal(decimal string, nullable) The unit amount in the smallest currency unit to be charged, represented as a decimal string with at most 12 decimal places. Only set ifbilling_scheme=per_unit.
subscriptions.data.pending_update.subscription_items.quantity(integer, nullable) The quantity of the plan to which the customer should be subscribed.subscriptions.data.pending_update.subscription_items.subscription(string) Thesubscriptionthissubscription_itembelongs to.subscriptions.data.pending_update.subscription_items.tax_rates(array of objects, nullable) The tax rates which apply to thissubscription_item. When set, thedefault_tax_rateson the subscription do not apply to thissubscription_item.subscriptions.data.pending_update.subscription_items.tax_rates.id(string) Unique identifier for the object.subscriptions.data.pending_update.subscription_items.tax_rates.object(string) String representing the object’s type. Objects of the same type share the same value.subscriptions.data.pending_update.subscription_items.tax_rates.active(boolean) Defaults totrue. When set tofalse, this tax rate cannot be used with new applications or Checkout Sessions, but will still work for subscriptions and invoices that already have it set.subscriptions.data.pending_update.subscription_items.tax_rates.country(string, nullable) Two-letter country code (ISO 3166-1 alpha-2).subscriptions.data.pending_update.subscription_items.tax_rates.created(timestamp) Time at which the object was created. Measured in seconds since the Unix epoch.subscriptions.data.pending_update.subscription_items.tax_rates.description(string, nullable) An arbitrary string attached to the tax rate for your internal use only. It will not be visible to your customers.subscriptions.data.pending_update.subscription_items.tax_rates.display_name(string) The display name of the tax rates as it will appear to your customer on their receipt email, PDF, and the hosted invoice page.subscriptions.data.pending_update.subscription_items.tax_rates.effective_percentage(float, nullable) Actual/effective tax rate percentage out of 100. For tax calculations with automatic_tax[enabled]=true, this percentage reflects the rate actually used to calculate tax based on the product’s taxability and whether the user is registered to collect taxes in the corresponding jurisdiction.subscriptions.data.pending_update.subscription_items.tax_rates.flat_amount(object, nullable) The amount of the tax rate when therate_typeisflat_amount. Tax rates withrate_typepercentagecan vary based on the transaction, resulting in this field beingnull. This field exposes the amount and currency of the flat tax rate.subscriptions.data.pending_update.subscription_items.tax_rates.flat_amount.amount(integer) Amount of the tax when therate_typeisflat_amount. This positive integer represents how much to charge in the smallest currency unit (e.g., 100 cents to charge $1.00 or 100 to charge ¥100, a zero-decimal currency). The amount value supports up to eight digits (e.g., a value of 99999999 for a USD charge of $999,999.99).subscriptions.data.pending_update.subscription_items.tax_rates.flat_amount.currency(string) Three-letter ISO currency code, in lowercase.
subscriptions.data.pending_update.subscription_items.tax_rates.inclusive(boolean) This specifies if the tax rate is inclusive or exclusive.subscriptions.data.pending_update.subscription_items.tax_rates.jurisdiction(string, nullable) The jurisdiction for the tax rate. You can use this label field for tax reporting purposes. It also appears on your customer’s invoice.subscriptions.data.pending_update.subscription_items.tax_rates.jurisdiction_level(enum, nullable) The level of the jurisdiction that imposes this tax rate. Will benullfor manually defined tax rates. Possible enum values:citycountrycountydistrictmultiplestate
subscriptions.data.pending_update.subscription_items.tax_rates.livemode(boolean) If the object exists in live mode, the value istrue. If the object exists in test mode, the value isfalse.subscriptions.data.pending_update.subscription_items.tax_rates.metadata(object, nullable) Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.subscriptions.data.pending_update.subscription_items.tax_rates.percentage(float) Tax rate percentage out of 100. For tax calculations with automatic_tax[enabled]=true, this percentage includes the statutory tax rate of non-taxable jurisdictions.subscriptions.data.pending_update.subscription_items.tax_rates.rate_type(enum, nullable) Indicates the type of tax rate applied to the taxable amount. This value can benullwhen no tax applies to the location. This field is only present for TaxRates created by Stripe Tax. Possible enum values:flat_amountA fixed amount applied as tax, regardless of the taxable amount, such as a retail delivery fee.percentageA tax rate expressed as a percentage of the taxable amount, such as the sales tax rate in California.
subscriptions.data.pending_update.subscription_items.tax_rates.state(string, nullable) ISO 3166-2 subdivision code, without country prefix. For example, “NY” for New York, United States.subscriptions.data.pending_update.subscription_items.tax_rates.tax_type(enum, nullable) The high-level tax type, such asvatorsales_tax. Possible enum values:admissions_taxAdmissions Taxamusement_taxAmusement Taxattendance_taxAttendance Taxcommunications_taxCommunications Taxentertainment_taxEntertainment Taxgross_receipts_taxGross Receipts TaxgstGoods and Services Taxhospitality_taxHospitality TaxhstHarmonized Sales TaxigstIntegrated Goods and Services TaxjctJapanese Consumption Taxlease_taxChicago Lease Taxluxury_taxLuxury TaxpstProvincial Sales TaxqstQuebec Sales Taxresort_taxResort Taxretail_delivery_feeRetail Delivery FeerstRetail Sales Taxsales_taxSales Taxservice_taxService Taxtourism_taxTourism TaxvatValue-Added Tax
subscriptions.data.pending_update.trial_end(timestamp, nullable) Unix timestamp representing the end of the trial period the customer will get before being charged for the first time, if the update is applied.subscriptions.data.pending_update.trial_from_plan(boolean, nullable) Indicates if a plan’strial_period_daysshould be applied to the subscription. Settingtrial_endper subscription is preferred, and this defaults tofalse. Setting this flag totruetogether withtrial_endis not allowed. See Using trial periods on subscriptions to learn more.
subscriptions.data.presentment_details(object, nullable) A hash containing information about the currency presented to the customer.subscriptions.data.presentment_details.presentment_currency(string) Currency used for customer payments.
subscriptions.data.schedule(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The schedule attached to the subscriptionsubscriptions.data.start_date(timestamp) Date when the subscription was first created. The date might differ from thecreateddate due to backdating.subscriptions.data.status(enum) Possible values areincomplete,incomplete_expired,trialing,active,past_due,canceled,unpaid, orpaused.For
collection_method=charge_automaticallya subscription moves intoincompleteif the initial payment attempt fails. A subscription in this status can only have metadata and default_source updated. Once the first invoice is paid, the subscription moves into anactivestatus. If the first invoice is not paid within 23 hours, the subscription transitions toincomplete_expired. This is a terminal status, the open invoice will be voided and no further invoices will be generated.A subscription that is currently in a trial period is
trialingand moves toactivewhen the trial period is over.A subscription can only enter a
pausedstatus when a trial ends without a payment method. Apausedsubscription doesn’t generate invoices and can be resumed after your customer adds their payment method. Thepausedstatus is different from pausing collection, which still generates invoices and leaves the subscription’s status unchanged.If subscription
collection_method=charge_automatically, it becomespast_duewhen payment is required but cannot be paid (due to failed payment or awaiting additional user actions). Once Stripe has exhausted all payment retry attempts, the subscription will becomecanceledorunpaid(depending on your subscriptions settings).If subscription
collection_method=send_invoiceit becomespast_duewhen its invoice is not paid by the due date, andcanceledorunpaidif it is still not paid by an additional deadline after that. Note that when a subscription has a status ofunpaid, no subsequent invoices will be attempted (invoices will be created, but then immediately automatically closed). After receiving updated payment information from a customer, you may choose to reopen and pay their closed invoices.subscriptions.data.test_clock(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) ID of the test clock this subscription belongs to.subscriptions.data.transfer_data(object, nullable) The account (if any) the subscription’s payments will be attributed to for tax reporting, and where funds from each payment will be transferred to for each of the subscription’s invoices.subscriptions.data.transfer_data.amount_percent(float, nullable) A non-negative decimal between 0 and 100, with at most two decimal places. This represents the percentage of the subscription invoice total that will be transferred to the destination account. By default, the entire amount is transferred to the destination.subscriptions.data.transfer_data.destination(string, expandable (can be expanded into an object with theexpandrequest parameter)) The account where funds from the payment will be transferred to upon payment success.
subscriptions.data.trial_end(timestamp, nullable) If the subscription has a trial, the end of that trial.subscriptions.data.trial_settings(object, nullable) Settings related to subscription trials.subscriptions.data.trial_settings.end_behavior(object) Defines how the subscription should behave when the user’s trial ends.subscriptions.data.trial_settings.end_behavior.missing_payment_method(enum) Indicates how the subscription should change when the trial ends if the user did not provide a payment method. Possible enum values:cancelCancel the subscription if a payment method is not attached when the trial ends.create_invoiceCreate an invoice when the trial ends, even if the user did not set up a payment method.pausePause the subscription if a payment method is not attached when the trial ends.
subscriptions.data.trial_start(timestamp, nullable) If the subscription has a trial, the beginning of that trial.
subscriptions.has_more(boolean) True if this list has another page of items after this one that can be fetched.subscriptions.url(string) The URL where this list can be accessed.
tax(object, expandable (can be expanded into an object with theexpandrequest parameter)) Tax details for the customer.tax.automatic_tax(enum) Surfaces if automatic tax computation is possible given the current customer location information. Possible enum values:failedThere was an error determining the customer’s location. This is usually caused by a temporary issue. Retrieve the customer to try again.not_collectingThe customer is located in a country or state where you’re not registered to collect tax. Also returned when automatic tax calculation is not supported in the customer’s location.supportedThe customer is located in a country or state where you’re collecting tax.unrecognized_locationThe customer’s location couldn’t be determined. Make sure the provided address information is valid and supported in the customer’s country.
tax.ip_address(string, nullable) A recent IP address of the customer used for tax reporting and tax location inference.tax.location(object, nullable) The identified tax location of the customer.tax.location.country(string) The identified tax country of the customer.tax.location.source(enum) The data source used to infer the customer’s location.tax.location.state(string, nullable) The identified tax state, county, province, or region of the customer.
tax.provider(enum) The tax calculation provider used for location resolution. Defaults tostripewhen not using a third-party provider.
tax_exempt(enum, nullable) Describes the customer’s tax exemption status, which isnone,exempt, orreverse. When set toreverse, invoice and receipt PDFs include the following text: “Reverse charge”. Possible enum values:exemptnonereverse
tax_ids(object, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The customer’s tax IDs.tax_ids.object(string) String representing the object’s type. Objects of the same type share the same value. Always has the valuelist.tax_ids.data(array of objects) Details about each object.tax_ids.data.id(string) Unique identifier for the object.tax_ids.data.object(string) String representing the object’s type. Objects of the same type share the same value.tax_ids.data.country(string, nullable) Two-letter ISO code representing the country of the tax ID.tax_ids.data.created(timestamp) Time at which the object was created. Measured in seconds since the Unix epoch.tax_ids.data.customer(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) ID of the customer.tax_ids.data.customer_account(string, nullable) ID of the Account representing the customer.tax_ids.data.livemode(boolean) If the object exists in live mode, the value istrue. If the object exists in test mode, the value isfalse.tax_ids.data.owner(object, nullable) The account or customer the tax ID belongs to.tax_ids.data.owner.account(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The account being referenced whentypeisaccount.tax_ids.data.owner.application(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The Connect Application being referenced whentypeisapplication.tax_ids.data.owner.customer(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) The customer being referenced whentypeiscustomer.tax_ids.data.owner.customer_account(string, nullable) The Account representing the customer being referenced whentypeiscustomer.tax_ids.data.owner.type(enum) Type of owner referenced. Possible enum values:accountIndicates an account is being referenced.applicationIndicates an application is being referenced.customerIndicates a customer is being referenced.selfIndicates that the account being referenced is the account making the API request.
tax_ids.data.type(enum) Type of the tax ID, one ofad_nrt,ae_trn,al_tin,am_tin,ao_tin,ar_cuit,au_abn,au_arn,aw_tin,az_tin,ba_tin,bb_tin,bd_bin,bf_ifu,bg_uic,bh_vat,bj_ifu,bo_tin,br_cnpj,br_cpf,bs_tin,by_tin,ca_bn,ca_gst_hst,ca_pst_bc,ca_pst_mb,ca_pst_sk,ca_qst,cd_nif,ch_uid,ch_vat,cl_tin,cm_niu,cn_tin,co_nit,cr_tin,cv_nif,de_stn,do_rcn,ec_ruc,eg_tin,es_cif,et_tin,eu_oss_vat,eu_vat,fo_vat,gb_vat,ge_vat,gi_tin,gn_nif,hk_br,hr_oib,hu_tin,id_npwp,il_vat,in_gst,is_vat,it_cf,jp_cn,jp_rn,jp_trn,ke_pin,kg_tin,kh_tin,kr_brn,kz_bin,la_tin,li_uid,li_vat,lk_vat,ma_vat,md_vat,me_pib,mk_vat,mr_nif,mx_rfc,my_frp,my_itn,my_sst,ng_tin,no_vat,no_voec,np_pan,nz_gst,om_vat,pe_ruc,ph_tin,pl_nip,py_ruc,ro_tin,rs_pib,ru_inn,ru_kpp,sa_vat,sg_gst,sg_uen,si_tin,sn_ninea,sr_fin,sv_nit,th_vat,tj_tin,tr_tin,tw_vat,tz_vat,ua_vat,ug_tin,us_ein,uy_ruc,uz_tin,uz_vat,ve_rif,vn_tin,za_vat,zm_tin, orzw_tin. Note that some legacy tax IDs have typeunknownPossible enum values:ad_nrtae_trnal_tinam_tinao_tinar_cuitau_abnau_arnaw_tinaz_tinba_tinbb_tinbd_binbf_ifubg_uicbh_vatbj_ifubo_tinbr_cnpjbr_cpfbs_tinby_tinca_bnca_gst_hstca_pst_bcca_pst_mbca_pst_skca_qstcd_nifch_uidch_vatcl_tincm_niucn_tinco_nitcr_tincv_nifde_stndo_rcnec_ruceg_tines_cifet_tineu_oss_vateu_vatfo_vatgb_vatge_vatgi_tingn_nifhk_brhr_oibhu_tinid_npwpil_vatin_gstis_vatit_cfjp_cnjp_rnjp_trnke_pinkg_tinkh_tinkr_brnkz_binla_tinli_uidli_vatlk_vatma_vatmd_vatme_pibmk_vatmr_nifmx_rfcmy_frpmy_itnmy_sstng_tinno_vatno_voecnp_pannz_gstom_vatpe_rucph_tinpl_nippy_rucro_tinrs_pibru_innru_kppsa_vatsg_gstsg_uensi_tinsn_nineasr_finsv_nitth_vattj_tintr_tintw_vattz_vatua_vatug_tinunknownus_einuy_rucuz_tinuz_vatve_rifvn_tinza_vatzm_tinzw_tin
tax_ids.data.value(string) Value of the tax ID.tax_ids.data.verification(object, nullable) Tax ID verification information.tax_ids.data.verification.status(enum) Verification status, one ofpending,verified,unverified, orunavailable. Possible enum values:pendingunavailableunverifiedverified
tax_ids.data.verification.verified_address(string, nullable) Verified address.tax_ids.data.verification.verified_name(string, nullable) Verified name.
tax_ids.has_more(boolean) True if this list has another page of items after this one that can be fetched.tax_ids.url(string) The URL where this list can be accessed.
test_clock(string, nullable, expandable (can be expanded into an object with theexpandrequest parameter)) ID of the test clock that this customer belongs to.
The Customer object
json
{
"id": "cus_NffrFeUfNV2Hib",
"object": "customer",
"address": null,
"balance": 0,
"created": 1680893993,
"currency": null,
"default_source": null,
"delinquent": false,
"description": null,
"email": "jennyrosen@example.com",
"invoice_prefix": "0759376C",
"invoice_settings": {
"custom_fields": null,
"default_payment_method": null,
"footer": null,
"rendering_options": null
},
"livemode": false,
"metadata": {},
"name": "Jenny Rosen",
"next_invoice_sequence": 1,
"phone": null,
"preferred_locales": [],
"shipping": null,
"tax_exempt": "none",
"test_clock": null
}