Skip to main content
POST
/
pricing-preview
Preview prices
const options = {
  method: 'POST',
  headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
  body: JSON.stringify({
    items: [
      {quantity: 20, price_id: 'pri_01gsz8z1q1n00f12qt82y31smh'},
      {quantity: 1, price_id: 'pri_01h1vjfevh5etwq3rb416a23h2'}
    ],
    currency_code: 'USD',
    discount_id: 'dsc_01gtgztp8fpchantd5g1wrksa3',
    customer_ip_address: '34.232.58.13'
  })
};

fetch('https://api.paddle.com/pricing-preview', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
{
  "data": {
    "customer_id": null,
    "address_id": null,
    "business_id": null,
    "currency_code": "USD",
    "address": {
      "postal_code": "20149",
      "country_code": "US"
    },
    "customer_ip_address": "34.232.58.13",
    "discount_id": "dsc_01gtgztp8fpchantd5g1wrksa3",
    "details": {
      "line_items": [
        {
          "price": {
            "id": "pri_01gsz8z1q1n00f12qt82y31smh",
            "description": "Annual",
            "type": "standard",
            "name": "Annual (per seat)",
            "product_id": "pro_01gsz4t5hdjse780zja8vvr7jg",
            "billing_cycle": {
              "interval": "year",
              "frequency": 1
            },
            "trial_period": null,
            "tax_mode": "account_setting",
            "unit_price": {
              "amount": "30000",
              "currency_code": "USD"
            },
            "unit_price_overrides": [],
            "custom_data": null,
            "quantity": {
              "minimum": 1,
              "maximum": 999
            },
            "status": "active",
            "created_at": "2023-02-23T13:56:20.833019Z",
            "updated_at": "2024-04-11T13:47:49.566301Z"
          },
          "quantity": 20,
          "tax_rate": "0",
          "unit_totals": {
            "subtotal": "30000",
            "discount": "3000",
            "tax": "0",
            "total": "27000"
          },
          "formatted_unit_totals": {
            "subtotal": "$300.00",
            "discount": "$30.00",
            "tax": "$0.00",
            "total": "$270.00"
          },
          "totals": {
            "subtotal": "600000",
            "discount": "60000",
            "tax": "0",
            "total": "540000"
          },
          "formatted_totals": {
            "subtotal": "$6,000.00",
            "discount": "$600.00",
            "tax": "$0.00",
            "total": "$5,400.00"
          },
          "product": {
            "id": "pro_01gsz4t5hdjse780zja8vvr7jg",
            "name": "AeroEdit Pro",
            "description": "Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations.",
            "type": "standard",
            "tax_category": "standard",
            "image_url": "https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png",
            "custom_data": {
              "features": {
                "aircraft_performance": true,
                "compliance_monitoring": true,
                "flight_log_management": true,
                "payment_by_invoice": false,
                "route_planning": true,
                "sso": false
              },
              "suggested_addons": [
                "pro_01h1vjes1y163xfj1rh1tkfb65",
                "pro_01gsz97mq9pa4fkyy0wqenepkz"
              ],
              "upgrade_description": "Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring."
            },
            "status": "active",
            "created_at": "2023-02-23T12:43:46.605Z",
            "updated_at": "2024-04-05T15:53:44.687Z",
            "import_meta": null
          },
          "discounts": [
            {
              "discount": {
                "id": "dsc_01gtgztp8fpchantd5g1wrksa3",
                "status": "active",
                "description": "Black Friday 2024",
                "enabled_for_checkout": true,
                "code": "BF2024",
                "type": "percentage",
                "amount": "10",
                "currency_code": "USD",
                "recur": false,
                "maximum_recurring_intervals": null,
                "usage_limit": 1000,
                "restrict_to": null,
                "expires_at": "2024-12-03T00:00:00Z",
                "times_used": 0,
                "custom_data": null,
                "import_meta": null,
                "created_at": "2023-03-02T11:03:00.623Z",
                "updated_at": "2023-08-22T13:32:28.295Z"
              },
              "total": "60000",
              "formatted_total": "$600.00"
            }
          ]
        },
        {
          "price": {
            "id": "pri_01h1vjfevh5etwq3rb416a23h2",
            "description": "Monthly",
            "type": "standard",
            "name": "Monthly (recurring addon)",
            "product_id": "pro_01h1vjes1y163xfj1rh1tkfb65",
            "billing_cycle": {
              "interval": "month",
              "frequency": 1
            },
            "trial_period": null,
            "tax_mode": "account_setting",
            "unit_price": {
              "amount": "10000",
              "currency_code": "USD"
            },
            "unit_price_overrides": [],
            "custom_data": null,
            "quantity": {
              "minimum": 1,
              "maximum": 100
            },
            "status": "active",
            "created_at": "2023-06-01T13:31:12.625056Z",
            "updated_at": "2024-04-09T07:23:00.907834Z",
            "import_meta": null
          },
          "quantity": 1,
          "tax_rate": "0",
          "unit_totals": {
            "subtotal": "10000",
            "discount": "1000",
            "tax": "0",
            "total": "9000"
          },
          "formatted_unit_totals": {
            "subtotal": "$100.00",
            "discount": "$10.00",
            "tax": "$0.00",
            "total": "$90.00"
          },
          "totals": {
            "subtotal": "10000",
            "discount": "1000",
            "tax": "0",
            "total": "9000"
          },
          "formatted_totals": {
            "subtotal": "$100.00",
            "discount": "$10.00",
            "tax": "$0.00",
            "total": "$90.00"
          },
          "product": {
            "id": "pro_01h1vjes1y163xfj1rh1tkfb65",
            "name": "Analytics addon",
            "description": "Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights.",
            "type": "standard",
            "tax_category": "standard",
            "image_url": "https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png",
            "custom_data": null,
            "status": "active",
            "created_at": "2023-06-01T13:30:50.302Z",
            "updated_at": "2024-04-05T15:47:17.163Z",
            "import_meta": null
          },
          "discounts": [
            {
              "discount": {
                "id": "dsc_01gtgztp8fpchantd5g1wrksa3",
                "status": "active",
                "description": "Black Friday 2024",
                "enabled_for_checkout": true,
                "code": "BF2024",
                "type": "percentage",
                "amount": "10",
                "currency_code": "USD",
                "recur": false,
                "maximum_recurring_intervals": null,
                "usage_limit": 1000,
                "restrict_to": null,
                "expires_at": "2024-12-03T00:00:00Z",
                "times_used": 0,
                "custom_data": null,
                "import_meta": null,
                "created_at": "2023-03-02T11:03:00.623Z",
                "updated_at": "2023-08-22T13:32:28.295Z"
              },
              "total": "1000",
              "formatted_total": "$10.00"
            }
          ]
        }
      ]
    },
    "available_payment_methods": [
      "apple_pay",
      "card",
      "paypal",
      "google_pay"
    ]
  },
  "meta": {
    "request_id": "b8a54261-3aca-41bc-9432-26d3753ecf8b"
  }
}

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
items
Price preview item · object[]
required

List of items to preview price calculations for.

Required array length: 1 - 100 elements
customer_id
string | null

Paddle ID of the customer that this preview is for, prefixed with ctm_.

Example:

"ctm_01grnn4zta5a1mf02jjze7y2ys"

address_id
string | null

Paddle ID of the address that this preview is for, prefixed with add_. Send one of address_id, customer_ip_address, or the address object when previewing.

Example:

"add_01gm302t81w94gyjpjpqypkzkf"

business_id
string | null

Paddle ID of the business that this preview is for, prefixed with biz_.

Example:

"biz_01grrebrzaee2qj2fqqhmcyzaj"

currency_code
enum<string> | null

Supported three-letter ISO 4217 currency code.

Available options:
USD,
EUR,
GBP,
JPY,
AUD,
CAD,
CHF,
HKD,
SGD,
SEK,
ARS,
BRL,
CNY,
COP,
CZK,
DKK,
HUF,
ILS,
INR,
KRW,
MXN,
NOK,
NZD,
PLN,
RUB,
THB,
TRY,
TWD,
UAH,
VND,
ZAR
Required string length: 3
discount_id
string | null

Paddle ID of the discount applied to this preview, prefixed with dsc_.

Example:

"dsc_01gv5kpg05xp104ek2fmgjwttf"

address
AddressPreview · object

Address for this preview. Send one of address_id, customer_ip_address, or the address object when previewing.

customer_ip_address
string | null

IP address for this transaction preview. Send one of address_id, customer_ip_address, or the address object when previewing.

Response

OK

data
PricePreview · object
required
meta
Meta · object
required

Information about this response.