Stripe · Schema
PostPricesRequest
CommerceFinancial ServicesFintechPaymentsT1StripeAgentic CommercePoint-of-SalePayment Processing
Properties
| Name | Type | Description |
|---|---|---|
| active | boolean | Whether the price can be used for new purchases. Defaults to `true`. |
| billing_scheme | string | Describes how to compute the price per period. Either `per_unit` or `tiered`. `per_unit` indicates that the fixed amount (specified in `unit_amount` or `unit_amount_decimal`) will be charged per unit |
| currency | string | Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies). |
| currency_options | object | Prices defined in each available currency option. Each key must be a three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html) and a [supported currency](https://stripe.com/do |
| custom_unit_amount | object | When set, provides configuration for the amount to be adjusted by the customer during Checkout Sessions and Payment Links. |
| expand | array | Specifies which fields in the response should be expanded. |
| lookup_key | string | A lookup key used to retrieve prices dynamically from a static string. This may be up to 200 characters. |
| metadata | object | Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individu |
| nickname | string | A brief description of the price, hidden from customers. |
| product | string | The ID of the product that this price will belong to. |
| product_data | object | These fields can be used to create a new product that this price will belong to. |
| recurring | object | The recurring components of a price such as `interval` and `usage_type`. |
| tax_behavior | string | Only required if a [default tax behavior](https://stripe.com/docs/tax/products-prices-tax-categories-tax-behavior#setting-a-default-tax-behavior-(recommended)) was not provided in the Stripe Tax setti |
| tiers | array | Each element represents a pricing tier. This parameter requires `billing_scheme` to be set to `tiered`. See also the documentation for `billing_scheme`. |
| tiers_mode | string | Defines if the tiering price should be `graduated` or `volume` based. In `volume`-based tiering, the maximum quantity within a period determines the per unit price, in `graduated` tiering pricing can |
| transfer_lookup_key | boolean | If set to true, will atomically remove the lookup key from the existing price, and assign it to this price. |
| transform_quantity | object | Apply a transformation to the reported usage or set quantity before computing the billed price. Cannot be combined with `tiers`. |
| unit_amount | integer | A positive integer in cents (or local equivalent) (or 0 for a free price) representing how much to charge. One of `unit_amount` or `custom_unit_amount` is required, unless `billing_scheme=tiered`. |
| unit_amount_decimal | string | Same as `unit_amount`, but accepts a decimal value in cents (or local equivalent) with at most 12 decimal places. Only one of `unit_amount` and `unit_amount_decimal` can be set. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/stripe/main/json-schema/stripe-post-prices-request-schema.json",
"title": "PostPricesRequest",
"x-generated": "2026-10-12",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/stripe-prices-api-openapi.yml#/components/schemas/PostPricesRequest",
"type": "object",
"required": [
"currency"
],
"properties": {
"active": {
"description": "Whether the price can be used for new purchases. Defaults to `true`.",
"type": "boolean"
},
"billing_scheme": {
"description": "Describes how to compute the price per period. Either `per_unit` or `tiered`. `per_unit` indicates that the fixed amount (specified in `unit_amount` or `unit_amount_decimal`) will be charged per unit in `quantity` (for prices with `usage_type=licensed`), or per unit of total usage (for prices with `usage_type=metered`). `tiered` indicates that the unit pricing will be computed using a tiering strategy as defined using the `tiers` and `tiers_mode` attributes.",
"enum": [
"per_unit",
"tiered"
],
"type": "string"
},
"currency": {
"description": "Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).",
"type": "string"
},
"currency_options": {
"additionalProperties": {
"properties": {
"custom_unit_amount": {
"properties": {
"enabled": {
"type": "boolean"
},
"maximum": {
"type": "integer"
},
"minimum": {
"type": "integer"
},
"preset": {
"type": "integer"
}
},
"required": [
"enabled"
],
"title": "custom_unit_amount",
"type": "object"
},
"tax_behavior": {
"enum": [
"exclusive",
"inclusive",
"unspecified"
],
"type": "string"
},
"tiers": {
"items": {
"properties": {
"flat_amount": {
"type": "integer"
},
"flat_amount_decimal": {
"format": "decimal",
"type": "string"
},
"unit_amount": {
"type": "integer"
},
"unit_amount_decimal": {
"format": "decimal",
"type": "string"
},
"up_to": {
"anyOf": [
{
"enum": [
"inf"
],
"maxLength": 5000,
"type": "string"
},
{
"type": "integer"
}
]
}
},
"required": [
"up_to"
],
"title": "tier",
"type": "object"
},
"type": "array"
},
"unit_amount": {
"type": "integer"
},
"unit_amount_decimal": {
"format": "decimal",
"type": "string"
}
},
"title": "currency_option",
"type": "object"
},
"description": "Prices defined in each available currency option. Each key must be a three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html) and a [supported currency](https://stripe.com/docs/currencies).",
"type": "object"
},
"custom_unit_amount": {
"description": "When set, provides configuration for the amount to be adjusted by the customer during Checkout Sessions and Payment Links.",
"properties": {
"enabled": {
"type": "boolean"
},
"maximum": {
"type": "integer"
},
"minimum": {
"type": "integer"
},
"preset": {
"type": "integer"
}
},
"required": [
"enabled"
],
"title": "custom_unit_amount",
"type": "object"
},
"expand": {
"description": "Specifies which fields in the response should be expanded.",
"items": {
"maxLength": 5000,
"type": "string"
},
"type": "array"
},
"lookup_key": {
"description": "A lookup key used to retrieve prices dynamically from a static string. This may be up to 200 characters.",
"maxLength": 200,
"type": "string"
},
"metadata": {
"additionalProperties": {
"type": "string"
},
"description": "Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.",
"type": "object"
},
"nickname": {
"description": "A brief description of the price, hidden from customers.",
"maxLength": 5000,
"type": "string"
},
"product": {
"description": "The ID of the product that this price will belong to.",
"maxLength": 5000,
"type": "string"
},
"product_data": {
"description": "These fields can be used to create a new product that this price will belong to.",
"properties": {
"active": {
"type": "boolean"
},
"id": {
"maxLength": 5000,
"type": "string"
},
"metadata": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"name": {
"maxLength": 5000,
"type": "string"
},
"statement_descriptor": {
"maxLength": 22,
"type": "string"
},
"tax_code": {
"maxLength": 5000,
"type": "string"
},
"unit_label": {
"maxLength": 12,
"type": "string"
}
},
"required": [
"name"
],
"title": "inline_product_params",
"type": "object"
},
"recurring": {
"description": "The recurring components of a price such as `interval` and `usage_type`.",
"properties": {
"aggregate_usage": {
"enum": [
"last_during_period",
"last_ever",
"max",
"sum"
],
"type": "string"
},
"interval": {
"enum": [
"day",
"month",
"week",
"year"
],
"type": "string"
},
"interval_count": {
"type": "integer"
},
"usage_type": {
"enum": [
"licensed",
"metered"
],
"type": "string"
}
},
"required": [
"interval"
],
"title": "recurring",
"type": "object"
},
"tax_behavior": {
"description": "Only required if a [default tax behavior](https://stripe.com/docs/tax/products-prices-tax-categories-tax-behavior#setting-a-default-tax-behavior-(recommended)) was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`. Once specified as either `inclusive` or `exclusive`, it cannot be changed.",
"enum": [
"exclusive",
"inclusive",
"unspecified"
],
"type": "string"
},
"tiers": {
"description": "Each element represents a pricing tier. This parameter requires `billing_scheme` to be set to `tiered`. See also the documentation for `billing_scheme`.",
"items": {
"properties": {
"flat_amount": {
"type": "integer"
},
"flat_amount_decimal": {
"format": "decimal",
"type": "string"
},
"unit_amount": {
"type": "integer"
},
"unit_amount_decimal": {
"format": "decimal",
"type": "string"
},
"up_to": {
"anyOf": [
{
"enum": [
"inf"
],
"maxLength": 5000,
"type": "string"
},
{
"type": "integer"
}
]
}
},
"required": [
"up_to"
],
"title": "tier",
"type": "object"
},
"type": "array"
},
"tiers_mode": {
"description": "Defines if the tiering price should be `graduated` or `volume` based. In `volume`-based tiering, the maximum quantity within a period determines the per unit price, in `graduated` tiering pricing can successively change as the quantity grows.",
"enum": [
"graduated",
"volume"
],
"type": "string"
},
"transfer_lookup_key": {
"description": "If set to true, will atomically remove the lookup key from the existing price, and assign it to this price.",
"type": "boolean"
},
"transform_quantity": {
"description": "Apply a transformation to the reported usage or set quantity before computing the billed price. Cannot be combined with `tiers`.",
"properties": {
"divide_by": {
"type": "integer"
},
"round": {
"enum": [
"down",
"up"
],
"type": "string"
}
},
"required": [
"divide_by",
"round"
],
"title": "transform_usage_param",
"type": "object"
},
"unit_amount": {
"description": "A positive integer in cents (or local equivalent) (or 0 for a free price) representing how much to charge. One of `unit_amount` or `custom_unit_amount` is required, unless `billing_scheme=tiered`.",
"type": "integer"
},
"unit_amount_decimal": {
"description": "Same as `unit_amount`, but accepts a decimal value in cents (or local equivalent) with at most 12 decimal places. Only one of `unit_amount` and `unit_amount_decimal` can be set.",
"format": "decimal",
"type": "string"
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/stripe-post-prices-request"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.