{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://stripe.com/schemas/price", "title": "Stripe Price", "description": "Prices define the unit cost, currency, and (optional) billing cycle for both recurring and one-time purchases of products.", "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the object.", "pattern": "^price_" }, "object": { "type": "string", "const": "price", "description": "String representing the object's type." }, "active": { "type": "boolean", "description": "Whether the price can be used for new purchases." }, "billing_scheme": { "type": "string", "description": "Describes how to compute the price per period.", "enum": ["per_unit", "tiered"] }, "created": { "type": "integer", "description": "Time at which the object was created." }, "currency": { "type": "string", "description": "Three-letter ISO currency code, in lowercase." }, "currency_options": { "type": ["object", "null"], "description": "Prices defined in each available currency option." }, "custom_unit_amount": { "type": ["object", "null"], "description": "When set, provides configuration for the amount to be adjusted by the customer during Checkout Sessions and Payment Links.", "properties": { "maximum": { "type": ["integer", "null"] }, "minimum": { "type": ["integer", "null"] }, "preset": { "type": ["integer", "null"] } } }, "livemode": { "type": "boolean", "description": "Has the value true if the object exists in live mode." }, "lookup_key": { "type": ["string", "null"], "description": "A lookup key used to retrieve prices dynamically from a static string." }, "metadata": { "type": "object", "description": "Set of key-value pairs that you can attach to an object.", "additionalProperties": { "type": "string" } }, "nickname": { "type": ["string", "null"], "description": "A brief description of the price, hidden from customers." }, "product": { "type": "string", "description": "The ID of the product this price is associated with." }, "recurring": { "type": ["object", "null"], "description": "The recurring components of a price such as interval and usage_type.", "properties": { "aggregate_usage": { "type": ["string", "null"], "enum": ["last_during_period", "last_ever", "max", "sum", null] }, "interval": { "type": "string", "enum": ["day", "month", "week", "year"] }, "interval_count": { "type": "integer" }, "trial_period_days": { "type": ["integer", "null"] }, "usage_type": { "type": "string", "enum": ["licensed", "metered"] } }, "required": ["interval", "interval_count", "usage_type"] }, "tax_behavior": { "type": ["string", "null"], "description": "Only required for products with multiple prices.", "enum": ["exclusive", "inclusive", "unspecified", null] }, "tiers": { "type": ["array", "null"], "description": "Each element represents a pricing tier.", "items": { "type": "object", "properties": { "flat_amount": { "type": ["integer", "null"] }, "flat_amount_decimal": { "type": ["string", "null"] }, "unit_amount": { "type": ["integer", "null"] }, "unit_amount_decimal": { "type": ["string", "null"] }, "up_to": { "type": ["integer", "null"] } } } }, "tiers_mode": { "type": ["string", "null"], "description": "Defines if the tiering price should be graduated or volume based.", "enum": ["graduated", "volume", null] }, "transform_quantity": { "type": ["object", "null"], "description": "Apply a transformation to the reported usage or set quantity before computing the amount billed.", "properties": { "divide_by": { "type": "integer" }, "round": { "type": "string", "enum": ["down", "up"] } } }, "type": { "type": "string", "description": "One of one_time or recurring depending on whether the price is for a one-time purchase or a recurring (subscription) purchase.", "enum": ["one_time", "recurring"] }, "unit_amount": { "type": ["integer", "null"], "description": "The unit amount in cents to be charged." }, "unit_amount_decimal": { "type": ["string", "null"], "description": "The unit amount in cents to be charged, represented as a decimal string with at most 12 decimal places." } }, "required": [ "id", "object", "active", "billing_scheme", "created", "currency", "livemode", "metadata", "product", "type" ] }