POST /v1/prices

Creates a new Price for an existing Product. The Price can be recurring or one-time.

Servers

Request headers

Name Type Required Description
Content-Type String Yes The media type of the request body.

Default value: "application/x-www-form-urlencoded"

Request body fields

Name Type Required Description
transform_quantity Object No

Apply a transformation to the reported usage or set quantity before computing the billed price. Cannot be combined with tiers.

transform_quantity.divide_by Integer Yes
transform_quantity.round String Yes

Possible values:

  • "down"
  • "up"
custom_unit_amount Object No

When set, provides configuration for the amount to be adjusted by the customer during Checkout Sessions and Payment Links.

custom_unit_amount.minimum Integer No
custom_unit_amount.preset Integer No
custom_unit_amount.enabled Boolean Yes
custom_unit_amount.maximum Integer No
expand[] Array No

Specifies which fields in the response should be expanded.

tiers_mode String No

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.

Possible values:

  • "graduated"
  • "volume"
metadata Object No

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. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.

product String No

The ID of the Product that this Price will belong to.

recurring Object No

The recurring components of a price such as interval and usage_type.

recurring.usage_type String No

Possible values:

  • "licensed"
  • "metered"
recurring.meter String No
recurring.interval String Yes

Possible values:

  • "month"
  • "day"
  • "week"
  • "year"
recurring.interval_count Integer No
lookup_key String No

A lookup key used to retrieve prices dynamically from a static string. This may be up to 200 characters.

currency String Yes

Three-letter ISO currency code, in lowercase. Must be a supported currency.

transfer_lookup_key Boolean No

If set to true, will atomically remove the lookup key from the existing price, and assign it to this price.

unit_amount Integer No

A positive integer in cents (or local equivalent) (or 0 for a free price) representing how much to charge. One of unit_amount, unit_amount_decimal, or custom_unit_amount is required, unless billing_scheme=tiered.

active Boolean No

Whether the price can be used for new purchases. Defaults to true.

nickname String No

A brief description of the price, hidden from customers.

tiers[] Array No

Each element represents a pricing tier. This parameter requires billing_scheme to be set to tiered. See also the documentation for billing_scheme.

tiers[].unit_amount Integer No
tiers[].up_to Yes
tiers[].unit_amount_decimal String No
tiers[].flat_amount Integer No
tiers[].flat_amount_decimal String No
unit_amount_decimal String No

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.

currency_options Object No

Prices defined in each available currency option. Each key must be a three-letter ISO currency code and a supported currency.

currency_options.name Object No
currency_options.name.unit_amount Integer No
currency_options.name.custom_unit_amount Object No
currency_options.name.custom_unit_amount.minimum Integer No
currency_options.name.custom_unit_amount.preset Integer No
currency_options.name.custom_unit_amount.enabled Boolean Yes
currency_options.name.custom_unit_amount.maximum Integer No
currency_options.name.tiers[] Array No
currency_options.name.tiers[].unit_amount Integer No
currency_options.name.tiers[].up_to Yes
currency_options.name.tiers[].unit_amount_decimal String No
currency_options.name.tiers[].flat_amount Integer No
currency_options.name.tiers[].flat_amount_decimal String No
currency_options.name.unit_amount_decimal String No
currency_options.name.tax_behavior String No

Possible values:

  • "inclusive"
  • "unspecified"
  • "exclusive"
tax_behavior String No

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 of inclusive, exclusive, or unspecified. Once specified as either inclusive or exclusive, it cannot be changed.

Possible values:

  • "inclusive"
  • "unspecified"
  • "exclusive"
billing_scheme String No

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.

Possible values:

  • "tiered"
  • "per_unit"
product_data Object No

These fields can be used to create a new product that this price will belong to.

product_data.id String No
product_data.name String Yes
product_data.active Boolean No
product_data.tax_code String No
product_data.metadata Object No
product_data.statement_descriptor String No
product_data.unit_label String No

How to start integrating

  1. Add HTTP Task to your workflow definition.
  2. Search for the API you want to integrate with and click on the name.
    • This loads the API reference documentation and prepares the Http request settings.
  3. Click Test request to test run your request to the API and see the API's response.