Skip to main content
POST
/
prices
Create a price
const options = {
  method: 'POST',
  headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
  body: JSON.stringify({
    description: 'Monthly (per seat) with 14 day trial',
    name: 'Monthly (per seat)',
    product_id: 'pro_01htz88xpr0mm7b3ta2pjkr7w2',
    unit_price: {amount: '500', currency_code: 'USD'},
    billing_cycle: {interval: 'month', frequency: 1},
    trial_period: {interval: 'day', frequency: 14},
    tax_mode: 'account_setting'
  })
};

fetch('https://api.paddle.com/prices', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
{
  "data": {
    "id": "pri_01hv0vax6rv18t4tamj848ne4d",
    "product_id": "pro_01htz88xpr0mm7b3ta2pjkr7w2",
    "type": "standard",
    "description": "Monthly (per seat) with 14 day trial",
    "name": "Monthly (per seat)",
    "billing_cycle": {
      "interval": "month",
      "frequency": 1
    },
    "trial_period": {
      "interval": "day",
      "frequency": 14
    },
    "tax_mode": "account_setting",
    "unit_price": {
      "amount": "500",
      "currency_code": "USD"
    },
    "unit_price_overrides": [],
    "custom_data": null,
    "status": "active",
    "quantity": {
      "minimum": 1,
      "maximum": 100
    },
    "import_meta": null,
    "created_at": "2024-04-09T07:14:38.424504286Z",
    "updated_at": "2024-04-09T07:14:38.424504359Z"
  },
  "meta": {
    "request_id": "9e7f51e8-838b-4b2c-b0fa-d52d0593354c"
  }
}

Authorizations

Authorization
string
header
required

Requests are authenticated with API keys. Provide your API key as a Bearer token in the Authorization header.

API keys are assigned permissions, granting them access to entities and operations. Each endpoint may require one or more permissions, defined with the x-permissions extension. Values for include parameters may require specific permissions as defined in the x-enum-permissions extension. See all available permissions in the permission schema or documentation.

Get an API key and select the permissions you need from the Paddle dashboard under Paddle > Developer Tools > Authentication.

Body

application/json

Represents a price entity when creating prices.

description
string
required

Internal description for this price, not shown to customers. Typically notes for your team.

Required string length: 2 - 500
product_id
string
required

Paddle ID for the product that this price is for, prefixed with pro_.

Example:

"pro_01gsz97mq9pa4fkyy0wqenepkz"

unit_price
Money · object
required

Base price. This price applies to all customers, except for customers located in countries where you have unit_price_overrides.

type
enum<string>
default:standard

Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. If omitted, defaults to standard.

Available options:
custom,
standard
name
string | null

Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills.

Required string length: 1 - 150
billing_cycle
Duration · object

How often this price should be charged. null if price is non-recurring (one-time). If omitted, defaults to null.

trial_period
Price Trial Duration · object

Trial period for the product related to this price. The billing cycle begins once the trial period is over. null for no trial period. Requires billing_cycle. If omitted, defaults to null.

tax_mode
enum<string>
default:account_setting

How tax is calculated for this price. If omitted, defaults to account_setting.

Available options:
account_setting,
external,
internal
unit_price_overrides
Unit price override · object[]

List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries.

Maximum array length: 250
quantity
price_quantity · object

Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. If omitted, defaults to 1-100.

Example:
{ "minimum": 1, "maximum": 100 }
custom_data
Custom data · object

Your own structured key-value data.

Example:
{ "customer_reference_id": "abcd1234" }

Response

Created

data
Price · object
required

Represents a price entity.

meta
Meta · object
required

Information about this response.