> For the complete documentation index, see [llms.txt](https://developer.paddle.com/llms.txt).

# POST /transactions/preview

**Preview a transaction**

Previews a transaction without creating a transaction entity. Typically used for creating more advanced, dynamic pricing pages where users can build their own plans.

Consider using [the preview prices operation](https://developer.paddle.com/api-reference/pricing-preview/preview-prices) for simpler pricing pages.

You can provide location information when previewing a transaction. You must provide this if you want Paddle to calculate tax or [automatically localize prices](https://developer.paddle.com/build/products/offer-localized-pricing). You can provide one of:

* `customer_ip_address`: Paddle fetches location using the IP address to calculate totals.
* `address`: Paddle uses the country and ZIP code (where supplied) to calculate totals.
* `customer_id`, `address_id`, `business_id`: Paddle uses existing customer data to calculate totals. Typically used for logged-in customers.

When supplying items, you can exclude items from the total calculation using the `include_in_totals` boolean.

By default, recurring items with trials are considered to have a zero charge when previewing. Set `ignore_trials` to `true` to ignore trial periods against prices for transaction preview calculations.

If successful, your response includes the data you sent with a `details` object that includes totals for the supplied prices.

Transaction previews don't create transactions, so no `id` is returned.

**Required permissions:** `transaction.read`

## Request body

- No location information — Preview a transaction without using any address information.
  - `customer_id`: string | null — Paddle ID of the customer that this transaction preview is for, prefixed with `ctm_`. (pattern: `^ctm_[a-z\d]{26}$`)
  - `currency_code`: string | null — Supported three-letter ISO 4217 currency code.
    - `USD` — United States Dollar
    - `EUR` — Euro
    - `GBP` — Pound Sterling
    - `JPY` — Japanese Yen
    - `AUD` — Australian Dollar
    - `CAD` — Canadian Dollar
    - `CHF` — Swiss Franc
    - `HKD` — Hong Kong Dollar
    - `SGD` — Singapore Dollar
    - `SEK` — Swedish Krona
    - `ARS` — Argentine Peso
    - `BRL` — Brazilian Real
    - `CLP` — Chilean Peso
    - `CNY` — Chinese Yuan
    - `COP` — Colombian Peso
    - `CZK` — Czech Koruna
    - `DKK` — Danish Krone
    - `HUF` — Hungarian Forint
    - `ILS` — Israeli Shekel
    - `INR` — Indian Rupee
    - `KRW` — South Korean Won
    - `MXN` — Mexican Peso
    - `NOK` — Norwegian Krone
    - `NZD` — New Zealand Dollar
    - `PEN` — Peruvian Sol
    - `PLN` — Polish Zloty
    - `RUB` — Russian Ruble
    - `THB` — Thai Baht
    - `TRY` — Turkish Lira
    - `TWD` — New Taiwan Dollar
    - `UAH` — Ukrainian Hryvnia
    - `VND` — Vietnamese Dong
    - `ZAR` — South African Rand
  - `discount_id`: string | null — Paddle ID of the discount to apply to this transaction preview, prefixed with `dsc_`. (pattern: `^dsc_[a-z\d]{26}$`)
  - `discount`: object | null — Apply a non-catalog discount to a transaction. Send one of `discount_id` or `discount`.
    - `description`: string (required) — Short description for this discount for your reference. Not shown to customers. (Length: 1–500)
    - `type`: string (required) — Type of discount. Determines how this discount impacts the checkout or transaction total.
      - `flat` — Discounts a checkout or transaction by a flat amount, for example -$100. Requires `currency_code`.
      - `flat_per_seat` — Discounts a checkout or transaction by a flat amount per unit, for example -$100 per user. Requires `currency_code`.
      - `percentage` — Discounts a checkout or transaction by a percentage of the total, for example -10%. Maximum 100%.
    - `amount`: string (required) — Amount to discount by. For `percentage` discounts, must be an amount between `0.01` and `100`. For `flat` and `flat_per_seat` discounts, amount in the lowest denomination for a currency.
    - `recur`: boolean — Whether this discount applies for multiple subscription billing periods (`true`) or not (`false`). If omitted, defaults to `false`. (default: `false`)
    - `maximum_recurring_intervals`: integer | null — Number of subscription billing periods that this discount recurs for. Requires `recur`. `null` if this discount recurs forever.

Subscription renewals, midcycle changes, and one-time charges billed to a subscription aren't considered a redemption. `times_used` is not incremented in these cases. (Min: 1)
    - `custom_data`: object | null — Your own structured key-value data.
    - `restrict_to`: array | null — Product or price IDs that this discount is for. When including a product ID, all prices for that product can be discounted. `null` if this discount applies to all products and prices. (Items: unique)
  - `ignore_trials`: boolean — Whether trials should be ignored for transaction preview calculations.

By default, recurring items with trials are considered to have a zero charge when previewing. Set to `true` to disable this. (default: `false`)
  - `items`: array (required) — List of items to preview charging for. You can preview charging for items that you've added to your catalog by passing the Paddle ID of an existing price entity, or you can preview charging for non-catalog items by passing a price object.

Non-catalog items can be for existing products, or you can pass a product object as part of your price to preview charging for a non-catalog product.
    - Catalog item — Add a catalog item to a transaction. In this case, the product and price that you're billing for exist in your product catalog in Paddle.
      - `quantity`: integer (required) — Quantity of this item on the transaction.
      - `include_in_totals`: boolean — Whether this item should be included in totals for this transaction preview. Typically used to exclude one-time charges from calculations. (default: `true`)
      - `price_id`: string (required) — Paddle ID of an existing catalog price to preview charging for, prefixed with `pri_`. (pattern: `^pri_[a-z\d]{26}$`)
    - Non-catalog price for an existing product — Add a non-catalog price for an existing product in your catalog to a transaction. In this case, the product you're billing for is a catalog product, but you charge a specific price for it.
      - `quantity`: integer (required) — Quantity of this item on the transaction.
      - `include_in_totals`: boolean — Whether this item should be included in totals for this transaction preview. Typically used to exclude one-time charges from calculations. (default: `true`)
      - `price`: object (required) — Price object for a non-catalog item to preview charging for. Include a `product_id` to relate this non-catalog price to an existing catalog price.
        - `description`: string (required) — Internal description for this price, not shown to customers. Typically notes for your team. (Length: 2–500)
        - `name`: string | null — Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. (Length: 1–150)
        - `billing_cycle`: object | null — How often this price should be charged. `null` if price is non-recurring (one-time).
          - `interval`: string (required) — Unit of time.
            - `day`
            - `week`
            - `month`
            - `year`
          - `frequency`: integer (required) — Amount of time. (Min: 1)
        - `trial_period`: object | null — 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`.
          - `interval`: string (required) — Unit of time.
            - `day`
            - `week`
            - `month`
            - `year`
          - `frequency`: integer (required) — Amount of time. (Min: 1)
        - `tax_mode`: string — How tax is calculated for this price. (default: `"account_setting"`)
          - `account_setting` — Prices use the setting from your account.
          - `external` — Prices are exclusive of tax.
          - `internal` — Prices are inclusive of tax.
          - `location` — Prices are inclusive or exclusive of tax, depending on the country of the transaction.
        - `unit_price`: object (required) — Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`.
          - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
          - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
            - `USD` — United States Dollar
            - `EUR` — Euro
            - `GBP` — Pound Sterling
            - `JPY` — Japanese Yen
            - `AUD` — Australian Dollar
            - `CAD` — Canadian Dollar
            - `CHF` — Swiss Franc
            - `HKD` — Hong Kong Dollar
            - `SGD` — Singapore Dollar
            - `SEK` — Swedish Krona
            - `ARS` — Argentine Peso
            - `BRL` — Brazilian Real
            - `CLP` — Chilean Peso
            - `CNY` — Chinese Yuan
            - `COP` — Colombian Peso
            - `CZK` — Czech Koruna
            - `DKK` — Danish Krone
            - `HUF` — Hungarian Forint
            - `ILS` — Israeli Shekel
            - `INR` — Indian Rupee
            - `KRW` — South Korean Won
            - `MXN` — Mexican Peso
            - `NOK` — Norwegian Krone
            - `NZD` — New Zealand Dollar
            - `PEN` — Peruvian Sol
            - `PLN` — Polish Zloty
            - `RUB` — Russian Ruble
            - `THB` — Thai Baht
            - `TRY` — Turkish Lira
            - `TWD` — New Taiwan Dollar
            - `UAH` — Ukrainian Hryvnia
            - `VND` — Vietnamese Dong
            - `ZAR` — South African Rand
        - `unit_price_overrides`: array — List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. (Items: max 250)
          - `country_codes`: array (required) — Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. (Items: min 1, unique)
            - string — Two-letter code for a country that Paddle supports sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
              - `AD` — Andorra
              - `AE` — United Arab Emirates
              - `AG` — Antigua and Barbuda
              - `AI` — Anguilla
              - `AL` — Albania
              - `AM` — Armenia
              - `AO` — Angola
              - `AR` — Argentina
              - `AS` — American Samoa
              - `AT` — Austria
              - `AU` — Australia
              - `AW` — Aruba
              - `AX` — Åland Islands
              - `AZ` — Azerbaijan
              - `BA` — Bosnia and Herzegovina
              - `BB` — Barbados
              - `BD` — Bangladesh
              - `BE` — Belgium
              - `BF` — Burkina Faso
              - `BG` — Bulgaria
              - `BH` — Bahrain
              - `BI` — Burundi
              - `BJ` — Benin
              - `BL` — Saint Barthélemy
              - `BM` — Bermuda
              - `BN` — Brunei
              - `BO` — Bolivia
              - `BQ` — Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba)
              - `BR` — Brazil
              - `BS` — Bahamas
              - `BT` — Bhutan
              - `BV` — Bouvet Island
              - `BW` — Botswana
              - `BZ` — Belize
              - `CA` — Canada
              - `CC` — Cocos Islands
              - `CG` — Republic of Congo
              - `CH` — Switzerland
              - `CI` — Côte d'Ivoire (Ivory Coast)
              - `CK` — Cook Islands
              - `CL` — Chile
              - `CM` — Cameroon
              - `CN` — China
              - `CO` — Colombia
              - `CR` — Costa Rica
              - `CV` — Cape Verde
              - `CW` — Curaçao
              - `CX` — Christmas Island
              - `CY` — Cyprus
              - `CZ` — Czechia (Czech Republic)
              - `DE` — Germany
              - `DJ` — Djibouti
              - `DK` — Denmark
              - `DM` — Dominica
              - `DO` — Dominican Republic
              - `DZ` — Algeria
              - `EC` — Ecuador
              - `EE` — Estonia
              - `EG` — Egypt
              - `EH` — Western Sahara
              - `ER` — Eritrea
              - `ES` — Spain
              - `ET` — Ethiopia
              - `FI` — Finland
              - `FJ` — Fiji
              - `FK` — Falkland Islands
              - `FM` — Micronesia
              - `FO` — Faroe Islands
              - `FR` — France
              - `GA` — Gabon
              - `GB` — United Kingdom
              - `GD` — Grenada
              - `GE` — Georgia
              - `GF` — French Guiana
              - `GG` — Guernsey
              - `GH` — Ghana
              - `GI` — Gibraltar
              - `GL` — Greenland
              - `GM` — Gambia
              - `GN` — Guinea
              - `GP` — Guadeloupe
              - `GQ` — Equatorial Guinea
              - `GR` — Greece
              - `GS` — South Georgia and the South Sandwich Islands
              - `GT` — Guatemala
              - `GU` — Guam
              - `GW` — Guinea-Bissau
              - `GY` — Guyana
              - `HK` — Hong Kong
              - `HM` — Heard Island and McDonald Islands
              - `HN` — Honduras
              - `HR` — Croatia
              - `HU` — Hungary
              - `ID` — Indonesia
              - `IE` — Ireland
              - `IL` — Israel
              - `IM` — Isle of Man
              - `IN` — India
              - `IO` — British Indian Ocean Territory
              - `IQ` — Iraq
              - `IS` — Iceland
              - `IT` — Italy
              - `JE` — Jersey
              - `JM` — Jamaica
              - `JO` — Jordan
              - `JP` — Japan
              - `KE` — Kenya
              - `KG` — Kyrgyzstan
              - `KH` — Cambodia
              - `KI` — Kiribati
              - `KM` — Comoros
              - `KN` — Saint Kitts and Nevis
              - `KR` — South Korea
              - `KW` — Kuwait
              - `KY` — Cayman Islands
              - `KZ` — Kazakhstan
              - `LA` — Lao People's Democratic Republic (Laos)
              - `LB` — Lebanon
              - `LC` — Saint Lucia
              - `LI` — Liechtenstein
              - `LK` — Sri Lanka
              - `LR` — Liberia
              - `LS` — Lesotho
              - `LT` — Lithuania
              - `LU` — Luxembourg
              - `LV` — Latvia
              - `MA` — Morocco
              - `MC` — Monaco
              - `MD` — Moldova
              - `ME` — Montenegro
              - `MF` — Saint Martin
              - `MG` — Madagascar
              - `MH` — Marshall Islands
              - `MK` — Macedonia
              - `MN` — Mongolia
              - `MO` — Macao
              - `MP` — Northern Mariana Islands
              - `MQ` — Martinique
              - `MR` — Mauritania
              - `MS` — Montserrat
              - `MT` — Malta
              - `MU` — Mauritius
              - `MV` — Maldives
              - `MW` — Malawi
              - `MX` — Mexico
              - `MY` — Malaysia
              - `MZ` — Mozambique
              - `NA` — Namibia
              - `NC` — New Caledonia
              - `NE` — Niger
              - `NF` — Norfolk Island
              - `NG` — Nigeria
              - `NL` — Netherlands
              - `NO` — Norway
              - `NP` — Nepal
              - `NR` — Nauru
              - `NU` — Niue
              - `NZ` — New Zealand
              - `OM` — Oman
              - `PA` — Panama
              - `PE` — Peru
              - `PF` — French Polynesia
              - `PG` — Papua New Guinea
              - `PH` — Philippines
              - `PK` — Pakistan
              - `PL` — Poland
              - `PM` — Saint Pierre and Miquelon
              - `PN` — Pitcairn
              - `PR` — Puerto Rico
              - `PS` — Palestinian territories
              - `PT` — Portugal
              - `PW` — Palau
              - `PY` — Paraguay
              - `QA` — Qatar
              - `RE` — Reunion
              - `RO` — Romania
              - `RS` — Republic of Serbia
              - `RW` — Rwanda
              - `SA` — Saudi Arabia
              - `SB` — Solomon Islands
              - `SC` — Seychelles
              - `SE` — Sweden
              - `SG` — Singapore
              - `SH` — Saint Helena
              - `SI` — Slovenia
              - `SJ` — Svalbard and Jan Mayen
              - `SK` — Slovakia
              - `SL` — Sierra Leone
              - `SM` — San Marino
              - `SN` — Senegal
              - `SR` — Suriname
              - `ST` — São Tomé and Príncipe
              - `SV` — El Salvador
              - `SX` — Sint Maarten
              - `SZ` — Swaziland
              - `TC` — Turks and Caicos Islands
              - `TD` — Chad
              - `TF` — French Southern and Antarctic Lands
              - `TG` — Togo
              - `TH` — Thailand
              - `TJ` — Tajikistan
              - `TK` — Tokelau
              - `TL` — Timor-Leste
              - `TM` — Turkmenistan
              - `TN` — Tunisia
              - `TO` — Tonga
              - `TR` — Turkey
              - `TT` — Trinidad and Tobago
              - `TV` — Tuvalu
              - `TW` — Taiwan
              - `TZ` — Tanzania
              - `UA` — Ukraine
              - `UG` — Uganda
              - `UM` — United States Minor Outlying Islands
              - `US` — United States
              - `UY` — Uruguay
              - `UZ` — Uzbekistan
              - `VA` — Holy See (Vatican City)
              - `VC` — Saint Vincent and the Grenadines
              - `VG` — British Virgin Islands
              - `VI` — U.S. Virgin Islands
              - `VN` — Vietnam
              - `VU` — Vanuatu
              - `WF` — Wallis and Futuna
              - `WS` — Samoa
              - `XK` — Kosovo
              - `YT` — Mayotte
              - `ZA` — South Africa
              - `ZM` — Zambia
            - string — Two-letter code for a country that Paddle does not support sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
              - `AF` — Afghanistan
              - `AQ` — Antarctica
              - `AN` — Netherlands Antilles. Withdrawn ISO 3166-1 code, succeeded by BQ, CW and SX.
              - `BY` — Belarus
              - `CD` — Democratic Republic of Congo
              - `CF` — Central African Republic
              - `CU` — Cuba
              - `CS` — Serbia and Montenegro. Withdrawn ISO 3166-1 code, succeeded by RS and ME.
              - `HT` — Haiti
              - `IR` — Iran
              - `KP` — North Korea
              - `LY` — Libya
              - `ML` — Mali
              - `MM` — Myanmar (Burma)
              - `NI` — Nicaragua
              - `RU` — Russia
              - `SO` — Somalia
              - `SS` — South Sudan
              - `SD` — Sudan
              - `SY` — Syria
              - `VE` — Venezuela
              - `YE` — Yemen
              - `ZW` — Zimbabwe
          - `unit_price`: object (required) — Override price. This price applies to customers located in the countries for this unit price override.
            - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
            - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
              - `USD` — United States Dollar
              - `EUR` — Euro
              - `GBP` — Pound Sterling
              - `JPY` — Japanese Yen
              - `AUD` — Australian Dollar
              - `CAD` — Canadian Dollar
              - `CHF` — Swiss Franc
              - `HKD` — Hong Kong Dollar
              - `SGD` — Singapore Dollar
              - `SEK` — Swedish Krona
              - `ARS` — Argentine Peso
              - `BRL` — Brazilian Real
              - `CLP` — Chilean Peso
              - `CNY` — Chinese Yuan
              - `COP` — Colombian Peso
              - `CZK` — Czech Koruna
              - `DKK` — Danish Krone
              - `HUF` — Hungarian Forint
              - `ILS` — Israeli Shekel
              - `INR` — Indian Rupee
              - `KRW` — South Korean Won
              - `MXN` — Mexican Peso
              - `NOK` — Norwegian Krone
              - `NZD` — New Zealand Dollar
              - `PEN` — Peruvian Sol
              - `PLN` — Polish Zloty
              - `RUB` — Russian Ruble
              - `THB` — Thai Baht
              - `TRY` — Turkish Lira
              - `TWD` — New Taiwan Dollar
              - `UAH` — Ukrainian Hryvnia
              - `VND` — Vietnamese Dong
              - `ZAR` — South African Rand
        - `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.
          - `minimum`: integer (required) — Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. (Range: 1–999999999; default: `1`)
          - `maximum`: integer (required) — Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. (Range: 1–999999999; default: `100`)
        - `custom_data`: object | null — Your own structured key-value data.
        - `product_id`: string (required) — Paddle ID for the product that this price is for, prefixed with `pro_`. (pattern: `^pro_[a-z\d]{26}$`)
    - Non-catalog price and product — Add a non-catalog price for a non-catalog product in your catalog to a transaction. In this case, the product and price that you're billing for are specific to this transaction.
      - `quantity`: integer (required) — Quantity of this item on the transaction.
      - `include_in_totals`: boolean — Whether this item should be included in totals for this transaction preview. Typically used to exclude one-time charges from calculations. (default: `true`)
      - `price`: object (required) — Price object for a non-catalog item to preview charging for. Include a `product` object to create a non-catalog product for this non-catalog price.
        - `description`: string (required) — Internal description for this price, not shown to customers. Typically notes for your team. (Length: 2–500)
        - `name`: string | null — Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. (Length: 1–150)
        - `billing_cycle`: object | null — How often this price should be charged. `null` if price is non-recurring (one-time).
          - `interval`: string (required) — Unit of time.
            - `day`
            - `week`
            - `month`
            - `year`
          - `frequency`: integer (required) — Amount of time. (Min: 1)
        - `trial_period`: object | null — 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`.
          - `interval`: string (required) — Unit of time.
            - `day`
            - `week`
            - `month`
            - `year`
          - `frequency`: integer (required) — Amount of time. (Min: 1)
        - `tax_mode`: string — How tax is calculated for this price. (default: `"account_setting"`)
          - `account_setting` — Prices use the setting from your account.
          - `external` — Prices are exclusive of tax.
          - `internal` — Prices are inclusive of tax.
          - `location` — Prices are inclusive or exclusive of tax, depending on the country of the transaction.
        - `unit_price`: object (required) — Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`.
          - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
          - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
            - `USD` — United States Dollar
            - `EUR` — Euro
            - `GBP` — Pound Sterling
            - `JPY` — Japanese Yen
            - `AUD` — Australian Dollar
            - `CAD` — Canadian Dollar
            - `CHF` — Swiss Franc
            - `HKD` — Hong Kong Dollar
            - `SGD` — Singapore Dollar
            - `SEK` — Swedish Krona
            - `ARS` — Argentine Peso
            - `BRL` — Brazilian Real
            - `CLP` — Chilean Peso
            - `CNY` — Chinese Yuan
            - `COP` — Colombian Peso
            - `CZK` — Czech Koruna
            - `DKK` — Danish Krone
            - `HUF` — Hungarian Forint
            - `ILS` — Israeli Shekel
            - `INR` — Indian Rupee
            - `KRW` — South Korean Won
            - `MXN` — Mexican Peso
            - `NOK` — Norwegian Krone
            - `NZD` — New Zealand Dollar
            - `PEN` — Peruvian Sol
            - `PLN` — Polish Zloty
            - `RUB` — Russian Ruble
            - `THB` — Thai Baht
            - `TRY` — Turkish Lira
            - `TWD` — New Taiwan Dollar
            - `UAH` — Ukrainian Hryvnia
            - `VND` — Vietnamese Dong
            - `ZAR` — South African Rand
        - `unit_price_overrides`: array — List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. (Items: max 250)
          - `country_codes`: array (required) — Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. (Items: min 1, unique)
            - string — Two-letter code for a country that Paddle supports sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
              - `AD` — Andorra
              - `AE` — United Arab Emirates
              - `AG` — Antigua and Barbuda
              - `AI` — Anguilla
              - `AL` — Albania
              - `AM` — Armenia
              - `AO` — Angola
              - `AR` — Argentina
              - `AS` — American Samoa
              - `AT` — Austria
              - `AU` — Australia
              - `AW` — Aruba
              - `AX` — Åland Islands
              - `AZ` — Azerbaijan
              - `BA` — Bosnia and Herzegovina
              - `BB` — Barbados
              - `BD` — Bangladesh
              - `BE` — Belgium
              - `BF` — Burkina Faso
              - `BG` — Bulgaria
              - `BH` — Bahrain
              - `BI` — Burundi
              - `BJ` — Benin
              - `BL` — Saint Barthélemy
              - `BM` — Bermuda
              - `BN` — Brunei
              - `BO` — Bolivia
              - `BQ` — Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba)
              - `BR` — Brazil
              - `BS` — Bahamas
              - `BT` — Bhutan
              - `BV` — Bouvet Island
              - `BW` — Botswana
              - `BZ` — Belize
              - `CA` — Canada
              - `CC` — Cocos Islands
              - `CG` — Republic of Congo
              - `CH` — Switzerland
              - `CI` — Côte d'Ivoire (Ivory Coast)
              - `CK` — Cook Islands
              - `CL` — Chile
              - `CM` — Cameroon
              - `CN` — China
              - `CO` — Colombia
              - `CR` — Costa Rica
              - `CV` — Cape Verde
              - `CW` — Curaçao
              - `CX` — Christmas Island
              - `CY` — Cyprus
              - `CZ` — Czechia (Czech Republic)
              - `DE` — Germany
              - `DJ` — Djibouti
              - `DK` — Denmark
              - `DM` — Dominica
              - `DO` — Dominican Republic
              - `DZ` — Algeria
              - `EC` — Ecuador
              - `EE` — Estonia
              - `EG` — Egypt
              - `EH` — Western Sahara
              - `ER` — Eritrea
              - `ES` — Spain
              - `ET` — Ethiopia
              - `FI` — Finland
              - `FJ` — Fiji
              - `FK` — Falkland Islands
              - `FM` — Micronesia
              - `FO` — Faroe Islands
              - `FR` — France
              - `GA` — Gabon
              - `GB` — United Kingdom
              - `GD` — Grenada
              - `GE` — Georgia
              - `GF` — French Guiana
              - `GG` — Guernsey
              - `GH` — Ghana
              - `GI` — Gibraltar
              - `GL` — Greenland
              - `GM` — Gambia
              - `GN` — Guinea
              - `GP` — Guadeloupe
              - `GQ` — Equatorial Guinea
              - `GR` — Greece
              - `GS` — South Georgia and the South Sandwich Islands
              - `GT` — Guatemala
              - `GU` — Guam
              - `GW` — Guinea-Bissau
              - `GY` — Guyana
              - `HK` — Hong Kong
              - `HM` — Heard Island and McDonald Islands
              - `HN` — Honduras
              - `HR` — Croatia
              - `HU` — Hungary
              - `ID` — Indonesia
              - `IE` — Ireland
              - `IL` — Israel
              - `IM` — Isle of Man
              - `IN` — India
              - `IO` — British Indian Ocean Territory
              - `IQ` — Iraq
              - `IS` — Iceland
              - `IT` — Italy
              - `JE` — Jersey
              - `JM` — Jamaica
              - `JO` — Jordan
              - `JP` — Japan
              - `KE` — Kenya
              - `KG` — Kyrgyzstan
              - `KH` — Cambodia
              - `KI` — Kiribati
              - `KM` — Comoros
              - `KN` — Saint Kitts and Nevis
              - `KR` — South Korea
              - `KW` — Kuwait
              - `KY` — Cayman Islands
              - `KZ` — Kazakhstan
              - `LA` — Lao People's Democratic Republic (Laos)
              - `LB` — Lebanon
              - `LC` — Saint Lucia
              - `LI` — Liechtenstein
              - `LK` — Sri Lanka
              - `LR` — Liberia
              - `LS` — Lesotho
              - `LT` — Lithuania
              - `LU` — Luxembourg
              - `LV` — Latvia
              - `MA` — Morocco
              - `MC` — Monaco
              - `MD` — Moldova
              - `ME` — Montenegro
              - `MF` — Saint Martin
              - `MG` — Madagascar
              - `MH` — Marshall Islands
              - `MK` — Macedonia
              - `MN` — Mongolia
              - `MO` — Macao
              - `MP` — Northern Mariana Islands
              - `MQ` — Martinique
              - `MR` — Mauritania
              - `MS` — Montserrat
              - `MT` — Malta
              - `MU` — Mauritius
              - `MV` — Maldives
              - `MW` — Malawi
              - `MX` — Mexico
              - `MY` — Malaysia
              - `MZ` — Mozambique
              - `NA` — Namibia
              - `NC` — New Caledonia
              - `NE` — Niger
              - `NF` — Norfolk Island
              - `NG` — Nigeria
              - `NL` — Netherlands
              - `NO` — Norway
              - `NP` — Nepal
              - `NR` — Nauru
              - `NU` — Niue
              - `NZ` — New Zealand
              - `OM` — Oman
              - `PA` — Panama
              - `PE` — Peru
              - `PF` — French Polynesia
              - `PG` — Papua New Guinea
              - `PH` — Philippines
              - `PK` — Pakistan
              - `PL` — Poland
              - `PM` — Saint Pierre and Miquelon
              - `PN` — Pitcairn
              - `PR` — Puerto Rico
              - `PS` — Palestinian territories
              - `PT` — Portugal
              - `PW` — Palau
              - `PY` — Paraguay
              - `QA` — Qatar
              - `RE` — Reunion
              - `RO` — Romania
              - `RS` — Republic of Serbia
              - `RW` — Rwanda
              - `SA` — Saudi Arabia
              - `SB` — Solomon Islands
              - `SC` — Seychelles
              - `SE` — Sweden
              - `SG` — Singapore
              - `SH` — Saint Helena
              - `SI` — Slovenia
              - `SJ` — Svalbard and Jan Mayen
              - `SK` — Slovakia
              - `SL` — Sierra Leone
              - `SM` — San Marino
              - `SN` — Senegal
              - `SR` — Suriname
              - `ST` — São Tomé and Príncipe
              - `SV` — El Salvador
              - `SX` — Sint Maarten
              - `SZ` — Swaziland
              - `TC` — Turks and Caicos Islands
              - `TD` — Chad
              - `TF` — French Southern and Antarctic Lands
              - `TG` — Togo
              - `TH` — Thailand
              - `TJ` — Tajikistan
              - `TK` — Tokelau
              - `TL` — Timor-Leste
              - `TM` — Turkmenistan
              - `TN` — Tunisia
              - `TO` — Tonga
              - `TR` — Turkey
              - `TT` — Trinidad and Tobago
              - `TV` — Tuvalu
              - `TW` — Taiwan
              - `TZ` — Tanzania
              - `UA` — Ukraine
              - `UG` — Uganda
              - `UM` — United States Minor Outlying Islands
              - `US` — United States
              - `UY` — Uruguay
              - `UZ` — Uzbekistan
              - `VA` — Holy See (Vatican City)
              - `VC` — Saint Vincent and the Grenadines
              - `VG` — British Virgin Islands
              - `VI` — U.S. Virgin Islands
              - `VN` — Vietnam
              - `VU` — Vanuatu
              - `WF` — Wallis and Futuna
              - `WS` — Samoa
              - `XK` — Kosovo
              - `YT` — Mayotte
              - `ZA` — South Africa
              - `ZM` — Zambia
            - string — Two-letter code for a country that Paddle does not support sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
              - `AF` — Afghanistan
              - `AQ` — Antarctica
              - `AN` — Netherlands Antilles. Withdrawn ISO 3166-1 code, succeeded by BQ, CW and SX.
              - `BY` — Belarus
              - `CD` — Democratic Republic of Congo
              - `CF` — Central African Republic
              - `CU` — Cuba
              - `CS` — Serbia and Montenegro. Withdrawn ISO 3166-1 code, succeeded by RS and ME.
              - `HT` — Haiti
              - `IR` — Iran
              - `KP` — North Korea
              - `LY` — Libya
              - `ML` — Mali
              - `MM` — Myanmar (Burma)
              - `NI` — Nicaragua
              - `RU` — Russia
              - `SO` — Somalia
              - `SS` — South Sudan
              - `SD` — Sudan
              - `SY` — Syria
              - `VE` — Venezuela
              - `YE` — Yemen
              - `ZW` — Zimbabwe
          - `unit_price`: object (required) — Override price. This price applies to customers located in the countries for this unit price override.
            - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
            - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
              - `USD` — United States Dollar
              - `EUR` — Euro
              - `GBP` — Pound Sterling
              - `JPY` — Japanese Yen
              - `AUD` — Australian Dollar
              - `CAD` — Canadian Dollar
              - `CHF` — Swiss Franc
              - `HKD` — Hong Kong Dollar
              - `SGD` — Singapore Dollar
              - `SEK` — Swedish Krona
              - `ARS` — Argentine Peso
              - `BRL` — Brazilian Real
              - `CLP` — Chilean Peso
              - `CNY` — Chinese Yuan
              - `COP` — Colombian Peso
              - `CZK` — Czech Koruna
              - `DKK` — Danish Krone
              - `HUF` — Hungarian Forint
              - `ILS` — Israeli Shekel
              - `INR` — Indian Rupee
              - `KRW` — South Korean Won
              - `MXN` — Mexican Peso
              - `NOK` — Norwegian Krone
              - `NZD` — New Zealand Dollar
              - `PEN` — Peruvian Sol
              - `PLN` — Polish Zloty
              - `RUB` — Russian Ruble
              - `THB` — Thai Baht
              - `TRY` — Turkish Lira
              - `TWD` — New Taiwan Dollar
              - `UAH` — Ukrainian Hryvnia
              - `VND` — Vietnamese Dong
              - `ZAR` — South African Rand
        - `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.
          - `minimum`: integer (required) — Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. (Range: 1–999999999; default: `1`)
          - `maximum`: integer (required) — Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. (Range: 1–999999999; default: `100`)
        - `custom_data`: object | null — Your own structured key-value data.
        - `product`: object (required) — Product object for a non-catalog item to charge for.
          - `name`: string (required) — Name of this product. (Length: 1–200)
          - `description`: string | null — Short description for this product. (Max length: 2048)
          - `tax_category`: string (required) — Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account.
            - `digital-goods` — Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered.
            - `ebooks` — Digital books and educational material which is sold with permanent rights for use by the customer.
            - `implementation-services` — Remote configuration, set-up, and integrating software on behalf of a customer.
            - `professional-services` — Services that involve the application of your expertise and specialized knowledge of a software product.
            - `saas` — Products that allow users to connect to and use online or cloud-based applications over the Internet.
            - `software-programming-services` — Services that can be used to customize and white label software products.
            - `standard` — Software products that are pre-written and can be downloaded and installed onto a local device.
            - `training-services` — Training and education services related to software products.
            - `website-hosting` — Cloud storage service for personal or corporate information, assets, or intellectual property.
          - `image_url` — Image for this product. Included in the checkout and on some customer documents.
            - Image Url — A URL to an image.
            - Empty String
          - `custom_data`: object | null — Your own structured key-value data.
- Country and ZIP/postal code — Paddle uses the country and ZIP code (where supplied) to calculate totals.
  - `customer_id`: string | null — Paddle ID of the customer that this transaction preview is for, prefixed with `ctm_`. (pattern: `^ctm_[a-z\d]{26}$`)
  - `currency_code`: string | null — Supported three-letter ISO 4217 currency code.
    - `USD` — United States Dollar
    - `EUR` — Euro
    - `GBP` — Pound Sterling
    - `JPY` — Japanese Yen
    - `AUD` — Australian Dollar
    - `CAD` — Canadian Dollar
    - `CHF` — Swiss Franc
    - `HKD` — Hong Kong Dollar
    - `SGD` — Singapore Dollar
    - `SEK` — Swedish Krona
    - `ARS` — Argentine Peso
    - `BRL` — Brazilian Real
    - `CLP` — Chilean Peso
    - `CNY` — Chinese Yuan
    - `COP` — Colombian Peso
    - `CZK` — Czech Koruna
    - `DKK` — Danish Krone
    - `HUF` — Hungarian Forint
    - `ILS` — Israeli Shekel
    - `INR` — Indian Rupee
    - `KRW` — South Korean Won
    - `MXN` — Mexican Peso
    - `NOK` — Norwegian Krone
    - `NZD` — New Zealand Dollar
    - `PEN` — Peruvian Sol
    - `PLN` — Polish Zloty
    - `RUB` — Russian Ruble
    - `THB` — Thai Baht
    - `TRY` — Turkish Lira
    - `TWD` — New Taiwan Dollar
    - `UAH` — Ukrainian Hryvnia
    - `VND` — Vietnamese Dong
    - `ZAR` — South African Rand
  - `discount_id`: string | null — Paddle ID of the discount to apply to this transaction preview, prefixed with `dsc_`. (pattern: `^dsc_[a-z\d]{26}$`)
  - `discount`: object | null — Apply a non-catalog discount to a transaction. Send one of `discount_id` or `discount`.
    - `description`: string (required) — Short description for this discount for your reference. Not shown to customers. (Length: 1–500)
    - `type`: string (required) — Type of discount. Determines how this discount impacts the checkout or transaction total.
      - `flat` — Discounts a checkout or transaction by a flat amount, for example -$100. Requires `currency_code`.
      - `flat_per_seat` — Discounts a checkout or transaction by a flat amount per unit, for example -$100 per user. Requires `currency_code`.
      - `percentage` — Discounts a checkout or transaction by a percentage of the total, for example -10%. Maximum 100%.
    - `amount`: string (required) — Amount to discount by. For `percentage` discounts, must be an amount between `0.01` and `100`. For `flat` and `flat_per_seat` discounts, amount in the lowest denomination for a currency.
    - `recur`: boolean — Whether this discount applies for multiple subscription billing periods (`true`) or not (`false`). If omitted, defaults to `false`. (default: `false`)
    - `maximum_recurring_intervals`: integer | null — Number of subscription billing periods that this discount recurs for. Requires `recur`. `null` if this discount recurs forever.

Subscription renewals, midcycle changes, and one-time charges billed to a subscription aren't considered a redemption. `times_used` is not incremented in these cases. (Min: 1)
    - `custom_data`: object | null — Your own structured key-value data.
    - `restrict_to`: array | null — Product or price IDs that this discount is for. When including a product ID, all prices for that product can be discounted. `null` if this discount applies to all products and prices. (Items: unique)
  - `ignore_trials`: boolean — Whether trials should be ignored for transaction preview calculations.

By default, recurring items with trials are considered to have a zero charge when previewing. Set to `true` to disable this. (default: `false`)
  - `items`: array (required) — List of items to preview charging for. You can preview charging for items that you've added to your catalog by passing the Paddle ID of an existing price entity, or you can preview charging for non-catalog items by passing a price object.

Non-catalog items can be for existing products, or you can pass a product object as part of your price to preview charging for a non-catalog product.
    - Catalog item — Add a catalog item to a transaction. In this case, the product and price that you're billing for exist in your product catalog in Paddle.
      - `quantity`: integer (required) — Quantity of this item on the transaction.
      - `include_in_totals`: boolean — Whether this item should be included in totals for this transaction preview. Typically used to exclude one-time charges from calculations. (default: `true`)
      - `price_id`: string (required) — Paddle ID of an existing catalog price to preview charging for, prefixed with `pri_`. (pattern: `^pri_[a-z\d]{26}$`)
    - Non-catalog price for an existing product — Add a non-catalog price for an existing product in your catalog to a transaction. In this case, the product you're billing for is a catalog product, but you charge a specific price for it.
      - `quantity`: integer (required) — Quantity of this item on the transaction.
      - `include_in_totals`: boolean — Whether this item should be included in totals for this transaction preview. Typically used to exclude one-time charges from calculations. (default: `true`)
      - `price`: object (required) — Price object for a non-catalog item to preview charging for. Include a `product_id` to relate this non-catalog price to an existing catalog price.
        - `description`: string (required) — Internal description for this price, not shown to customers. Typically notes for your team. (Length: 2–500)
        - `name`: string | null — Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. (Length: 1–150)
        - `billing_cycle`: object | null — How often this price should be charged. `null` if price is non-recurring (one-time).
          - `interval`: string (required) — Unit of time.
            - `day`
            - `week`
            - `month`
            - `year`
          - `frequency`: integer (required) — Amount of time. (Min: 1)
        - `trial_period`: object | null — 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`.
          - `interval`: string (required) — Unit of time.
            - `day`
            - `week`
            - `month`
            - `year`
          - `frequency`: integer (required) — Amount of time. (Min: 1)
        - `tax_mode`: string — How tax is calculated for this price. (default: `"account_setting"`)
          - `account_setting` — Prices use the setting from your account.
          - `external` — Prices are exclusive of tax.
          - `internal` — Prices are inclusive of tax.
          - `location` — Prices are inclusive or exclusive of tax, depending on the country of the transaction.
        - `unit_price`: object (required) — Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`.
          - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
          - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
            - `USD` — United States Dollar
            - `EUR` — Euro
            - `GBP` — Pound Sterling
            - `JPY` — Japanese Yen
            - `AUD` — Australian Dollar
            - `CAD` — Canadian Dollar
            - `CHF` — Swiss Franc
            - `HKD` — Hong Kong Dollar
            - `SGD` — Singapore Dollar
            - `SEK` — Swedish Krona
            - `ARS` — Argentine Peso
            - `BRL` — Brazilian Real
            - `CLP` — Chilean Peso
            - `CNY` — Chinese Yuan
            - `COP` — Colombian Peso
            - `CZK` — Czech Koruna
            - `DKK` — Danish Krone
            - `HUF` — Hungarian Forint
            - `ILS` — Israeli Shekel
            - `INR` — Indian Rupee
            - `KRW` — South Korean Won
            - `MXN` — Mexican Peso
            - `NOK` — Norwegian Krone
            - `NZD` — New Zealand Dollar
            - `PEN` — Peruvian Sol
            - `PLN` — Polish Zloty
            - `RUB` — Russian Ruble
            - `THB` — Thai Baht
            - `TRY` — Turkish Lira
            - `TWD` — New Taiwan Dollar
            - `UAH` — Ukrainian Hryvnia
            - `VND` — Vietnamese Dong
            - `ZAR` — South African Rand
        - `unit_price_overrides`: array — List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. (Items: max 250)
          - `country_codes`: array (required) — Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. (Items: min 1, unique)
            - string — Two-letter code for a country that Paddle supports sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
              - `AD` — Andorra
              - `AE` — United Arab Emirates
              - `AG` — Antigua and Barbuda
              - `AI` — Anguilla
              - `AL` — Albania
              - `AM` — Armenia
              - `AO` — Angola
              - `AR` — Argentina
              - `AS` — American Samoa
              - `AT` — Austria
              - `AU` — Australia
              - `AW` — Aruba
              - `AX` — Åland Islands
              - `AZ` — Azerbaijan
              - `BA` — Bosnia and Herzegovina
              - `BB` — Barbados
              - `BD` — Bangladesh
              - `BE` — Belgium
              - `BF` — Burkina Faso
              - `BG` — Bulgaria
              - `BH` — Bahrain
              - `BI` — Burundi
              - `BJ` — Benin
              - `BL` — Saint Barthélemy
              - `BM` — Bermuda
              - `BN` — Brunei
              - `BO` — Bolivia
              - `BQ` — Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba)
              - `BR` — Brazil
              - `BS` — Bahamas
              - `BT` — Bhutan
              - `BV` — Bouvet Island
              - `BW` — Botswana
              - `BZ` — Belize
              - `CA` — Canada
              - `CC` — Cocos Islands
              - `CG` — Republic of Congo
              - `CH` — Switzerland
              - `CI` — Côte d'Ivoire (Ivory Coast)
              - `CK` — Cook Islands
              - `CL` — Chile
              - `CM` — Cameroon
              - `CN` — China
              - `CO` — Colombia
              - `CR` — Costa Rica
              - `CV` — Cape Verde
              - `CW` — Curaçao
              - `CX` — Christmas Island
              - `CY` — Cyprus
              - `CZ` — Czechia (Czech Republic)
              - `DE` — Germany
              - `DJ` — Djibouti
              - `DK` — Denmark
              - `DM` — Dominica
              - `DO` — Dominican Republic
              - `DZ` — Algeria
              - `EC` — Ecuador
              - `EE` — Estonia
              - `EG` — Egypt
              - `EH` — Western Sahara
              - `ER` — Eritrea
              - `ES` — Spain
              - `ET` — Ethiopia
              - `FI` — Finland
              - `FJ` — Fiji
              - `FK` — Falkland Islands
              - `FM` — Micronesia
              - `FO` — Faroe Islands
              - `FR` — France
              - `GA` — Gabon
              - `GB` — United Kingdom
              - `GD` — Grenada
              - `GE` — Georgia
              - `GF` — French Guiana
              - `GG` — Guernsey
              - `GH` — Ghana
              - `GI` — Gibraltar
              - `GL` — Greenland
              - `GM` — Gambia
              - `GN` — Guinea
              - `GP` — Guadeloupe
              - `GQ` — Equatorial Guinea
              - `GR` — Greece
              - `GS` — South Georgia and the South Sandwich Islands
              - `GT` — Guatemala
              - `GU` — Guam
              - `GW` — Guinea-Bissau
              - `GY` — Guyana
              - `HK` — Hong Kong
              - `HM` — Heard Island and McDonald Islands
              - `HN` — Honduras
              - `HR` — Croatia
              - `HU` — Hungary
              - `ID` — Indonesia
              - `IE` — Ireland
              - `IL` — Israel
              - `IM` — Isle of Man
              - `IN` — India
              - `IO` — British Indian Ocean Territory
              - `IQ` — Iraq
              - `IS` — Iceland
              - `IT` — Italy
              - `JE` — Jersey
              - `JM` — Jamaica
              - `JO` — Jordan
              - `JP` — Japan
              - `KE` — Kenya
              - `KG` — Kyrgyzstan
              - `KH` — Cambodia
              - `KI` — Kiribati
              - `KM` — Comoros
              - `KN` — Saint Kitts and Nevis
              - `KR` — South Korea
              - `KW` — Kuwait
              - `KY` — Cayman Islands
              - `KZ` — Kazakhstan
              - `LA` — Lao People's Democratic Republic (Laos)
              - `LB` — Lebanon
              - `LC` — Saint Lucia
              - `LI` — Liechtenstein
              - `LK` — Sri Lanka
              - `LR` — Liberia
              - `LS` — Lesotho
              - `LT` — Lithuania
              - `LU` — Luxembourg
              - `LV` — Latvia
              - `MA` — Morocco
              - `MC` — Monaco
              - `MD` — Moldova
              - `ME` — Montenegro
              - `MF` — Saint Martin
              - `MG` — Madagascar
              - `MH` — Marshall Islands
              - `MK` — Macedonia
              - `MN` — Mongolia
              - `MO` — Macao
              - `MP` — Northern Mariana Islands
              - `MQ` — Martinique
              - `MR` — Mauritania
              - `MS` — Montserrat
              - `MT` — Malta
              - `MU` — Mauritius
              - `MV` — Maldives
              - `MW` — Malawi
              - `MX` — Mexico
              - `MY` — Malaysia
              - `MZ` — Mozambique
              - `NA` — Namibia
              - `NC` — New Caledonia
              - `NE` — Niger
              - `NF` — Norfolk Island
              - `NG` — Nigeria
              - `NL` — Netherlands
              - `NO` — Norway
              - `NP` — Nepal
              - `NR` — Nauru
              - `NU` — Niue
              - `NZ` — New Zealand
              - `OM` — Oman
              - `PA` — Panama
              - `PE` — Peru
              - `PF` — French Polynesia
              - `PG` — Papua New Guinea
              - `PH` — Philippines
              - `PK` — Pakistan
              - `PL` — Poland
              - `PM` — Saint Pierre and Miquelon
              - `PN` — Pitcairn
              - `PR` — Puerto Rico
              - `PS` — Palestinian territories
              - `PT` — Portugal
              - `PW` — Palau
              - `PY` — Paraguay
              - `QA` — Qatar
              - `RE` — Reunion
              - `RO` — Romania
              - `RS` — Republic of Serbia
              - `RW` — Rwanda
              - `SA` — Saudi Arabia
              - `SB` — Solomon Islands
              - `SC` — Seychelles
              - `SE` — Sweden
              - `SG` — Singapore
              - `SH` — Saint Helena
              - `SI` — Slovenia
              - `SJ` — Svalbard and Jan Mayen
              - `SK` — Slovakia
              - `SL` — Sierra Leone
              - `SM` — San Marino
              - `SN` — Senegal
              - `SR` — Suriname
              - `ST` — São Tomé and Príncipe
              - `SV` — El Salvador
              - `SX` — Sint Maarten
              - `SZ` — Swaziland
              - `TC` — Turks and Caicos Islands
              - `TD` — Chad
              - `TF` — French Southern and Antarctic Lands
              - `TG` — Togo
              - `TH` — Thailand
              - `TJ` — Tajikistan
              - `TK` — Tokelau
              - `TL` — Timor-Leste
              - `TM` — Turkmenistan
              - `TN` — Tunisia
              - `TO` — Tonga
              - `TR` — Turkey
              - `TT` — Trinidad and Tobago
              - `TV` — Tuvalu
              - `TW` — Taiwan
              - `TZ` — Tanzania
              - `UA` — Ukraine
              - `UG` — Uganda
              - `UM` — United States Minor Outlying Islands
              - `US` — United States
              - `UY` — Uruguay
              - `UZ` — Uzbekistan
              - `VA` — Holy See (Vatican City)
              - `VC` — Saint Vincent and the Grenadines
              - `VG` — British Virgin Islands
              - `VI` — U.S. Virgin Islands
              - `VN` — Vietnam
              - `VU` — Vanuatu
              - `WF` — Wallis and Futuna
              - `WS` — Samoa
              - `XK` — Kosovo
              - `YT` — Mayotte
              - `ZA` — South Africa
              - `ZM` — Zambia
            - string — Two-letter code for a country that Paddle does not support sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
              - `AF` — Afghanistan
              - `AQ` — Antarctica
              - `AN` — Netherlands Antilles. Withdrawn ISO 3166-1 code, succeeded by BQ, CW and SX.
              - `BY` — Belarus
              - `CD` — Democratic Republic of Congo
              - `CF` — Central African Republic
              - `CU` — Cuba
              - `CS` — Serbia and Montenegro. Withdrawn ISO 3166-1 code, succeeded by RS and ME.
              - `HT` — Haiti
              - `IR` — Iran
              - `KP` — North Korea
              - `LY` — Libya
              - `ML` — Mali
              - `MM` — Myanmar (Burma)
              - `NI` — Nicaragua
              - `RU` — Russia
              - `SO` — Somalia
              - `SS` — South Sudan
              - `SD` — Sudan
              - `SY` — Syria
              - `VE` — Venezuela
              - `YE` — Yemen
              - `ZW` — Zimbabwe
          - `unit_price`: object (required) — Override price. This price applies to customers located in the countries for this unit price override.
            - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
            - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
              - `USD` — United States Dollar
              - `EUR` — Euro
              - `GBP` — Pound Sterling
              - `JPY` — Japanese Yen
              - `AUD` — Australian Dollar
              - `CAD` — Canadian Dollar
              - `CHF` — Swiss Franc
              - `HKD` — Hong Kong Dollar
              - `SGD` — Singapore Dollar
              - `SEK` — Swedish Krona
              - `ARS` — Argentine Peso
              - `BRL` — Brazilian Real
              - `CLP` — Chilean Peso
              - `CNY` — Chinese Yuan
              - `COP` — Colombian Peso
              - `CZK` — Czech Koruna
              - `DKK` — Danish Krone
              - `HUF` — Hungarian Forint
              - `ILS` — Israeli Shekel
              - `INR` — Indian Rupee
              - `KRW` — South Korean Won
              - `MXN` — Mexican Peso
              - `NOK` — Norwegian Krone
              - `NZD` — New Zealand Dollar
              - `PEN` — Peruvian Sol
              - `PLN` — Polish Zloty
              - `RUB` — Russian Ruble
              - `THB` — Thai Baht
              - `TRY` — Turkish Lira
              - `TWD` — New Taiwan Dollar
              - `UAH` — Ukrainian Hryvnia
              - `VND` — Vietnamese Dong
              - `ZAR` — South African Rand
        - `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.
          - `minimum`: integer (required) — Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. (Range: 1–999999999; default: `1`)
          - `maximum`: integer (required) — Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. (Range: 1–999999999; default: `100`)
        - `custom_data`: object | null — Your own structured key-value data.
        - `product_id`: string (required) — Paddle ID for the product that this price is for, prefixed with `pro_`. (pattern: `^pro_[a-z\d]{26}$`)
    - Non-catalog price and product — Add a non-catalog price for a non-catalog product in your catalog to a transaction. In this case, the product and price that you're billing for are specific to this transaction.
      - `quantity`: integer (required) — Quantity of this item on the transaction.
      - `include_in_totals`: boolean — Whether this item should be included in totals for this transaction preview. Typically used to exclude one-time charges from calculations. (default: `true`)
      - `price`: object (required) — Price object for a non-catalog item to preview charging for. Include a `product` object to create a non-catalog product for this non-catalog price.
        - `description`: string (required) — Internal description for this price, not shown to customers. Typically notes for your team. (Length: 2–500)
        - `name`: string | null — Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. (Length: 1–150)
        - `billing_cycle`: object | null — How often this price should be charged. `null` if price is non-recurring (one-time).
          - `interval`: string (required) — Unit of time.
            - `day`
            - `week`
            - `month`
            - `year`
          - `frequency`: integer (required) — Amount of time. (Min: 1)
        - `trial_period`: object | null — 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`.
          - `interval`: string (required) — Unit of time.
            - `day`
            - `week`
            - `month`
            - `year`
          - `frequency`: integer (required) — Amount of time. (Min: 1)
        - `tax_mode`: string — How tax is calculated for this price. (default: `"account_setting"`)
          - `account_setting` — Prices use the setting from your account.
          - `external` — Prices are exclusive of tax.
          - `internal` — Prices are inclusive of tax.
          - `location` — Prices are inclusive or exclusive of tax, depending on the country of the transaction.
        - `unit_price`: object (required) — Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`.
          - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
          - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
            - `USD` — United States Dollar
            - `EUR` — Euro
            - `GBP` — Pound Sterling
            - `JPY` — Japanese Yen
            - `AUD` — Australian Dollar
            - `CAD` — Canadian Dollar
            - `CHF` — Swiss Franc
            - `HKD` — Hong Kong Dollar
            - `SGD` — Singapore Dollar
            - `SEK` — Swedish Krona
            - `ARS` — Argentine Peso
            - `BRL` — Brazilian Real
            - `CLP` — Chilean Peso
            - `CNY` — Chinese Yuan
            - `COP` — Colombian Peso
            - `CZK` — Czech Koruna
            - `DKK` — Danish Krone
            - `HUF` — Hungarian Forint
            - `ILS` — Israeli Shekel
            - `INR` — Indian Rupee
            - `KRW` — South Korean Won
            - `MXN` — Mexican Peso
            - `NOK` — Norwegian Krone
            - `NZD` — New Zealand Dollar
            - `PEN` — Peruvian Sol
            - `PLN` — Polish Zloty
            - `RUB` — Russian Ruble
            - `THB` — Thai Baht
            - `TRY` — Turkish Lira
            - `TWD` — New Taiwan Dollar
            - `UAH` — Ukrainian Hryvnia
            - `VND` — Vietnamese Dong
            - `ZAR` — South African Rand
        - `unit_price_overrides`: array — List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. (Items: max 250)
          - `country_codes`: array (required) — Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. (Items: min 1, unique)
            - string — Two-letter code for a country that Paddle supports sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
              - `AD` — Andorra
              - `AE` — United Arab Emirates
              - `AG` — Antigua and Barbuda
              - `AI` — Anguilla
              - `AL` — Albania
              - `AM` — Armenia
              - `AO` — Angola
              - `AR` — Argentina
              - `AS` — American Samoa
              - `AT` — Austria
              - `AU` — Australia
              - `AW` — Aruba
              - `AX` — Åland Islands
              - `AZ` — Azerbaijan
              - `BA` — Bosnia and Herzegovina
              - `BB` — Barbados
              - `BD` — Bangladesh
              - `BE` — Belgium
              - `BF` — Burkina Faso
              - `BG` — Bulgaria
              - `BH` — Bahrain
              - `BI` — Burundi
              - `BJ` — Benin
              - `BL` — Saint Barthélemy
              - `BM` — Bermuda
              - `BN` — Brunei
              - `BO` — Bolivia
              - `BQ` — Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba)
              - `BR` — Brazil
              - `BS` — Bahamas
              - `BT` — Bhutan
              - `BV` — Bouvet Island
              - `BW` — Botswana
              - `BZ` — Belize
              - `CA` — Canada
              - `CC` — Cocos Islands
              - `CG` — Republic of Congo
              - `CH` — Switzerland
              - `CI` — Côte d'Ivoire (Ivory Coast)
              - `CK` — Cook Islands
              - `CL` — Chile
              - `CM` — Cameroon
              - `CN` — China
              - `CO` — Colombia
              - `CR` — Costa Rica
              - `CV` — Cape Verde
              - `CW` — Curaçao
              - `CX` — Christmas Island
              - `CY` — Cyprus
              - `CZ` — Czechia (Czech Republic)
              - `DE` — Germany
              - `DJ` — Djibouti
              - `DK` — Denmark
              - `DM` — Dominica
              - `DO` — Dominican Republic
              - `DZ` — Algeria
              - `EC` — Ecuador
              - `EE` — Estonia
              - `EG` — Egypt
              - `EH` — Western Sahara
              - `ER` — Eritrea
              - `ES` — Spain
              - `ET` — Ethiopia
              - `FI` — Finland
              - `FJ` — Fiji
              - `FK` — Falkland Islands
              - `FM` — Micronesia
              - `FO` — Faroe Islands
              - `FR` — France
              - `GA` — Gabon
              - `GB` — United Kingdom
              - `GD` — Grenada
              - `GE` — Georgia
              - `GF` — French Guiana
              - `GG` — Guernsey
              - `GH` — Ghana
              - `GI` — Gibraltar
              - `GL` — Greenland
              - `GM` — Gambia
              - `GN` — Guinea
              - `GP` — Guadeloupe
              - `GQ` — Equatorial Guinea
              - `GR` — Greece
              - `GS` — South Georgia and the South Sandwich Islands
              - `GT` — Guatemala
              - `GU` — Guam
              - `GW` — Guinea-Bissau
              - `GY` — Guyana
              - `HK` — Hong Kong
              - `HM` — Heard Island and McDonald Islands
              - `HN` — Honduras
              - `HR` — Croatia
              - `HU` — Hungary
              - `ID` — Indonesia
              - `IE` — Ireland
              - `IL` — Israel
              - `IM` — Isle of Man
              - `IN` — India
              - `IO` — British Indian Ocean Territory
              - `IQ` — Iraq
              - `IS` — Iceland
              - `IT` — Italy
              - `JE` — Jersey
              - `JM` — Jamaica
              - `JO` — Jordan
              - `JP` — Japan
              - `KE` — Kenya
              - `KG` — Kyrgyzstan
              - `KH` — Cambodia
              - `KI` — Kiribati
              - `KM` — Comoros
              - `KN` — Saint Kitts and Nevis
              - `KR` — South Korea
              - `KW` — Kuwait
              - `KY` — Cayman Islands
              - `KZ` — Kazakhstan
              - `LA` — Lao People's Democratic Republic (Laos)
              - `LB` — Lebanon
              - `LC` — Saint Lucia
              - `LI` — Liechtenstein
              - `LK` — Sri Lanka
              - `LR` — Liberia
              - `LS` — Lesotho
              - `LT` — Lithuania
              - `LU` — Luxembourg
              - `LV` — Latvia
              - `MA` — Morocco
              - `MC` — Monaco
              - `MD` — Moldova
              - `ME` — Montenegro
              - `MF` — Saint Martin
              - `MG` — Madagascar
              - `MH` — Marshall Islands
              - `MK` — Macedonia
              - `MN` — Mongolia
              - `MO` — Macao
              - `MP` — Northern Mariana Islands
              - `MQ` — Martinique
              - `MR` — Mauritania
              - `MS` — Montserrat
              - `MT` — Malta
              - `MU` — Mauritius
              - `MV` — Maldives
              - `MW` — Malawi
              - `MX` — Mexico
              - `MY` — Malaysia
              - `MZ` — Mozambique
              - `NA` — Namibia
              - `NC` — New Caledonia
              - `NE` — Niger
              - `NF` — Norfolk Island
              - `NG` — Nigeria
              - `NL` — Netherlands
              - `NO` — Norway
              - `NP` — Nepal
              - `NR` — Nauru
              - `NU` — Niue
              - `NZ` — New Zealand
              - `OM` — Oman
              - `PA` — Panama
              - `PE` — Peru
              - `PF` — French Polynesia
              - `PG` — Papua New Guinea
              - `PH` — Philippines
              - `PK` — Pakistan
              - `PL` — Poland
              - `PM` — Saint Pierre and Miquelon
              - `PN` — Pitcairn
              - `PR` — Puerto Rico
              - `PS` — Palestinian territories
              - `PT` — Portugal
              - `PW` — Palau
              - `PY` — Paraguay
              - `QA` — Qatar
              - `RE` — Reunion
              - `RO` — Romania
              - `RS` — Republic of Serbia
              - `RW` — Rwanda
              - `SA` — Saudi Arabia
              - `SB` — Solomon Islands
              - `SC` — Seychelles
              - `SE` — Sweden
              - `SG` — Singapore
              - `SH` — Saint Helena
              - `SI` — Slovenia
              - `SJ` — Svalbard and Jan Mayen
              - `SK` — Slovakia
              - `SL` — Sierra Leone
              - `SM` — San Marino
              - `SN` — Senegal
              - `SR` — Suriname
              - `ST` — São Tomé and Príncipe
              - `SV` — El Salvador
              - `SX` — Sint Maarten
              - `SZ` — Swaziland
              - `TC` — Turks and Caicos Islands
              - `TD` — Chad
              - `TF` — French Southern and Antarctic Lands
              - `TG` — Togo
              - `TH` — Thailand
              - `TJ` — Tajikistan
              - `TK` — Tokelau
              - `TL` — Timor-Leste
              - `TM` — Turkmenistan
              - `TN` — Tunisia
              - `TO` — Tonga
              - `TR` — Turkey
              - `TT` — Trinidad and Tobago
              - `TV` — Tuvalu
              - `TW` — Taiwan
              - `TZ` — Tanzania
              - `UA` — Ukraine
              - `UG` — Uganda
              - `UM` — United States Minor Outlying Islands
              - `US` — United States
              - `UY` — Uruguay
              - `UZ` — Uzbekistan
              - `VA` — Holy See (Vatican City)
              - `VC` — Saint Vincent and the Grenadines
              - `VG` — British Virgin Islands
              - `VI` — U.S. Virgin Islands
              - `VN` — Vietnam
              - `VU` — Vanuatu
              - `WF` — Wallis and Futuna
              - `WS` — Samoa
              - `XK` — Kosovo
              - `YT` — Mayotte
              - `ZA` — South Africa
              - `ZM` — Zambia
            - string — Two-letter code for a country that Paddle does not support sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
              - `AF` — Afghanistan
              - `AQ` — Antarctica
              - `AN` — Netherlands Antilles. Withdrawn ISO 3166-1 code, succeeded by BQ, CW and SX.
              - `BY` — Belarus
              - `CD` — Democratic Republic of Congo
              - `CF` — Central African Republic
              - `CU` — Cuba
              - `CS` — Serbia and Montenegro. Withdrawn ISO 3166-1 code, succeeded by RS and ME.
              - `HT` — Haiti
              - `IR` — Iran
              - `KP` — North Korea
              - `LY` — Libya
              - `ML` — Mali
              - `MM` — Myanmar (Burma)
              - `NI` — Nicaragua
              - `RU` — Russia
              - `SO` — Somalia
              - `SS` — South Sudan
              - `SD` — Sudan
              - `SY` — Syria
              - `VE` — Venezuela
              - `YE` — Yemen
              - `ZW` — Zimbabwe
          - `unit_price`: object (required) — Override price. This price applies to customers located in the countries for this unit price override.
            - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
            - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
              - `USD` — United States Dollar
              - `EUR` — Euro
              - `GBP` — Pound Sterling
              - `JPY` — Japanese Yen
              - `AUD` — Australian Dollar
              - `CAD` — Canadian Dollar
              - `CHF` — Swiss Franc
              - `HKD` — Hong Kong Dollar
              - `SGD` — Singapore Dollar
              - `SEK` — Swedish Krona
              - `ARS` — Argentine Peso
              - `BRL` — Brazilian Real
              - `CLP` — Chilean Peso
              - `CNY` — Chinese Yuan
              - `COP` — Colombian Peso
              - `CZK` — Czech Koruna
              - `DKK` — Danish Krone
              - `HUF` — Hungarian Forint
              - `ILS` — Israeli Shekel
              - `INR` — Indian Rupee
              - `KRW` — South Korean Won
              - `MXN` — Mexican Peso
              - `NOK` — Norwegian Krone
              - `NZD` — New Zealand Dollar
              - `PEN` — Peruvian Sol
              - `PLN` — Polish Zloty
              - `RUB` — Russian Ruble
              - `THB` — Thai Baht
              - `TRY` — Turkish Lira
              - `TWD` — New Taiwan Dollar
              - `UAH` — Ukrainian Hryvnia
              - `VND` — Vietnamese Dong
              - `ZAR` — South African Rand
        - `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.
          - `minimum`: integer (required) — Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. (Range: 1–999999999; default: `1`)
          - `maximum`: integer (required) — Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. (Range: 1–999999999; default: `100`)
        - `custom_data`: object | null — Your own structured key-value data.
        - `product`: object (required) — Product object for a non-catalog item to charge for.
          - `name`: string (required) — Name of this product. (Length: 1–200)
          - `description`: string | null — Short description for this product. (Max length: 2048)
          - `tax_category`: string (required) — Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account.
            - `digital-goods` — Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered.
            - `ebooks` — Digital books and educational material which is sold with permanent rights for use by the customer.
            - `implementation-services` — Remote configuration, set-up, and integrating software on behalf of a customer.
            - `professional-services` — Services that involve the application of your expertise and specialized knowledge of a software product.
            - `saas` — Products that allow users to connect to and use online or cloud-based applications over the Internet.
            - `software-programming-services` — Services that can be used to customize and white label software products.
            - `standard` — Software products that are pre-written and can be downloaded and installed onto a local device.
            - `training-services` — Training and education services related to software products.
            - `website-hosting` — Cloud storage service for personal or corporate information, assets, or intellectual property.
          - `image_url` — Image for this product. Included in the checkout and on some customer documents.
            - Image Url — A URL to an image.
            - Empty String
          - `custom_data`: object | null — Your own structured key-value data.
  - `address`: object (required) — Address for this transaction preview.
    - `postal_code`: string | null — ZIP or postal code of this address. Include for more accurate tax calculations. (Max length: 200)
    - `country_code` (required) — Supported two-letter ISO 3166-1 alpha-2 country code for this address.
      - string — Two-letter code for a country that Paddle supports sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
        - `AD` — Andorra
        - `AE` — United Arab Emirates
        - `AG` — Antigua and Barbuda
        - `AI` — Anguilla
        - `AL` — Albania
        - `AM` — Armenia
        - `AO` — Angola
        - `AR` — Argentina
        - `AS` — American Samoa
        - `AT` — Austria
        - `AU` — Australia
        - `AW` — Aruba
        - `AX` — Åland Islands
        - `AZ` — Azerbaijan
        - `BA` — Bosnia and Herzegovina
        - `BB` — Barbados
        - `BD` — Bangladesh
        - `BE` — Belgium
        - `BF` — Burkina Faso
        - `BG` — Bulgaria
        - `BH` — Bahrain
        - `BI` — Burundi
        - `BJ` — Benin
        - `BL` — Saint Barthélemy
        - `BM` — Bermuda
        - `BN` — Brunei
        - `BO` — Bolivia
        - `BQ` — Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba)
        - `BR` — Brazil
        - `BS` — Bahamas
        - `BT` — Bhutan
        - `BV` — Bouvet Island
        - `BW` — Botswana
        - `BZ` — Belize
        - `CA` — Canada
        - `CC` — Cocos Islands
        - `CG` — Republic of Congo
        - `CH` — Switzerland
        - `CI` — Côte d'Ivoire (Ivory Coast)
        - `CK` — Cook Islands
        - `CL` — Chile
        - `CM` — Cameroon
        - `CN` — China
        - `CO` — Colombia
        - `CR` — Costa Rica
        - `CV` — Cape Verde
        - `CW` — Curaçao
        - `CX` — Christmas Island
        - `CY` — Cyprus
        - `CZ` — Czechia (Czech Republic)
        - `DE` — Germany
        - `DJ` — Djibouti
        - `DK` — Denmark
        - `DM` — Dominica
        - `DO` — Dominican Republic
        - `DZ` — Algeria
        - `EC` — Ecuador
        - `EE` — Estonia
        - `EG` — Egypt
        - `EH` — Western Sahara
        - `ER` — Eritrea
        - `ES` — Spain
        - `ET` — Ethiopia
        - `FI` — Finland
        - `FJ` — Fiji
        - `FK` — Falkland Islands
        - `FM` — Micronesia
        - `FO` — Faroe Islands
        - `FR` — France
        - `GA` — Gabon
        - `GB` — United Kingdom
        - `GD` — Grenada
        - `GE` — Georgia
        - `GF` — French Guiana
        - `GG` — Guernsey
        - `GH` — Ghana
        - `GI` — Gibraltar
        - `GL` — Greenland
        - `GM` — Gambia
        - `GN` — Guinea
        - `GP` — Guadeloupe
        - `GQ` — Equatorial Guinea
        - `GR` — Greece
        - `GS` — South Georgia and the South Sandwich Islands
        - `GT` — Guatemala
        - `GU` — Guam
        - `GW` — Guinea-Bissau
        - `GY` — Guyana
        - `HK` — Hong Kong
        - `HM` — Heard Island and McDonald Islands
        - `HN` — Honduras
        - `HR` — Croatia
        - `HU` — Hungary
        - `ID` — Indonesia
        - `IE` — Ireland
        - `IL` — Israel
        - `IM` — Isle of Man
        - `IN` — India
        - `IO` — British Indian Ocean Territory
        - `IQ` — Iraq
        - `IS` — Iceland
        - `IT` — Italy
        - `JE` — Jersey
        - `JM` — Jamaica
        - `JO` — Jordan
        - `JP` — Japan
        - `KE` — Kenya
        - `KG` — Kyrgyzstan
        - `KH` — Cambodia
        - `KI` — Kiribati
        - `KM` — Comoros
        - `KN` — Saint Kitts and Nevis
        - `KR` — South Korea
        - `KW` — Kuwait
        - `KY` — Cayman Islands
        - `KZ` — Kazakhstan
        - `LA` — Lao People's Democratic Republic (Laos)
        - `LB` — Lebanon
        - `LC` — Saint Lucia
        - `LI` — Liechtenstein
        - `LK` — Sri Lanka
        - `LR` — Liberia
        - `LS` — Lesotho
        - `LT` — Lithuania
        - `LU` — Luxembourg
        - `LV` — Latvia
        - `MA` — Morocco
        - `MC` — Monaco
        - `MD` — Moldova
        - `ME` — Montenegro
        - `MF` — Saint Martin
        - `MG` — Madagascar
        - `MH` — Marshall Islands
        - `MK` — Macedonia
        - `MN` — Mongolia
        - `MO` — Macao
        - `MP` — Northern Mariana Islands
        - `MQ` — Martinique
        - `MR` — Mauritania
        - `MS` — Montserrat
        - `MT` — Malta
        - `MU` — Mauritius
        - `MV` — Maldives
        - `MW` — Malawi
        - `MX` — Mexico
        - `MY` — Malaysia
        - `MZ` — Mozambique
        - `NA` — Namibia
        - `NC` — New Caledonia
        - `NE` — Niger
        - `NF` — Norfolk Island
        - `NG` — Nigeria
        - `NL` — Netherlands
        - `NO` — Norway
        - `NP` — Nepal
        - `NR` — Nauru
        - `NU` — Niue
        - `NZ` — New Zealand
        - `OM` — Oman
        - `PA` — Panama
        - `PE` — Peru
        - `PF` — French Polynesia
        - `PG` — Papua New Guinea
        - `PH` — Philippines
        - `PK` — Pakistan
        - `PL` — Poland
        - `PM` — Saint Pierre and Miquelon
        - `PN` — Pitcairn
        - `PR` — Puerto Rico
        - `PS` — Palestinian territories
        - `PT` — Portugal
        - `PW` — Palau
        - `PY` — Paraguay
        - `QA` — Qatar
        - `RE` — Reunion
        - `RO` — Romania
        - `RS` — Republic of Serbia
        - `RW` — Rwanda
        - `SA` — Saudi Arabia
        - `SB` — Solomon Islands
        - `SC` — Seychelles
        - `SE` — Sweden
        - `SG` — Singapore
        - `SH` — Saint Helena
        - `SI` — Slovenia
        - `SJ` — Svalbard and Jan Mayen
        - `SK` — Slovakia
        - `SL` — Sierra Leone
        - `SM` — San Marino
        - `SN` — Senegal
        - `SR` — Suriname
        - `ST` — São Tomé and Príncipe
        - `SV` — El Salvador
        - `SX` — Sint Maarten
        - `SZ` — Swaziland
        - `TC` — Turks and Caicos Islands
        - `TD` — Chad
        - `TF` — French Southern and Antarctic Lands
        - `TG` — Togo
        - `TH` — Thailand
        - `TJ` — Tajikistan
        - `TK` — Tokelau
        - `TL` — Timor-Leste
        - `TM` — Turkmenistan
        - `TN` — Tunisia
        - `TO` — Tonga
        - `TR` — Turkey
        - `TT` — Trinidad and Tobago
        - `TV` — Tuvalu
        - `TW` — Taiwan
        - `TZ` — Tanzania
        - `UA` — Ukraine
        - `UG` — Uganda
        - `UM` — United States Minor Outlying Islands
        - `US` — United States
        - `UY` — Uruguay
        - `UZ` — Uzbekistan
        - `VA` — Holy See (Vatican City)
        - `VC` — Saint Vincent and the Grenadines
        - `VG` — British Virgin Islands
        - `VI` — U.S. Virgin Islands
        - `VN` — Vietnam
        - `VU` — Vanuatu
        - `WF` — Wallis and Futuna
        - `WS` — Samoa
        - `XK` — Kosovo
        - `YT` — Mayotte
        - `ZA` — South Africa
        - `ZM` — Zambia
      - string — Two-letter code for a country that Paddle does not support sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
        - `AF` — Afghanistan
        - `AQ` — Antarctica
        - `AN` — Netherlands Antilles. Withdrawn ISO 3166-1 code, succeeded by BQ, CW and SX.
        - `BY` — Belarus
        - `CD` — Democratic Republic of Congo
        - `CF` — Central African Republic
        - `CU` — Cuba
        - `CS` — Serbia and Montenegro. Withdrawn ISO 3166-1 code, succeeded by RS and ME.
        - `HT` — Haiti
        - `IR` — Iran
        - `KP` — North Korea
        - `LY` — Libya
        - `ML` — Mali
        - `MM` — Myanmar (Burma)
        - `NI` — Nicaragua
        - `RU` — Russia
        - `SO` — Somalia
        - `SS` — South Sudan
        - `SD` — Sudan
        - `SY` — Syria
        - `VE` — Venezuela
        - `YE` — Yemen
        - `ZW` — Zimbabwe
- IP address — Paddle fetches location using the IP address to calculate totals.
  - `customer_id`: string | null — Paddle ID of the customer that this transaction preview is for, prefixed with `ctm_`. (pattern: `^ctm_[a-z\d]{26}$`)
  - `currency_code`: string | null — Supported three-letter ISO 4217 currency code.
    - `USD` — United States Dollar
    - `EUR` — Euro
    - `GBP` — Pound Sterling
    - `JPY` — Japanese Yen
    - `AUD` — Australian Dollar
    - `CAD` — Canadian Dollar
    - `CHF` — Swiss Franc
    - `HKD` — Hong Kong Dollar
    - `SGD` — Singapore Dollar
    - `SEK` — Swedish Krona
    - `ARS` — Argentine Peso
    - `BRL` — Brazilian Real
    - `CLP` — Chilean Peso
    - `CNY` — Chinese Yuan
    - `COP` — Colombian Peso
    - `CZK` — Czech Koruna
    - `DKK` — Danish Krone
    - `HUF` — Hungarian Forint
    - `ILS` — Israeli Shekel
    - `INR` — Indian Rupee
    - `KRW` — South Korean Won
    - `MXN` — Mexican Peso
    - `NOK` — Norwegian Krone
    - `NZD` — New Zealand Dollar
    - `PEN` — Peruvian Sol
    - `PLN` — Polish Zloty
    - `RUB` — Russian Ruble
    - `THB` — Thai Baht
    - `TRY` — Turkish Lira
    - `TWD` — New Taiwan Dollar
    - `UAH` — Ukrainian Hryvnia
    - `VND` — Vietnamese Dong
    - `ZAR` — South African Rand
  - `discount_id`: string | null — Paddle ID of the discount to apply to this transaction preview, prefixed with `dsc_`. (pattern: `^dsc_[a-z\d]{26}$`)
  - `discount`: object | null — Apply a non-catalog discount to a transaction. Send one of `discount_id` or `discount`.
    - `description`: string (required) — Short description for this discount for your reference. Not shown to customers. (Length: 1–500)
    - `type`: string (required) — Type of discount. Determines how this discount impacts the checkout or transaction total.
      - `flat` — Discounts a checkout or transaction by a flat amount, for example -$100. Requires `currency_code`.
      - `flat_per_seat` — Discounts a checkout or transaction by a flat amount per unit, for example -$100 per user. Requires `currency_code`.
      - `percentage` — Discounts a checkout or transaction by a percentage of the total, for example -10%. Maximum 100%.
    - `amount`: string (required) — Amount to discount by. For `percentage` discounts, must be an amount between `0.01` and `100`. For `flat` and `flat_per_seat` discounts, amount in the lowest denomination for a currency.
    - `recur`: boolean — Whether this discount applies for multiple subscription billing periods (`true`) or not (`false`). If omitted, defaults to `false`. (default: `false`)
    - `maximum_recurring_intervals`: integer | null — Number of subscription billing periods that this discount recurs for. Requires `recur`. `null` if this discount recurs forever.

Subscription renewals, midcycle changes, and one-time charges billed to a subscription aren't considered a redemption. `times_used` is not incremented in these cases. (Min: 1)
    - `custom_data`: object | null — Your own structured key-value data.
    - `restrict_to`: array | null — Product or price IDs that this discount is for. When including a product ID, all prices for that product can be discounted. `null` if this discount applies to all products and prices. (Items: unique)
  - `ignore_trials`: boolean — Whether trials should be ignored for transaction preview calculations.

By default, recurring items with trials are considered to have a zero charge when previewing. Set to `true` to disable this. (default: `false`)
  - `items`: array (required) — List of items to preview charging for. You can preview charging for items that you've added to your catalog by passing the Paddle ID of an existing price entity, or you can preview charging for non-catalog items by passing a price object.

Non-catalog items can be for existing products, or you can pass a product object as part of your price to preview charging for a non-catalog product.
    - Catalog item — Add a catalog item to a transaction. In this case, the product and price that you're billing for exist in your product catalog in Paddle.
      - `quantity`: integer (required) — Quantity of this item on the transaction.
      - `include_in_totals`: boolean — Whether this item should be included in totals for this transaction preview. Typically used to exclude one-time charges from calculations. (default: `true`)
      - `price_id`: string (required) — Paddle ID of an existing catalog price to preview charging for, prefixed with `pri_`. (pattern: `^pri_[a-z\d]{26}$`)
    - Non-catalog price for an existing product — Add a non-catalog price for an existing product in your catalog to a transaction. In this case, the product you're billing for is a catalog product, but you charge a specific price for it.
      - `quantity`: integer (required) — Quantity of this item on the transaction.
      - `include_in_totals`: boolean — Whether this item should be included in totals for this transaction preview. Typically used to exclude one-time charges from calculations. (default: `true`)
      - `price`: object (required) — Price object for a non-catalog item to preview charging for. Include a `product_id` to relate this non-catalog price to an existing catalog price.
        - `description`: string (required) — Internal description for this price, not shown to customers. Typically notes for your team. (Length: 2–500)
        - `name`: string | null — Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. (Length: 1–150)
        - `billing_cycle`: object | null — How often this price should be charged. `null` if price is non-recurring (one-time).
          - `interval`: string (required) — Unit of time.
            - `day`
            - `week`
            - `month`
            - `year`
          - `frequency`: integer (required) — Amount of time. (Min: 1)
        - `trial_period`: object | null — 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`.
          - `interval`: string (required) — Unit of time.
            - `day`
            - `week`
            - `month`
            - `year`
          - `frequency`: integer (required) — Amount of time. (Min: 1)
        - `tax_mode`: string — How tax is calculated for this price. (default: `"account_setting"`)
          - `account_setting` — Prices use the setting from your account.
          - `external` — Prices are exclusive of tax.
          - `internal` — Prices are inclusive of tax.
          - `location` — Prices are inclusive or exclusive of tax, depending on the country of the transaction.
        - `unit_price`: object (required) — Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`.
          - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
          - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
            - `USD` — United States Dollar
            - `EUR` — Euro
            - `GBP` — Pound Sterling
            - `JPY` — Japanese Yen
            - `AUD` — Australian Dollar
            - `CAD` — Canadian Dollar
            - `CHF` — Swiss Franc
            - `HKD` — Hong Kong Dollar
            - `SGD` — Singapore Dollar
            - `SEK` — Swedish Krona
            - `ARS` — Argentine Peso
            - `BRL` — Brazilian Real
            - `CLP` — Chilean Peso
            - `CNY` — Chinese Yuan
            - `COP` — Colombian Peso
            - `CZK` — Czech Koruna
            - `DKK` — Danish Krone
            - `HUF` — Hungarian Forint
            - `ILS` — Israeli Shekel
            - `INR` — Indian Rupee
            - `KRW` — South Korean Won
            - `MXN` — Mexican Peso
            - `NOK` — Norwegian Krone
            - `NZD` — New Zealand Dollar
            - `PEN` — Peruvian Sol
            - `PLN` — Polish Zloty
            - `RUB` — Russian Ruble
            - `THB` — Thai Baht
            - `TRY` — Turkish Lira
            - `TWD` — New Taiwan Dollar
            - `UAH` — Ukrainian Hryvnia
            - `VND` — Vietnamese Dong
            - `ZAR` — South African Rand
        - `unit_price_overrides`: array — List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. (Items: max 250)
          - `country_codes`: array (required) — Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. (Items: min 1, unique)
            - string — Two-letter code for a country that Paddle supports sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
              - `AD` — Andorra
              - `AE` — United Arab Emirates
              - `AG` — Antigua and Barbuda
              - `AI` — Anguilla
              - `AL` — Albania
              - `AM` — Armenia
              - `AO` — Angola
              - `AR` — Argentina
              - `AS` — American Samoa
              - `AT` — Austria
              - `AU` — Australia
              - `AW` — Aruba
              - `AX` — Åland Islands
              - `AZ` — Azerbaijan
              - `BA` — Bosnia and Herzegovina
              - `BB` — Barbados
              - `BD` — Bangladesh
              - `BE` — Belgium
              - `BF` — Burkina Faso
              - `BG` — Bulgaria
              - `BH` — Bahrain
              - `BI` — Burundi
              - `BJ` — Benin
              - `BL` — Saint Barthélemy
              - `BM` — Bermuda
              - `BN` — Brunei
              - `BO` — Bolivia
              - `BQ` — Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba)
              - `BR` — Brazil
              - `BS` — Bahamas
              - `BT` — Bhutan
              - `BV` — Bouvet Island
              - `BW` — Botswana
              - `BZ` — Belize
              - `CA` — Canada
              - `CC` — Cocos Islands
              - `CG` — Republic of Congo
              - `CH` — Switzerland
              - `CI` — Côte d'Ivoire (Ivory Coast)
              - `CK` — Cook Islands
              - `CL` — Chile
              - `CM` — Cameroon
              - `CN` — China
              - `CO` — Colombia
              - `CR` — Costa Rica
              - `CV` — Cape Verde
              - `CW` — Curaçao
              - `CX` — Christmas Island
              - `CY` — Cyprus
              - `CZ` — Czechia (Czech Republic)
              - `DE` — Germany
              - `DJ` — Djibouti
              - `DK` — Denmark
              - `DM` — Dominica
              - `DO` — Dominican Republic
              - `DZ` — Algeria
              - `EC` — Ecuador
              - `EE` — Estonia
              - `EG` — Egypt
              - `EH` — Western Sahara
              - `ER` — Eritrea
              - `ES` — Spain
              - `ET` — Ethiopia
              - `FI` — Finland
              - `FJ` — Fiji
              - `FK` — Falkland Islands
              - `FM` — Micronesia
              - `FO` — Faroe Islands
              - `FR` — France
              - `GA` — Gabon
              - `GB` — United Kingdom
              - `GD` — Grenada
              - `GE` — Georgia
              - `GF` — French Guiana
              - `GG` — Guernsey
              - `GH` — Ghana
              - `GI` — Gibraltar
              - `GL` — Greenland
              - `GM` — Gambia
              - `GN` — Guinea
              - `GP` — Guadeloupe
              - `GQ` — Equatorial Guinea
              - `GR` — Greece
              - `GS` — South Georgia and the South Sandwich Islands
              - `GT` — Guatemala
              - `GU` — Guam
              - `GW` — Guinea-Bissau
              - `GY` — Guyana
              - `HK` — Hong Kong
              - `HM` — Heard Island and McDonald Islands
              - `HN` — Honduras
              - `HR` — Croatia
              - `HU` — Hungary
              - `ID` — Indonesia
              - `IE` — Ireland
              - `IL` — Israel
              - `IM` — Isle of Man
              - `IN` — India
              - `IO` — British Indian Ocean Territory
              - `IQ` — Iraq
              - `IS` — Iceland
              - `IT` — Italy
              - `JE` — Jersey
              - `JM` — Jamaica
              - `JO` — Jordan
              - `JP` — Japan
              - `KE` — Kenya
              - `KG` — Kyrgyzstan
              - `KH` — Cambodia
              - `KI` — Kiribati
              - `KM` — Comoros
              - `KN` — Saint Kitts and Nevis
              - `KR` — South Korea
              - `KW` — Kuwait
              - `KY` — Cayman Islands
              - `KZ` — Kazakhstan
              - `LA` — Lao People's Democratic Republic (Laos)
              - `LB` — Lebanon
              - `LC` — Saint Lucia
              - `LI` — Liechtenstein
              - `LK` — Sri Lanka
              - `LR` — Liberia
              - `LS` — Lesotho
              - `LT` — Lithuania
              - `LU` — Luxembourg
              - `LV` — Latvia
              - `MA` — Morocco
              - `MC` — Monaco
              - `MD` — Moldova
              - `ME` — Montenegro
              - `MF` — Saint Martin
              - `MG` — Madagascar
              - `MH` — Marshall Islands
              - `MK` — Macedonia
              - `MN` — Mongolia
              - `MO` — Macao
              - `MP` — Northern Mariana Islands
              - `MQ` — Martinique
              - `MR` — Mauritania
              - `MS` — Montserrat
              - `MT` — Malta
              - `MU` — Mauritius
              - `MV` — Maldives
              - `MW` — Malawi
              - `MX` — Mexico
              - `MY` — Malaysia
              - `MZ` — Mozambique
              - `NA` — Namibia
              - `NC` — New Caledonia
              - `NE` — Niger
              - `NF` — Norfolk Island
              - `NG` — Nigeria
              - `NL` — Netherlands
              - `NO` — Norway
              - `NP` — Nepal
              - `NR` — Nauru
              - `NU` — Niue
              - `NZ` — New Zealand
              - `OM` — Oman
              - `PA` — Panama
              - `PE` — Peru
              - `PF` — French Polynesia
              - `PG` — Papua New Guinea
              - `PH` — Philippines
              - `PK` — Pakistan
              - `PL` — Poland
              - `PM` — Saint Pierre and Miquelon
              - `PN` — Pitcairn
              - `PR` — Puerto Rico
              - `PS` — Palestinian territories
              - `PT` — Portugal
              - `PW` — Palau
              - `PY` — Paraguay
              - `QA` — Qatar
              - `RE` — Reunion
              - `RO` — Romania
              - `RS` — Republic of Serbia
              - `RW` — Rwanda
              - `SA` — Saudi Arabia
              - `SB` — Solomon Islands
              - `SC` — Seychelles
              - `SE` — Sweden
              - `SG` — Singapore
              - `SH` — Saint Helena
              - `SI` — Slovenia
              - `SJ` — Svalbard and Jan Mayen
              - `SK` — Slovakia
              - `SL` — Sierra Leone
              - `SM` — San Marino
              - `SN` — Senegal
              - `SR` — Suriname
              - `ST` — São Tomé and Príncipe
              - `SV` — El Salvador
              - `SX` — Sint Maarten
              - `SZ` — Swaziland
              - `TC` — Turks and Caicos Islands
              - `TD` — Chad
              - `TF` — French Southern and Antarctic Lands
              - `TG` — Togo
              - `TH` — Thailand
              - `TJ` — Tajikistan
              - `TK` — Tokelau
              - `TL` — Timor-Leste
              - `TM` — Turkmenistan
              - `TN` — Tunisia
              - `TO` — Tonga
              - `TR` — Turkey
              - `TT` — Trinidad and Tobago
              - `TV` — Tuvalu
              - `TW` — Taiwan
              - `TZ` — Tanzania
              - `UA` — Ukraine
              - `UG` — Uganda
              - `UM` — United States Minor Outlying Islands
              - `US` — United States
              - `UY` — Uruguay
              - `UZ` — Uzbekistan
              - `VA` — Holy See (Vatican City)
              - `VC` — Saint Vincent and the Grenadines
              - `VG` — British Virgin Islands
              - `VI` — U.S. Virgin Islands
              - `VN` — Vietnam
              - `VU` — Vanuatu
              - `WF` — Wallis and Futuna
              - `WS` — Samoa
              - `XK` — Kosovo
              - `YT` — Mayotte
              - `ZA` — South Africa
              - `ZM` — Zambia
            - string — Two-letter code for a country that Paddle does not support sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
              - `AF` — Afghanistan
              - `AQ` — Antarctica
              - `AN` — Netherlands Antilles. Withdrawn ISO 3166-1 code, succeeded by BQ, CW and SX.
              - `BY` — Belarus
              - `CD` — Democratic Republic of Congo
              - `CF` — Central African Republic
              - `CU` — Cuba
              - `CS` — Serbia and Montenegro. Withdrawn ISO 3166-1 code, succeeded by RS and ME.
              - `HT` — Haiti
              - `IR` — Iran
              - `KP` — North Korea
              - `LY` — Libya
              - `ML` — Mali
              - `MM` — Myanmar (Burma)
              - `NI` — Nicaragua
              - `RU` — Russia
              - `SO` — Somalia
              - `SS` — South Sudan
              - `SD` — Sudan
              - `SY` — Syria
              - `VE` — Venezuela
              - `YE` — Yemen
              - `ZW` — Zimbabwe
          - `unit_price`: object (required) — Override price. This price applies to customers located in the countries for this unit price override.
            - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
            - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
              - `USD` — United States Dollar
              - `EUR` — Euro
              - `GBP` — Pound Sterling
              - `JPY` — Japanese Yen
              - `AUD` — Australian Dollar
              - `CAD` — Canadian Dollar
              - `CHF` — Swiss Franc
              - `HKD` — Hong Kong Dollar
              - `SGD` — Singapore Dollar
              - `SEK` — Swedish Krona
              - `ARS` — Argentine Peso
              - `BRL` — Brazilian Real
              - `CLP` — Chilean Peso
              - `CNY` — Chinese Yuan
              - `COP` — Colombian Peso
              - `CZK` — Czech Koruna
              - `DKK` — Danish Krone
              - `HUF` — Hungarian Forint
              - `ILS` — Israeli Shekel
              - `INR` — Indian Rupee
              - `KRW` — South Korean Won
              - `MXN` — Mexican Peso
              - `NOK` — Norwegian Krone
              - `NZD` — New Zealand Dollar
              - `PEN` — Peruvian Sol
              - `PLN` — Polish Zloty
              - `RUB` — Russian Ruble
              - `THB` — Thai Baht
              - `TRY` — Turkish Lira
              - `TWD` — New Taiwan Dollar
              - `UAH` — Ukrainian Hryvnia
              - `VND` — Vietnamese Dong
              - `ZAR` — South African Rand
        - `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.
          - `minimum`: integer (required) — Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. (Range: 1–999999999; default: `1`)
          - `maximum`: integer (required) — Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. (Range: 1–999999999; default: `100`)
        - `custom_data`: object | null — Your own structured key-value data.
        - `product_id`: string (required) — Paddle ID for the product that this price is for, prefixed with `pro_`. (pattern: `^pro_[a-z\d]{26}$`)
    - Non-catalog price and product — Add a non-catalog price for a non-catalog product in your catalog to a transaction. In this case, the product and price that you're billing for are specific to this transaction.
      - `quantity`: integer (required) — Quantity of this item on the transaction.
      - `include_in_totals`: boolean — Whether this item should be included in totals for this transaction preview. Typically used to exclude one-time charges from calculations. (default: `true`)
      - `price`: object (required) — Price object for a non-catalog item to preview charging for. Include a `product` object to create a non-catalog product for this non-catalog price.
        - `description`: string (required) — Internal description for this price, not shown to customers. Typically notes for your team. (Length: 2–500)
        - `name`: string | null — Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. (Length: 1–150)
        - `billing_cycle`: object | null — How often this price should be charged. `null` if price is non-recurring (one-time).
          - `interval`: string (required) — Unit of time.
            - `day`
            - `week`
            - `month`
            - `year`
          - `frequency`: integer (required) — Amount of time. (Min: 1)
        - `trial_period`: object | null — 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`.
          - `interval`: string (required) — Unit of time.
            - `day`
            - `week`
            - `month`
            - `year`
          - `frequency`: integer (required) — Amount of time. (Min: 1)
        - `tax_mode`: string — How tax is calculated for this price. (default: `"account_setting"`)
          - `account_setting` — Prices use the setting from your account.
          - `external` — Prices are exclusive of tax.
          - `internal` — Prices are inclusive of tax.
          - `location` — Prices are inclusive or exclusive of tax, depending on the country of the transaction.
        - `unit_price`: object (required) — Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`.
          - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
          - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
            - `USD` — United States Dollar
            - `EUR` — Euro
            - `GBP` — Pound Sterling
            - `JPY` — Japanese Yen
            - `AUD` — Australian Dollar
            - `CAD` — Canadian Dollar
            - `CHF` — Swiss Franc
            - `HKD` — Hong Kong Dollar
            - `SGD` — Singapore Dollar
            - `SEK` — Swedish Krona
            - `ARS` — Argentine Peso
            - `BRL` — Brazilian Real
            - `CLP` — Chilean Peso
            - `CNY` — Chinese Yuan
            - `COP` — Colombian Peso
            - `CZK` — Czech Koruna
            - `DKK` — Danish Krone
            - `HUF` — Hungarian Forint
            - `ILS` — Israeli Shekel
            - `INR` — Indian Rupee
            - `KRW` — South Korean Won
            - `MXN` — Mexican Peso
            - `NOK` — Norwegian Krone
            - `NZD` — New Zealand Dollar
            - `PEN` — Peruvian Sol
            - `PLN` — Polish Zloty
            - `RUB` — Russian Ruble
            - `THB` — Thai Baht
            - `TRY` — Turkish Lira
            - `TWD` — New Taiwan Dollar
            - `UAH` — Ukrainian Hryvnia
            - `VND` — Vietnamese Dong
            - `ZAR` — South African Rand
        - `unit_price_overrides`: array — List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. (Items: max 250)
          - `country_codes`: array (required) — Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. (Items: min 1, unique)
            - string — Two-letter code for a country that Paddle supports sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
              - `AD` — Andorra
              - `AE` — United Arab Emirates
              - `AG` — Antigua and Barbuda
              - `AI` — Anguilla
              - `AL` — Albania
              - `AM` — Armenia
              - `AO` — Angola
              - `AR` — Argentina
              - `AS` — American Samoa
              - `AT` — Austria
              - `AU` — Australia
              - `AW` — Aruba
              - `AX` — Åland Islands
              - `AZ` — Azerbaijan
              - `BA` — Bosnia and Herzegovina
              - `BB` — Barbados
              - `BD` — Bangladesh
              - `BE` — Belgium
              - `BF` — Burkina Faso
              - `BG` — Bulgaria
              - `BH` — Bahrain
              - `BI` — Burundi
              - `BJ` — Benin
              - `BL` — Saint Barthélemy
              - `BM` — Bermuda
              - `BN` — Brunei
              - `BO` — Bolivia
              - `BQ` — Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba)
              - `BR` — Brazil
              - `BS` — Bahamas
              - `BT` — Bhutan
              - `BV` — Bouvet Island
              - `BW` — Botswana
              - `BZ` — Belize
              - `CA` — Canada
              - `CC` — Cocos Islands
              - `CG` — Republic of Congo
              - `CH` — Switzerland
              - `CI` — Côte d'Ivoire (Ivory Coast)
              - `CK` — Cook Islands
              - `CL` — Chile
              - `CM` — Cameroon
              - `CN` — China
              - `CO` — Colombia
              - `CR` — Costa Rica
              - `CV` — Cape Verde
              - `CW` — Curaçao
              - `CX` — Christmas Island
              - `CY` — Cyprus
              - `CZ` — Czechia (Czech Republic)
              - `DE` — Germany
              - `DJ` — Djibouti
              - `DK` — Denmark
              - `DM` — Dominica
              - `DO` — Dominican Republic
              - `DZ` — Algeria
              - `EC` — Ecuador
              - `EE` — Estonia
              - `EG` — Egypt
              - `EH` — Western Sahara
              - `ER` — Eritrea
              - `ES` — Spain
              - `ET` — Ethiopia
              - `FI` — Finland
              - `FJ` — Fiji
              - `FK` — Falkland Islands
              - `FM` — Micronesia
              - `FO` — Faroe Islands
              - `FR` — France
              - `GA` — Gabon
              - `GB` — United Kingdom
              - `GD` — Grenada
              - `GE` — Georgia
              - `GF` — French Guiana
              - `GG` — Guernsey
              - `GH` — Ghana
              - `GI` — Gibraltar
              - `GL` — Greenland
              - `GM` — Gambia
              - `GN` — Guinea
              - `GP` — Guadeloupe
              - `GQ` — Equatorial Guinea
              - `GR` — Greece
              - `GS` — South Georgia and the South Sandwich Islands
              - `GT` — Guatemala
              - `GU` — Guam
              - `GW` — Guinea-Bissau
              - `GY` — Guyana
              - `HK` — Hong Kong
              - `HM` — Heard Island and McDonald Islands
              - `HN` — Honduras
              - `HR` — Croatia
              - `HU` — Hungary
              - `ID` — Indonesia
              - `IE` — Ireland
              - `IL` — Israel
              - `IM` — Isle of Man
              - `IN` — India
              - `IO` — British Indian Ocean Territory
              - `IQ` — Iraq
              - `IS` — Iceland
              - `IT` — Italy
              - `JE` — Jersey
              - `JM` — Jamaica
              - `JO` — Jordan
              - `JP` — Japan
              - `KE` — Kenya
              - `KG` — Kyrgyzstan
              - `KH` — Cambodia
              - `KI` — Kiribati
              - `KM` — Comoros
              - `KN` — Saint Kitts and Nevis
              - `KR` — South Korea
              - `KW` — Kuwait
              - `KY` — Cayman Islands
              - `KZ` — Kazakhstan
              - `LA` — Lao People's Democratic Republic (Laos)
              - `LB` — Lebanon
              - `LC` — Saint Lucia
              - `LI` — Liechtenstein
              - `LK` — Sri Lanka
              - `LR` — Liberia
              - `LS` — Lesotho
              - `LT` — Lithuania
              - `LU` — Luxembourg
              - `LV` — Latvia
              - `MA` — Morocco
              - `MC` — Monaco
              - `MD` — Moldova
              - `ME` — Montenegro
              - `MF` — Saint Martin
              - `MG` — Madagascar
              - `MH` — Marshall Islands
              - `MK` — Macedonia
              - `MN` — Mongolia
              - `MO` — Macao
              - `MP` — Northern Mariana Islands
              - `MQ` — Martinique
              - `MR` — Mauritania
              - `MS` — Montserrat
              - `MT` — Malta
              - `MU` — Mauritius
              - `MV` — Maldives
              - `MW` — Malawi
              - `MX` — Mexico
              - `MY` — Malaysia
              - `MZ` — Mozambique
              - `NA` — Namibia
              - `NC` — New Caledonia
              - `NE` — Niger
              - `NF` — Norfolk Island
              - `NG` — Nigeria
              - `NL` — Netherlands
              - `NO` — Norway
              - `NP` — Nepal
              - `NR` — Nauru
              - `NU` — Niue
              - `NZ` — New Zealand
              - `OM` — Oman
              - `PA` — Panama
              - `PE` — Peru
              - `PF` — French Polynesia
              - `PG` — Papua New Guinea
              - `PH` — Philippines
              - `PK` — Pakistan
              - `PL` — Poland
              - `PM` — Saint Pierre and Miquelon
              - `PN` — Pitcairn
              - `PR` — Puerto Rico
              - `PS` — Palestinian territories
              - `PT` — Portugal
              - `PW` — Palau
              - `PY` — Paraguay
              - `QA` — Qatar
              - `RE` — Reunion
              - `RO` — Romania
              - `RS` — Republic of Serbia
              - `RW` — Rwanda
              - `SA` — Saudi Arabia
              - `SB` — Solomon Islands
              - `SC` — Seychelles
              - `SE` — Sweden
              - `SG` — Singapore
              - `SH` — Saint Helena
              - `SI` — Slovenia
              - `SJ` — Svalbard and Jan Mayen
              - `SK` — Slovakia
              - `SL` — Sierra Leone
              - `SM` — San Marino
              - `SN` — Senegal
              - `SR` — Suriname
              - `ST` — São Tomé and Príncipe
              - `SV` — El Salvador
              - `SX` — Sint Maarten
              - `SZ` — Swaziland
              - `TC` — Turks and Caicos Islands
              - `TD` — Chad
              - `TF` — French Southern and Antarctic Lands
              - `TG` — Togo
              - `TH` — Thailand
              - `TJ` — Tajikistan
              - `TK` — Tokelau
              - `TL` — Timor-Leste
              - `TM` — Turkmenistan
              - `TN` — Tunisia
              - `TO` — Tonga
              - `TR` — Turkey
              - `TT` — Trinidad and Tobago
              - `TV` — Tuvalu
              - `TW` — Taiwan
              - `TZ` — Tanzania
              - `UA` — Ukraine
              - `UG` — Uganda
              - `UM` — United States Minor Outlying Islands
              - `US` — United States
              - `UY` — Uruguay
              - `UZ` — Uzbekistan
              - `VA` — Holy See (Vatican City)
              - `VC` — Saint Vincent and the Grenadines
              - `VG` — British Virgin Islands
              - `VI` — U.S. Virgin Islands
              - `VN` — Vietnam
              - `VU` — Vanuatu
              - `WF` — Wallis and Futuna
              - `WS` — Samoa
              - `XK` — Kosovo
              - `YT` — Mayotte
              - `ZA` — South Africa
              - `ZM` — Zambia
            - string — Two-letter code for a country that Paddle does not support sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
              - `AF` — Afghanistan
              - `AQ` — Antarctica
              - `AN` — Netherlands Antilles. Withdrawn ISO 3166-1 code, succeeded by BQ, CW and SX.
              - `BY` — Belarus
              - `CD` — Democratic Republic of Congo
              - `CF` — Central African Republic
              - `CU` — Cuba
              - `CS` — Serbia and Montenegro. Withdrawn ISO 3166-1 code, succeeded by RS and ME.
              - `HT` — Haiti
              - `IR` — Iran
              - `KP` — North Korea
              - `LY` — Libya
              - `ML` — Mali
              - `MM` — Myanmar (Burma)
              - `NI` — Nicaragua
              - `RU` — Russia
              - `SO` — Somalia
              - `SS` — South Sudan
              - `SD` — Sudan
              - `SY` — Syria
              - `VE` — Venezuela
              - `YE` — Yemen
              - `ZW` — Zimbabwe
          - `unit_price`: object (required) — Override price. This price applies to customers located in the countries for this unit price override.
            - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
            - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
              - `USD` — United States Dollar
              - `EUR` — Euro
              - `GBP` — Pound Sterling
              - `JPY` — Japanese Yen
              - `AUD` — Australian Dollar
              - `CAD` — Canadian Dollar
              - `CHF` — Swiss Franc
              - `HKD` — Hong Kong Dollar
              - `SGD` — Singapore Dollar
              - `SEK` — Swedish Krona
              - `ARS` — Argentine Peso
              - `BRL` — Brazilian Real
              - `CLP` — Chilean Peso
              - `CNY` — Chinese Yuan
              - `COP` — Colombian Peso
              - `CZK` — Czech Koruna
              - `DKK` — Danish Krone
              - `HUF` — Hungarian Forint
              - `ILS` — Israeli Shekel
              - `INR` — Indian Rupee
              - `KRW` — South Korean Won
              - `MXN` — Mexican Peso
              - `NOK` — Norwegian Krone
              - `NZD` — New Zealand Dollar
              - `PEN` — Peruvian Sol
              - `PLN` — Polish Zloty
              - `RUB` — Russian Ruble
              - `THB` — Thai Baht
              - `TRY` — Turkish Lira
              - `TWD` — New Taiwan Dollar
              - `UAH` — Ukrainian Hryvnia
              - `VND` — Vietnamese Dong
              - `ZAR` — South African Rand
        - `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.
          - `minimum`: integer (required) — Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. (Range: 1–999999999; default: `1`)
          - `maximum`: integer (required) — Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. (Range: 1–999999999; default: `100`)
        - `custom_data`: object | null — Your own structured key-value data.
        - `product`: object (required) — Product object for a non-catalog item to charge for.
          - `name`: string (required) — Name of this product. (Length: 1–200)
          - `description`: string | null — Short description for this product. (Max length: 2048)
          - `tax_category`: string (required) — Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account.
            - `digital-goods` — Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered.
            - `ebooks` — Digital books and educational material which is sold with permanent rights for use by the customer.
            - `implementation-services` — Remote configuration, set-up, and integrating software on behalf of a customer.
            - `professional-services` — Services that involve the application of your expertise and specialized knowledge of a software product.
            - `saas` — Products that allow users to connect to and use online or cloud-based applications over the Internet.
            - `software-programming-services` — Services that can be used to customize and white label software products.
            - `standard` — Software products that are pre-written and can be downloaded and installed onto a local device.
            - `training-services` — Training and education services related to software products.
            - `website-hosting` — Cloud storage service for personal or corporate information, assets, or intellectual property.
          - `image_url` — Image for this product. Included in the checkout and on some customer documents.
            - Image Url — A URL to an image.
            - Empty String
          - `custom_data`: object | null — Your own structured key-value data.
  - `customer_ip_address`: string (required) — IP address for this transaction preview.
- Existing customer Paddle IDs — Paddle uses existing customer data to calculate totals. Typically used for logged-in customers.
  - `currency_code`: string | null — Supported three-letter ISO 4217 currency code.
    - `USD` — United States Dollar
    - `EUR` — Euro
    - `GBP` — Pound Sterling
    - `JPY` — Japanese Yen
    - `AUD` — Australian Dollar
    - `CAD` — Canadian Dollar
    - `CHF` — Swiss Franc
    - `HKD` — Hong Kong Dollar
    - `SGD` — Singapore Dollar
    - `SEK` — Swedish Krona
    - `ARS` — Argentine Peso
    - `BRL` — Brazilian Real
    - `CLP` — Chilean Peso
    - `CNY` — Chinese Yuan
    - `COP` — Colombian Peso
    - `CZK` — Czech Koruna
    - `DKK` — Danish Krone
    - `HUF` — Hungarian Forint
    - `ILS` — Israeli Shekel
    - `INR` — Indian Rupee
    - `KRW` — South Korean Won
    - `MXN` — Mexican Peso
    - `NOK` — Norwegian Krone
    - `NZD` — New Zealand Dollar
    - `PEN` — Peruvian Sol
    - `PLN` — Polish Zloty
    - `RUB` — Russian Ruble
    - `THB` — Thai Baht
    - `TRY` — Turkish Lira
    - `TWD` — New Taiwan Dollar
    - `UAH` — Ukrainian Hryvnia
    - `VND` — Vietnamese Dong
    - `ZAR` — South African Rand
  - `discount_id`: string | null — Paddle ID of the discount to apply to this transaction preview, prefixed with `dsc_`. (pattern: `^dsc_[a-z\d]{26}$`)
  - `discount`: object | null — Apply a non-catalog discount to a transaction. Send one of `discount_id` or `discount`.
    - `description`: string (required) — Short description for this discount for your reference. Not shown to customers. (Length: 1–500)
    - `type`: string (required) — Type of discount. Determines how this discount impacts the checkout or transaction total.
      - `flat` — Discounts a checkout or transaction by a flat amount, for example -$100. Requires `currency_code`.
      - `flat_per_seat` — Discounts a checkout or transaction by a flat amount per unit, for example -$100 per user. Requires `currency_code`.
      - `percentage` — Discounts a checkout or transaction by a percentage of the total, for example -10%. Maximum 100%.
    - `amount`: string (required) — Amount to discount by. For `percentage` discounts, must be an amount between `0.01` and `100`. For `flat` and `flat_per_seat` discounts, amount in the lowest denomination for a currency.
    - `recur`: boolean — Whether this discount applies for multiple subscription billing periods (`true`) or not (`false`). If omitted, defaults to `false`. (default: `false`)
    - `maximum_recurring_intervals`: integer | null — Number of subscription billing periods that this discount recurs for. Requires `recur`. `null` if this discount recurs forever.

Subscription renewals, midcycle changes, and one-time charges billed to a subscription aren't considered a redemption. `times_used` is not incremented in these cases. (Min: 1)
    - `custom_data`: object | null — Your own structured key-value data.
    - `restrict_to`: array | null — Product or price IDs that this discount is for. When including a product ID, all prices for that product can be discounted. `null` if this discount applies to all products and prices. (Items: unique)
  - `ignore_trials`: boolean — Whether trials should be ignored for transaction preview calculations.

By default, recurring items with trials are considered to have a zero charge when previewing. Set to `true` to disable this. (default: `false`)
  - `items`: array (required) — List of items to preview charging for. You can preview charging for items that you've added to your catalog by passing the Paddle ID of an existing price entity, or you can preview charging for non-catalog items by passing a price object.

Non-catalog items can be for existing products, or you can pass a product object as part of your price to preview charging for a non-catalog product.
    - Catalog item — Add a catalog item to a transaction. In this case, the product and price that you're billing for exist in your product catalog in Paddle.
      - `quantity`: integer (required) — Quantity of this item on the transaction.
      - `include_in_totals`: boolean — Whether this item should be included in totals for this transaction preview. Typically used to exclude one-time charges from calculations. (default: `true`)
      - `price_id`: string (required) — Paddle ID of an existing catalog price to preview charging for, prefixed with `pri_`. (pattern: `^pri_[a-z\d]{26}$`)
    - Non-catalog price for an existing product — Add a non-catalog price for an existing product in your catalog to a transaction. In this case, the product you're billing for is a catalog product, but you charge a specific price for it.
      - `quantity`: integer (required) — Quantity of this item on the transaction.
      - `include_in_totals`: boolean — Whether this item should be included in totals for this transaction preview. Typically used to exclude one-time charges from calculations. (default: `true`)
      - `price`: object (required) — Price object for a non-catalog item to preview charging for. Include a `product_id` to relate this non-catalog price to an existing catalog price.
        - `description`: string (required) — Internal description for this price, not shown to customers. Typically notes for your team. (Length: 2–500)
        - `name`: string | null — Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. (Length: 1–150)
        - `billing_cycle`: object | null — How often this price should be charged. `null` if price is non-recurring (one-time).
          - `interval`: string (required) — Unit of time.
            - `day`
            - `week`
            - `month`
            - `year`
          - `frequency`: integer (required) — Amount of time. (Min: 1)
        - `trial_period`: object | null — 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`.
          - `interval`: string (required) — Unit of time.
            - `day`
            - `week`
            - `month`
            - `year`
          - `frequency`: integer (required) — Amount of time. (Min: 1)
        - `tax_mode`: string — How tax is calculated for this price. (default: `"account_setting"`)
          - `account_setting` — Prices use the setting from your account.
          - `external` — Prices are exclusive of tax.
          - `internal` — Prices are inclusive of tax.
          - `location` — Prices are inclusive or exclusive of tax, depending on the country of the transaction.
        - `unit_price`: object (required) — Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`.
          - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
          - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
            - `USD` — United States Dollar
            - `EUR` — Euro
            - `GBP` — Pound Sterling
            - `JPY` — Japanese Yen
            - `AUD` — Australian Dollar
            - `CAD` — Canadian Dollar
            - `CHF` — Swiss Franc
            - `HKD` — Hong Kong Dollar
            - `SGD` — Singapore Dollar
            - `SEK` — Swedish Krona
            - `ARS` — Argentine Peso
            - `BRL` — Brazilian Real
            - `CLP` — Chilean Peso
            - `CNY` — Chinese Yuan
            - `COP` — Colombian Peso
            - `CZK` — Czech Koruna
            - `DKK` — Danish Krone
            - `HUF` — Hungarian Forint
            - `ILS` — Israeli Shekel
            - `INR` — Indian Rupee
            - `KRW` — South Korean Won
            - `MXN` — Mexican Peso
            - `NOK` — Norwegian Krone
            - `NZD` — New Zealand Dollar
            - `PEN` — Peruvian Sol
            - `PLN` — Polish Zloty
            - `RUB` — Russian Ruble
            - `THB` — Thai Baht
            - `TRY` — Turkish Lira
            - `TWD` — New Taiwan Dollar
            - `UAH` — Ukrainian Hryvnia
            - `VND` — Vietnamese Dong
            - `ZAR` — South African Rand
        - `unit_price_overrides`: array — List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. (Items: max 250)
          - `country_codes`: array (required) — Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. (Items: min 1, unique)
            - string — Two-letter code for a country that Paddle supports sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
              - `AD` — Andorra
              - `AE` — United Arab Emirates
              - `AG` — Antigua and Barbuda
              - `AI` — Anguilla
              - `AL` — Albania
              - `AM` — Armenia
              - `AO` — Angola
              - `AR` — Argentina
              - `AS` — American Samoa
              - `AT` — Austria
              - `AU` — Australia
              - `AW` — Aruba
              - `AX` — Åland Islands
              - `AZ` — Azerbaijan
              - `BA` — Bosnia and Herzegovina
              - `BB` — Barbados
              - `BD` — Bangladesh
              - `BE` — Belgium
              - `BF` — Burkina Faso
              - `BG` — Bulgaria
              - `BH` — Bahrain
              - `BI` — Burundi
              - `BJ` — Benin
              - `BL` — Saint Barthélemy
              - `BM` — Bermuda
              - `BN` — Brunei
              - `BO` — Bolivia
              - `BQ` — Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba)
              - `BR` — Brazil
              - `BS` — Bahamas
              - `BT` — Bhutan
              - `BV` — Bouvet Island
              - `BW` — Botswana
              - `BZ` — Belize
              - `CA` — Canada
              - `CC` — Cocos Islands
              - `CG` — Republic of Congo
              - `CH` — Switzerland
              - `CI` — Côte d'Ivoire (Ivory Coast)
              - `CK` — Cook Islands
              - `CL` — Chile
              - `CM` — Cameroon
              - `CN` — China
              - `CO` — Colombia
              - `CR` — Costa Rica
              - `CV` — Cape Verde
              - `CW` — Curaçao
              - `CX` — Christmas Island
              - `CY` — Cyprus
              - `CZ` — Czechia (Czech Republic)
              - `DE` — Germany
              - `DJ` — Djibouti
              - `DK` — Denmark
              - `DM` — Dominica
              - `DO` — Dominican Republic
              - `DZ` — Algeria
              - `EC` — Ecuador
              - `EE` — Estonia
              - `EG` — Egypt
              - `EH` — Western Sahara
              - `ER` — Eritrea
              - `ES` — Spain
              - `ET` — Ethiopia
              - `FI` — Finland
              - `FJ` — Fiji
              - `FK` — Falkland Islands
              - `FM` — Micronesia
              - `FO` — Faroe Islands
              - `FR` — France
              - `GA` — Gabon
              - `GB` — United Kingdom
              - `GD` — Grenada
              - `GE` — Georgia
              - `GF` — French Guiana
              - `GG` — Guernsey
              - `GH` — Ghana
              - `GI` — Gibraltar
              - `GL` — Greenland
              - `GM` — Gambia
              - `GN` — Guinea
              - `GP` — Guadeloupe
              - `GQ` — Equatorial Guinea
              - `GR` — Greece
              - `GS` — South Georgia and the South Sandwich Islands
              - `GT` — Guatemala
              - `GU` — Guam
              - `GW` — Guinea-Bissau
              - `GY` — Guyana
              - `HK` — Hong Kong
              - `HM` — Heard Island and McDonald Islands
              - `HN` — Honduras
              - `HR` — Croatia
              - `HU` — Hungary
              - `ID` — Indonesia
              - `IE` — Ireland
              - `IL` — Israel
              - `IM` — Isle of Man
              - `IN` — India
              - `IO` — British Indian Ocean Territory
              - `IQ` — Iraq
              - `IS` — Iceland
              - `IT` — Italy
              - `JE` — Jersey
              - `JM` — Jamaica
              - `JO` — Jordan
              - `JP` — Japan
              - `KE` — Kenya
              - `KG` — Kyrgyzstan
              - `KH` — Cambodia
              - `KI` — Kiribati
              - `KM` — Comoros
              - `KN` — Saint Kitts and Nevis
              - `KR` — South Korea
              - `KW` — Kuwait
              - `KY` — Cayman Islands
              - `KZ` — Kazakhstan
              - `LA` — Lao People's Democratic Republic (Laos)
              - `LB` — Lebanon
              - `LC` — Saint Lucia
              - `LI` — Liechtenstein
              - `LK` — Sri Lanka
              - `LR` — Liberia
              - `LS` — Lesotho
              - `LT` — Lithuania
              - `LU` — Luxembourg
              - `LV` — Latvia
              - `MA` — Morocco
              - `MC` — Monaco
              - `MD` — Moldova
              - `ME` — Montenegro
              - `MF` — Saint Martin
              - `MG` — Madagascar
              - `MH` — Marshall Islands
              - `MK` — Macedonia
              - `MN` — Mongolia
              - `MO` — Macao
              - `MP` — Northern Mariana Islands
              - `MQ` — Martinique
              - `MR` — Mauritania
              - `MS` — Montserrat
              - `MT` — Malta
              - `MU` — Mauritius
              - `MV` — Maldives
              - `MW` — Malawi
              - `MX` — Mexico
              - `MY` — Malaysia
              - `MZ` — Mozambique
              - `NA` — Namibia
              - `NC` — New Caledonia
              - `NE` — Niger
              - `NF` — Norfolk Island
              - `NG` — Nigeria
              - `NL` — Netherlands
              - `NO` — Norway
              - `NP` — Nepal
              - `NR` — Nauru
              - `NU` — Niue
              - `NZ` — New Zealand
              - `OM` — Oman
              - `PA` — Panama
              - `PE` — Peru
              - `PF` — French Polynesia
              - `PG` — Papua New Guinea
              - `PH` — Philippines
              - `PK` — Pakistan
              - `PL` — Poland
              - `PM` — Saint Pierre and Miquelon
              - `PN` — Pitcairn
              - `PR` — Puerto Rico
              - `PS` — Palestinian territories
              - `PT` — Portugal
              - `PW` — Palau
              - `PY` — Paraguay
              - `QA` — Qatar
              - `RE` — Reunion
              - `RO` — Romania
              - `RS` — Republic of Serbia
              - `RW` — Rwanda
              - `SA` — Saudi Arabia
              - `SB` — Solomon Islands
              - `SC` — Seychelles
              - `SE` — Sweden
              - `SG` — Singapore
              - `SH` — Saint Helena
              - `SI` — Slovenia
              - `SJ` — Svalbard and Jan Mayen
              - `SK` — Slovakia
              - `SL` — Sierra Leone
              - `SM` — San Marino
              - `SN` — Senegal
              - `SR` — Suriname
              - `ST` — São Tomé and Príncipe
              - `SV` — El Salvador
              - `SX` — Sint Maarten
              - `SZ` — Swaziland
              - `TC` — Turks and Caicos Islands
              - `TD` — Chad
              - `TF` — French Southern and Antarctic Lands
              - `TG` — Togo
              - `TH` — Thailand
              - `TJ` — Tajikistan
              - `TK` — Tokelau
              - `TL` — Timor-Leste
              - `TM` — Turkmenistan
              - `TN` — Tunisia
              - `TO` — Tonga
              - `TR` — Turkey
              - `TT` — Trinidad and Tobago
              - `TV` — Tuvalu
              - `TW` — Taiwan
              - `TZ` — Tanzania
              - `UA` — Ukraine
              - `UG` — Uganda
              - `UM` — United States Minor Outlying Islands
              - `US` — United States
              - `UY` — Uruguay
              - `UZ` — Uzbekistan
              - `VA` — Holy See (Vatican City)
              - `VC` — Saint Vincent and the Grenadines
              - `VG` — British Virgin Islands
              - `VI` — U.S. Virgin Islands
              - `VN` — Vietnam
              - `VU` — Vanuatu
              - `WF` — Wallis and Futuna
              - `WS` — Samoa
              - `XK` — Kosovo
              - `YT` — Mayotte
              - `ZA` — South Africa
              - `ZM` — Zambia
            - string — Two-letter code for a country that Paddle does not support sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
              - `AF` — Afghanistan
              - `AQ` — Antarctica
              - `AN` — Netherlands Antilles. Withdrawn ISO 3166-1 code, succeeded by BQ, CW and SX.
              - `BY` — Belarus
              - `CD` — Democratic Republic of Congo
              - `CF` — Central African Republic
              - `CU` — Cuba
              - `CS` — Serbia and Montenegro. Withdrawn ISO 3166-1 code, succeeded by RS and ME.
              - `HT` — Haiti
              - `IR` — Iran
              - `KP` — North Korea
              - `LY` — Libya
              - `ML` — Mali
              - `MM` — Myanmar (Burma)
              - `NI` — Nicaragua
              - `RU` — Russia
              - `SO` — Somalia
              - `SS` — South Sudan
              - `SD` — Sudan
              - `SY` — Syria
              - `VE` — Venezuela
              - `YE` — Yemen
              - `ZW` — Zimbabwe
          - `unit_price`: object (required) — Override price. This price applies to customers located in the countries for this unit price override.
            - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
            - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
              - `USD` — United States Dollar
              - `EUR` — Euro
              - `GBP` — Pound Sterling
              - `JPY` — Japanese Yen
              - `AUD` — Australian Dollar
              - `CAD` — Canadian Dollar
              - `CHF` — Swiss Franc
              - `HKD` — Hong Kong Dollar
              - `SGD` — Singapore Dollar
              - `SEK` — Swedish Krona
              - `ARS` — Argentine Peso
              - `BRL` — Brazilian Real
              - `CLP` — Chilean Peso
              - `CNY` — Chinese Yuan
              - `COP` — Colombian Peso
              - `CZK` — Czech Koruna
              - `DKK` — Danish Krone
              - `HUF` — Hungarian Forint
              - `ILS` — Israeli Shekel
              - `INR` — Indian Rupee
              - `KRW` — South Korean Won
              - `MXN` — Mexican Peso
              - `NOK` — Norwegian Krone
              - `NZD` — New Zealand Dollar
              - `PEN` — Peruvian Sol
              - `PLN` — Polish Zloty
              - `RUB` — Russian Ruble
              - `THB` — Thai Baht
              - `TRY` — Turkish Lira
              - `TWD` — New Taiwan Dollar
              - `UAH` — Ukrainian Hryvnia
              - `VND` — Vietnamese Dong
              - `ZAR` — South African Rand
        - `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.
          - `minimum`: integer (required) — Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. (Range: 1–999999999; default: `1`)
          - `maximum`: integer (required) — Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. (Range: 1–999999999; default: `100`)
        - `custom_data`: object | null — Your own structured key-value data.
        - `product_id`: string (required) — Paddle ID for the product that this price is for, prefixed with `pro_`. (pattern: `^pro_[a-z\d]{26}$`)
    - Non-catalog price and product — Add a non-catalog price for a non-catalog product in your catalog to a transaction. In this case, the product and price that you're billing for are specific to this transaction.
      - `quantity`: integer (required) — Quantity of this item on the transaction.
      - `include_in_totals`: boolean — Whether this item should be included in totals for this transaction preview. Typically used to exclude one-time charges from calculations. (default: `true`)
      - `price`: object (required) — Price object for a non-catalog item to preview charging for. Include a `product` object to create a non-catalog product for this non-catalog price.
        - `description`: string (required) — Internal description for this price, not shown to customers. Typically notes for your team. (Length: 2–500)
        - `name`: string | null — Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. (Length: 1–150)
        - `billing_cycle`: object | null — How often this price should be charged. `null` if price is non-recurring (one-time).
          - `interval`: string (required) — Unit of time.
            - `day`
            - `week`
            - `month`
            - `year`
          - `frequency`: integer (required) — Amount of time. (Min: 1)
        - `trial_period`: object | null — 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`.
          - `interval`: string (required) — Unit of time.
            - `day`
            - `week`
            - `month`
            - `year`
          - `frequency`: integer (required) — Amount of time. (Min: 1)
        - `tax_mode`: string — How tax is calculated for this price. (default: `"account_setting"`)
          - `account_setting` — Prices use the setting from your account.
          - `external` — Prices are exclusive of tax.
          - `internal` — Prices are inclusive of tax.
          - `location` — Prices are inclusive or exclusive of tax, depending on the country of the transaction.
        - `unit_price`: object (required) — Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`.
          - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
          - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
            - `USD` — United States Dollar
            - `EUR` — Euro
            - `GBP` — Pound Sterling
            - `JPY` — Japanese Yen
            - `AUD` — Australian Dollar
            - `CAD` — Canadian Dollar
            - `CHF` — Swiss Franc
            - `HKD` — Hong Kong Dollar
            - `SGD` — Singapore Dollar
            - `SEK` — Swedish Krona
            - `ARS` — Argentine Peso
            - `BRL` — Brazilian Real
            - `CLP` — Chilean Peso
            - `CNY` — Chinese Yuan
            - `COP` — Colombian Peso
            - `CZK` — Czech Koruna
            - `DKK` — Danish Krone
            - `HUF` — Hungarian Forint
            - `ILS` — Israeli Shekel
            - `INR` — Indian Rupee
            - `KRW` — South Korean Won
            - `MXN` — Mexican Peso
            - `NOK` — Norwegian Krone
            - `NZD` — New Zealand Dollar
            - `PEN` — Peruvian Sol
            - `PLN` — Polish Zloty
            - `RUB` — Russian Ruble
            - `THB` — Thai Baht
            - `TRY` — Turkish Lira
            - `TWD` — New Taiwan Dollar
            - `UAH` — Ukrainian Hryvnia
            - `VND` — Vietnamese Dong
            - `ZAR` — South African Rand
        - `unit_price_overrides`: array — List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. (Items: max 250)
          - `country_codes`: array (required) — Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. (Items: min 1, unique)
            - string — Two-letter code for a country that Paddle supports sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
              - `AD` — Andorra
              - `AE` — United Arab Emirates
              - `AG` — Antigua and Barbuda
              - `AI` — Anguilla
              - `AL` — Albania
              - `AM` — Armenia
              - `AO` — Angola
              - `AR` — Argentina
              - `AS` — American Samoa
              - `AT` — Austria
              - `AU` — Australia
              - `AW` — Aruba
              - `AX` — Åland Islands
              - `AZ` — Azerbaijan
              - `BA` — Bosnia and Herzegovina
              - `BB` — Barbados
              - `BD` — Bangladesh
              - `BE` — Belgium
              - `BF` — Burkina Faso
              - `BG` — Bulgaria
              - `BH` — Bahrain
              - `BI` — Burundi
              - `BJ` — Benin
              - `BL` — Saint Barthélemy
              - `BM` — Bermuda
              - `BN` — Brunei
              - `BO` — Bolivia
              - `BQ` — Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba)
              - `BR` — Brazil
              - `BS` — Bahamas
              - `BT` — Bhutan
              - `BV` — Bouvet Island
              - `BW` — Botswana
              - `BZ` — Belize
              - `CA` — Canada
              - `CC` — Cocos Islands
              - `CG` — Republic of Congo
              - `CH` — Switzerland
              - `CI` — Côte d'Ivoire (Ivory Coast)
              - `CK` — Cook Islands
              - `CL` — Chile
              - `CM` — Cameroon
              - `CN` — China
              - `CO` — Colombia
              - `CR` — Costa Rica
              - `CV` — Cape Verde
              - `CW` — Curaçao
              - `CX` — Christmas Island
              - `CY` — Cyprus
              - `CZ` — Czechia (Czech Republic)
              - `DE` — Germany
              - `DJ` — Djibouti
              - `DK` — Denmark
              - `DM` — Dominica
              - `DO` — Dominican Republic
              - `DZ` — Algeria
              - `EC` — Ecuador
              - `EE` — Estonia
              - `EG` — Egypt
              - `EH` — Western Sahara
              - `ER` — Eritrea
              - `ES` — Spain
              - `ET` — Ethiopia
              - `FI` — Finland
              - `FJ` — Fiji
              - `FK` — Falkland Islands
              - `FM` — Micronesia
              - `FO` — Faroe Islands
              - `FR` — France
              - `GA` — Gabon
              - `GB` — United Kingdom
              - `GD` — Grenada
              - `GE` — Georgia
              - `GF` — French Guiana
              - `GG` — Guernsey
              - `GH` — Ghana
              - `GI` — Gibraltar
              - `GL` — Greenland
              - `GM` — Gambia
              - `GN` — Guinea
              - `GP` — Guadeloupe
              - `GQ` — Equatorial Guinea
              - `GR` — Greece
              - `GS` — South Georgia and the South Sandwich Islands
              - `GT` — Guatemala
              - `GU` — Guam
              - `GW` — Guinea-Bissau
              - `GY` — Guyana
              - `HK` — Hong Kong
              - `HM` — Heard Island and McDonald Islands
              - `HN` — Honduras
              - `HR` — Croatia
              - `HU` — Hungary
              - `ID` — Indonesia
              - `IE` — Ireland
              - `IL` — Israel
              - `IM` — Isle of Man
              - `IN` — India
              - `IO` — British Indian Ocean Territory
              - `IQ` — Iraq
              - `IS` — Iceland
              - `IT` — Italy
              - `JE` — Jersey
              - `JM` — Jamaica
              - `JO` — Jordan
              - `JP` — Japan
              - `KE` — Kenya
              - `KG` — Kyrgyzstan
              - `KH` — Cambodia
              - `KI` — Kiribati
              - `KM` — Comoros
              - `KN` — Saint Kitts and Nevis
              - `KR` — South Korea
              - `KW` — Kuwait
              - `KY` — Cayman Islands
              - `KZ` — Kazakhstan
              - `LA` — Lao People's Democratic Republic (Laos)
              - `LB` — Lebanon
              - `LC` — Saint Lucia
              - `LI` — Liechtenstein
              - `LK` — Sri Lanka
              - `LR` — Liberia
              - `LS` — Lesotho
              - `LT` — Lithuania
              - `LU` — Luxembourg
              - `LV` — Latvia
              - `MA` — Morocco
              - `MC` — Monaco
              - `MD` — Moldova
              - `ME` — Montenegro
              - `MF` — Saint Martin
              - `MG` — Madagascar
              - `MH` — Marshall Islands
              - `MK` — Macedonia
              - `MN` — Mongolia
              - `MO` — Macao
              - `MP` — Northern Mariana Islands
              - `MQ` — Martinique
              - `MR` — Mauritania
              - `MS` — Montserrat
              - `MT` — Malta
              - `MU` — Mauritius
              - `MV` — Maldives
              - `MW` — Malawi
              - `MX` — Mexico
              - `MY` — Malaysia
              - `MZ` — Mozambique
              - `NA` — Namibia
              - `NC` — New Caledonia
              - `NE` — Niger
              - `NF` — Norfolk Island
              - `NG` — Nigeria
              - `NL` — Netherlands
              - `NO` — Norway
              - `NP` — Nepal
              - `NR` — Nauru
              - `NU` — Niue
              - `NZ` — New Zealand
              - `OM` — Oman
              - `PA` — Panama
              - `PE` — Peru
              - `PF` — French Polynesia
              - `PG` — Papua New Guinea
              - `PH` — Philippines
              - `PK` — Pakistan
              - `PL` — Poland
              - `PM` — Saint Pierre and Miquelon
              - `PN` — Pitcairn
              - `PR` — Puerto Rico
              - `PS` — Palestinian territories
              - `PT` — Portugal
              - `PW` — Palau
              - `PY` — Paraguay
              - `QA` — Qatar
              - `RE` — Reunion
              - `RO` — Romania
              - `RS` — Republic of Serbia
              - `RW` — Rwanda
              - `SA` — Saudi Arabia
              - `SB` — Solomon Islands
              - `SC` — Seychelles
              - `SE` — Sweden
              - `SG` — Singapore
              - `SH` — Saint Helena
              - `SI` — Slovenia
              - `SJ` — Svalbard and Jan Mayen
              - `SK` — Slovakia
              - `SL` — Sierra Leone
              - `SM` — San Marino
              - `SN` — Senegal
              - `SR` — Suriname
              - `ST` — São Tomé and Príncipe
              - `SV` — El Salvador
              - `SX` — Sint Maarten
              - `SZ` — Swaziland
              - `TC` — Turks and Caicos Islands
              - `TD` — Chad
              - `TF` — French Southern and Antarctic Lands
              - `TG` — Togo
              - `TH` — Thailand
              - `TJ` — Tajikistan
              - `TK` — Tokelau
              - `TL` — Timor-Leste
              - `TM` — Turkmenistan
              - `TN` — Tunisia
              - `TO` — Tonga
              - `TR` — Turkey
              - `TT` — Trinidad and Tobago
              - `TV` — Tuvalu
              - `TW` — Taiwan
              - `TZ` — Tanzania
              - `UA` — Ukraine
              - `UG` — Uganda
              - `UM` — United States Minor Outlying Islands
              - `US` — United States
              - `UY` — Uruguay
              - `UZ` — Uzbekistan
              - `VA` — Holy See (Vatican City)
              - `VC` — Saint Vincent and the Grenadines
              - `VG` — British Virgin Islands
              - `VI` — U.S. Virgin Islands
              - `VN` — Vietnam
              - `VU` — Vanuatu
              - `WF` — Wallis and Futuna
              - `WS` — Samoa
              - `XK` — Kosovo
              - `YT` — Mayotte
              - `ZA` — South Africa
              - `ZM` — Zambia
            - string — Two-letter code for a country that Paddle does not support sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
              - `AF` — Afghanistan
              - `AQ` — Antarctica
              - `AN` — Netherlands Antilles. Withdrawn ISO 3166-1 code, succeeded by BQ, CW and SX.
              - `BY` — Belarus
              - `CD` — Democratic Republic of Congo
              - `CF` — Central African Republic
              - `CU` — Cuba
              - `CS` — Serbia and Montenegro. Withdrawn ISO 3166-1 code, succeeded by RS and ME.
              - `HT` — Haiti
              - `IR` — Iran
              - `KP` — North Korea
              - `LY` — Libya
              - `ML` — Mali
              - `MM` — Myanmar (Burma)
              - `NI` — Nicaragua
              - `RU` — Russia
              - `SO` — Somalia
              - `SS` — South Sudan
              - `SD` — Sudan
              - `SY` — Syria
              - `VE` — Venezuela
              - `YE` — Yemen
              - `ZW` — Zimbabwe
          - `unit_price`: object (required) — Override price. This price applies to customers located in the countries for this unit price override.
            - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
            - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
              - `USD` — United States Dollar
              - `EUR` — Euro
              - `GBP` — Pound Sterling
              - `JPY` — Japanese Yen
              - `AUD` — Australian Dollar
              - `CAD` — Canadian Dollar
              - `CHF` — Swiss Franc
              - `HKD` — Hong Kong Dollar
              - `SGD` — Singapore Dollar
              - `SEK` — Swedish Krona
              - `ARS` — Argentine Peso
              - `BRL` — Brazilian Real
              - `CLP` — Chilean Peso
              - `CNY` — Chinese Yuan
              - `COP` — Colombian Peso
              - `CZK` — Czech Koruna
              - `DKK` — Danish Krone
              - `HUF` — Hungarian Forint
              - `ILS` — Israeli Shekel
              - `INR` — Indian Rupee
              - `KRW` — South Korean Won
              - `MXN` — Mexican Peso
              - `NOK` — Norwegian Krone
              - `NZD` — New Zealand Dollar
              - `PEN` — Peruvian Sol
              - `PLN` — Polish Zloty
              - `RUB` — Russian Ruble
              - `THB` — Thai Baht
              - `TRY` — Turkish Lira
              - `TWD` — New Taiwan Dollar
              - `UAH` — Ukrainian Hryvnia
              - `VND` — Vietnamese Dong
              - `ZAR` — South African Rand
        - `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.
          - `minimum`: integer (required) — Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. (Range: 1–999999999; default: `1`)
          - `maximum`: integer (required) — Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. (Range: 1–999999999; default: `100`)
        - `custom_data`: object | null — Your own structured key-value data.
        - `product`: object (required) — Product object for a non-catalog item to charge for.
          - `name`: string (required) — Name of this product. (Length: 1–200)
          - `description`: string | null — Short description for this product. (Max length: 2048)
          - `tax_category`: string (required) — Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account.
            - `digital-goods` — Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered.
            - `ebooks` — Digital books and educational material which is sold with permanent rights for use by the customer.
            - `implementation-services` — Remote configuration, set-up, and integrating software on behalf of a customer.
            - `professional-services` — Services that involve the application of your expertise and specialized knowledge of a software product.
            - `saas` — Products that allow users to connect to and use online or cloud-based applications over the Internet.
            - `software-programming-services` — Services that can be used to customize and white label software products.
            - `standard` — Software products that are pre-written and can be downloaded and installed onto a local device.
            - `training-services` — Training and education services related to software products.
            - `website-hosting` — Cloud storage service for personal or corporate information, assets, or intellectual property.
          - `image_url` — Image for this product. Included in the checkout and on some customer documents.
            - Image Url — A URL to an image.
            - Empty String
          - `custom_data`: object | null — Your own structured key-value data.
  - `customer_id`: string (required) — Paddle ID of the customer that this transaction preview is for, prefixed with `ctm_`. (pattern: `^ctm_[a-z\d]{26}$`)
  - `address_id`: string (required) — Paddle ID of the address that this transaction preview is for, prefixed with `add_`. Requires `customer_id`. (pattern: `^add_[a-z\d]{26}$`)
  - `business_id`: string | null — Paddle ID of the business that this transaction preview is for, prefixed with `biz_`. (pattern: `^biz_[a-z\d]{26}$`)

### Request example

```json
{
  "items": [
    {
      "quantity": 20,
      "price_id": "pri_01gsz8x8sawmvhz1pv30nge1ke"
    },
    {
      "quantity": 1,
      "price_id": "pri_01h1vjfevh5etwq3rb416a23h2"
    },
    {
      "quantity": 1,
      "price_id": "pri_01gsz98e27ak2tyhexptwc58yk",
      "include_in_totals": false
    }
  ],
  "discount_id": "dsc_01gtgztp8fpchantd5g1wrksa3",
  "address": {
    "country_code": "US"
  },
  "currency_code": "USD"
}
```

## Response (200)

- `data`: object (required) — Represents a transaction entity when previewing transactions.
  - `customer_id`: string | null (required) — Paddle ID of the customer that this transaction preview is for, prefixed with `ctm_`. (pattern: `^ctm_[a-z\d]{26}$`)
  - `address_id`: string | null (required) — Paddle ID of the address that this transaction preview is for, prefixed with `add_`. Send one of `address_id`, `customer_ip_address`, or the `address` object when previewing. (pattern: `^add_[a-z\d]{26}$`)
  - `business_id`: string | null (required) — Paddle ID of the business that this transaction preview is for, prefixed with `biz_`. (pattern: `^biz_[a-z\d]{26}$`)
  - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
    - `USD` — United States Dollar
    - `EUR` — Euro
    - `GBP` — Pound Sterling
    - `JPY` — Japanese Yen
    - `AUD` — Australian Dollar
    - `CAD` — Canadian Dollar
    - `CHF` — Swiss Franc
    - `HKD` — Hong Kong Dollar
    - `SGD` — Singapore Dollar
    - `SEK` — Swedish Krona
    - `ARS` — Argentine Peso
    - `BRL` — Brazilian Real
    - `CLP` — Chilean Peso
    - `CNY` — Chinese Yuan
    - `COP` — Colombian Peso
    - `CZK` — Czech Koruna
    - `DKK` — Danish Krone
    - `HUF` — Hungarian Forint
    - `ILS` — Israeli Shekel
    - `INR` — Indian Rupee
    - `KRW` — South Korean Won
    - `MXN` — Mexican Peso
    - `NOK` — Norwegian Krone
    - `NZD` — New Zealand Dollar
    - `PEN` — Peruvian Sol
    - `PLN` — Polish Zloty
    - `RUB` — Russian Ruble
    - `THB` — Thai Baht
    - `TRY` — Turkish Lira
    - `TWD` — New Taiwan Dollar
    - `UAH` — Ukrainian Hryvnia
    - `VND` — Vietnamese Dong
    - `ZAR` — South African Rand
  - `discount_id`: string | null (required) — Paddle ID of the discount applied to this transaction preview, prefixed with `dsc_`. (pattern: `^dsc_[a-z\d]{26}$`)
  - `customer_ip_address`: string | null (required) — IP address for this transaction preview. Send one of `address_id`, `customer_ip_address`, or the `address` object when previewing.
  - `address`: object | null (required) — Address for this transaction preview. Send one of `address_id`, `customer_ip_address`, or the `address` object when previewing.
    - `postal_code`: string | null (required) — ZIP or postal code of this address. Include for more accurate tax calculations. (Max length: 200)
    - `country_code` (required) — Supported two-letter ISO 3166-1 alpha-2 country code for this address.
      - string — Two-letter code for a country that Paddle supports sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
        - `AD` — Andorra
        - `AE` — United Arab Emirates
        - `AG` — Antigua and Barbuda
        - `AI` — Anguilla
        - `AL` — Albania
        - `AM` — Armenia
        - `AO` — Angola
        - `AR` — Argentina
        - `AS` — American Samoa
        - `AT` — Austria
        - `AU` — Australia
        - `AW` — Aruba
        - `AX` — Åland Islands
        - `AZ` — Azerbaijan
        - `BA` — Bosnia and Herzegovina
        - `BB` — Barbados
        - `BD` — Bangladesh
        - `BE` — Belgium
        - `BF` — Burkina Faso
        - `BG` — Bulgaria
        - `BH` — Bahrain
        - `BI` — Burundi
        - `BJ` — Benin
        - `BL` — Saint Barthélemy
        - `BM` — Bermuda
        - `BN` — Brunei
        - `BO` — Bolivia
        - `BQ` — Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba)
        - `BR` — Brazil
        - `BS` — Bahamas
        - `BT` — Bhutan
        - `BV` — Bouvet Island
        - `BW` — Botswana
        - `BZ` — Belize
        - `CA` — Canada
        - `CC` — Cocos Islands
        - `CG` — Republic of Congo
        - `CH` — Switzerland
        - `CI` — Côte d'Ivoire (Ivory Coast)
        - `CK` — Cook Islands
        - `CL` — Chile
        - `CM` — Cameroon
        - `CN` — China
        - `CO` — Colombia
        - `CR` — Costa Rica
        - `CV` — Cape Verde
        - `CW` — Curaçao
        - `CX` — Christmas Island
        - `CY` — Cyprus
        - `CZ` — Czechia (Czech Republic)
        - `DE` — Germany
        - `DJ` — Djibouti
        - `DK` — Denmark
        - `DM` — Dominica
        - `DO` — Dominican Republic
        - `DZ` — Algeria
        - `EC` — Ecuador
        - `EE` — Estonia
        - `EG` — Egypt
        - `EH` — Western Sahara
        - `ER` — Eritrea
        - `ES` — Spain
        - `ET` — Ethiopia
        - `FI` — Finland
        - `FJ` — Fiji
        - `FK` — Falkland Islands
        - `FM` — Micronesia
        - `FO` — Faroe Islands
        - `FR` — France
        - `GA` — Gabon
        - `GB` — United Kingdom
        - `GD` — Grenada
        - `GE` — Georgia
        - `GF` — French Guiana
        - `GG` — Guernsey
        - `GH` — Ghana
        - `GI` — Gibraltar
        - `GL` — Greenland
        - `GM` — Gambia
        - `GN` — Guinea
        - `GP` — Guadeloupe
        - `GQ` — Equatorial Guinea
        - `GR` — Greece
        - `GS` — South Georgia and the South Sandwich Islands
        - `GT` — Guatemala
        - `GU` — Guam
        - `GW` — Guinea-Bissau
        - `GY` — Guyana
        - `HK` — Hong Kong
        - `HM` — Heard Island and McDonald Islands
        - `HN` — Honduras
        - `HR` — Croatia
        - `HU` — Hungary
        - `ID` — Indonesia
        - `IE` — Ireland
        - `IL` — Israel
        - `IM` — Isle of Man
        - `IN` — India
        - `IO` — British Indian Ocean Territory
        - `IQ` — Iraq
        - `IS` — Iceland
        - `IT` — Italy
        - `JE` — Jersey
        - `JM` — Jamaica
        - `JO` — Jordan
        - `JP` — Japan
        - `KE` — Kenya
        - `KG` — Kyrgyzstan
        - `KH` — Cambodia
        - `KI` — Kiribati
        - `KM` — Comoros
        - `KN` — Saint Kitts and Nevis
        - `KR` — South Korea
        - `KW` — Kuwait
        - `KY` — Cayman Islands
        - `KZ` — Kazakhstan
        - `LA` — Lao People's Democratic Republic (Laos)
        - `LB` — Lebanon
        - `LC` — Saint Lucia
        - `LI` — Liechtenstein
        - `LK` — Sri Lanka
        - `LR` — Liberia
        - `LS` — Lesotho
        - `LT` — Lithuania
        - `LU` — Luxembourg
        - `LV` — Latvia
        - `MA` — Morocco
        - `MC` — Monaco
        - `MD` — Moldova
        - `ME` — Montenegro
        - `MF` — Saint Martin
        - `MG` — Madagascar
        - `MH` — Marshall Islands
        - `MK` — Macedonia
        - `MN` — Mongolia
        - `MO` — Macao
        - `MP` — Northern Mariana Islands
        - `MQ` — Martinique
        - `MR` — Mauritania
        - `MS` — Montserrat
        - `MT` — Malta
        - `MU` — Mauritius
        - `MV` — Maldives
        - `MW` — Malawi
        - `MX` — Mexico
        - `MY` — Malaysia
        - `MZ` — Mozambique
        - `NA` — Namibia
        - `NC` — New Caledonia
        - `NE` — Niger
        - `NF` — Norfolk Island
        - `NG` — Nigeria
        - `NL` — Netherlands
        - `NO` — Norway
        - `NP` — Nepal
        - `NR` — Nauru
        - `NU` — Niue
        - `NZ` — New Zealand
        - `OM` — Oman
        - `PA` — Panama
        - `PE` — Peru
        - `PF` — French Polynesia
        - `PG` — Papua New Guinea
        - `PH` — Philippines
        - `PK` — Pakistan
        - `PL` — Poland
        - `PM` — Saint Pierre and Miquelon
        - `PN` — Pitcairn
        - `PR` — Puerto Rico
        - `PS` — Palestinian territories
        - `PT` — Portugal
        - `PW` — Palau
        - `PY` — Paraguay
        - `QA` — Qatar
        - `RE` — Reunion
        - `RO` — Romania
        - `RS` — Republic of Serbia
        - `RW` — Rwanda
        - `SA` — Saudi Arabia
        - `SB` — Solomon Islands
        - `SC` — Seychelles
        - `SE` — Sweden
        - `SG` — Singapore
        - `SH` — Saint Helena
        - `SI` — Slovenia
        - `SJ` — Svalbard and Jan Mayen
        - `SK` — Slovakia
        - `SL` — Sierra Leone
        - `SM` — San Marino
        - `SN` — Senegal
        - `SR` — Suriname
        - `ST` — São Tomé and Príncipe
        - `SV` — El Salvador
        - `SX` — Sint Maarten
        - `SZ` — Swaziland
        - `TC` — Turks and Caicos Islands
        - `TD` — Chad
        - `TF` — French Southern and Antarctic Lands
        - `TG` — Togo
        - `TH` — Thailand
        - `TJ` — Tajikistan
        - `TK` — Tokelau
        - `TL` — Timor-Leste
        - `TM` — Turkmenistan
        - `TN` — Tunisia
        - `TO` — Tonga
        - `TR` — Turkey
        - `TT` — Trinidad and Tobago
        - `TV` — Tuvalu
        - `TW` — Taiwan
        - `TZ` — Tanzania
        - `UA` — Ukraine
        - `UG` — Uganda
        - `UM` — United States Minor Outlying Islands
        - `US` — United States
        - `UY` — Uruguay
        - `UZ` — Uzbekistan
        - `VA` — Holy See (Vatican City)
        - `VC` — Saint Vincent and the Grenadines
        - `VG` — British Virgin Islands
        - `VI` — U.S. Virgin Islands
        - `VN` — Vietnam
        - `VU` — Vanuatu
        - `WF` — Wallis and Futuna
        - `WS` — Samoa
        - `XK` — Kosovo
        - `YT` — Mayotte
        - `ZA` — South Africa
        - `ZM` — Zambia
      - string — Two-letter code for a country that Paddle does not support sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
        - `AF` — Afghanistan
        - `AQ` — Antarctica
        - `AN` — Netherlands Antilles. Withdrawn ISO 3166-1 code, succeeded by BQ, CW and SX.
        - `BY` — Belarus
        - `CD` — Democratic Republic of Congo
        - `CF` — Central African Republic
        - `CU` — Cuba
        - `CS` — Serbia and Montenegro. Withdrawn ISO 3166-1 code, succeeded by RS and ME.
        - `HT` — Haiti
        - `IR` — Iran
        - `KP` — North Korea
        - `LY` — Libya
        - `ML` — Mali
        - `MM` — Myanmar (Burma)
        - `NI` — Nicaragua
        - `RU` — Russia
        - `SO` — Somalia
        - `SS` — South Sudan
        - `SD` — Sudan
        - `SY` — Syria
        - `VE` — Venezuela
        - `YE` — Yemen
        - `ZW` — Zimbabwe
  - `ignore_trials`: boolean (required) — Whether trials should be ignored for transaction preview calculations.

By default, recurring items with trials are considered to have a zero charge when previewing. Set to `true` to disable this. (default: `false`)
  - `items`: array (required) — List of items to preview transaction calculations for. (Items: 1–100)
    - `quantity`: integer (required) — Quantity of this item on the transaction.
    - `include_in_totals`: boolean (required) — Whether this item should be included in totals for this transaction preview. Typically used to exclude one-time charges from calculations. (default: `true`)
    - `proration`: object | null (required) — How proration was calculated for this item. `null` for transaction previews.
      - `rate`: string (required) — Rate used to calculate proration.
      - `billing_period`: object (required) — Billing period that proration is based on.
        - `starts_at`: string (date-time) (required) — RFC 3339 datetime string of when this period starts.
        - `ends_at`: string (date-time) (required) — RFC 3339 datetime string of when this period ends.
    - `price`: object (required) — Represents a price preview entity.
      - `id`: string | null (required) — Unique Paddle ID for this price, prefixed with `pri_`.
The value is null for custom prices being previewed. (pattern: `^pri_[a-z\d]{26}$`)
      - `product_id`: string | null (required) — Paddle ID for the product that this price is for, prefixed with `pro_`.
The value is null for custom products being previewed. (pattern: `^pro_[a-z\d]{26}$`)
      - `description`: string (required) — Internal description for this price, not shown to customers. Typically notes for your team. (Length: 2–500)
      - `type`: string (required) — Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. (default: `"standard"`)
        - `custom` — Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard.
        - `standard` — Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily.
      - `name`: string | null (required) — Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. (Length: 1–150)
      - `billing_cycle`: object | null (required) — How often this price should be charged. `null` if price is non-recurring (one-time).
        - `interval`: string (required) — Unit of time.
          - `day`
          - `week`
          - `month`
          - `year`
        - `frequency`: integer (required) — Amount of time. (Min: 1)
      - `trial_period`: object | null (required) — 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`.
        - `interval`: string (required) — Unit of time.
          - `day`
          - `week`
          - `month`
          - `year`
        - `frequency`: integer (required) — Amount of time. (Min: 1)
      - `tax_mode`: string (required) — How tax is calculated for this price. (default: `"account_setting"`)
        - `account_setting` — Prices use the setting from your account.
        - `external` — Prices are exclusive of tax.
        - `internal` — Prices are inclusive of tax.
        - `location` — Prices are inclusive or exclusive of tax, depending on the country of the transaction.
      - `unit_price`: object (required) — Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`.
        - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
        - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
          - `USD` — United States Dollar
          - `EUR` — Euro
          - `GBP` — Pound Sterling
          - `JPY` — Japanese Yen
          - `AUD` — Australian Dollar
          - `CAD` — Canadian Dollar
          - `CHF` — Swiss Franc
          - `HKD` — Hong Kong Dollar
          - `SGD` — Singapore Dollar
          - `SEK` — Swedish Krona
          - `ARS` — Argentine Peso
          - `BRL` — Brazilian Real
          - `CLP` — Chilean Peso
          - `CNY` — Chinese Yuan
          - `COP` — Colombian Peso
          - `CZK` — Czech Koruna
          - `DKK` — Danish Krone
          - `HUF` — Hungarian Forint
          - `ILS` — Israeli Shekel
          - `INR` — Indian Rupee
          - `KRW` — South Korean Won
          - `MXN` — Mexican Peso
          - `NOK` — Norwegian Krone
          - `NZD` — New Zealand Dollar
          - `PEN` — Peruvian Sol
          - `PLN` — Polish Zloty
          - `RUB` — Russian Ruble
          - `THB` — Thai Baht
          - `TRY` — Turkish Lira
          - `TWD` — New Taiwan Dollar
          - `UAH` — Ukrainian Hryvnia
          - `VND` — Vietnamese Dong
          - `ZAR` — South African Rand
      - `unit_price_overrides`: array (required) — List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. (Items: max 250)
        - `country_codes`: array (required) — Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. (Items: min 1, unique)
          - string — Two-letter code for a country that Paddle supports sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
            - `AD` — Andorra
            - `AE` — United Arab Emirates
            - `AG` — Antigua and Barbuda
            - `AI` — Anguilla
            - `AL` — Albania
            - `AM` — Armenia
            - `AO` — Angola
            - `AR` — Argentina
            - `AS` — American Samoa
            - `AT` — Austria
            - `AU` — Australia
            - `AW` — Aruba
            - `AX` — Åland Islands
            - `AZ` — Azerbaijan
            - `BA` — Bosnia and Herzegovina
            - `BB` — Barbados
            - `BD` — Bangladesh
            - `BE` — Belgium
            - `BF` — Burkina Faso
            - `BG` — Bulgaria
            - `BH` — Bahrain
            - `BI` — Burundi
            - `BJ` — Benin
            - `BL` — Saint Barthélemy
            - `BM` — Bermuda
            - `BN` — Brunei
            - `BO` — Bolivia
            - `BQ` — Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba)
            - `BR` — Brazil
            - `BS` — Bahamas
            - `BT` — Bhutan
            - `BV` — Bouvet Island
            - `BW` — Botswana
            - `BZ` — Belize
            - `CA` — Canada
            - `CC` — Cocos Islands
            - `CG` — Republic of Congo
            - `CH` — Switzerland
            - `CI` — Côte d'Ivoire (Ivory Coast)
            - `CK` — Cook Islands
            - `CL` — Chile
            - `CM` — Cameroon
            - `CN` — China
            - `CO` — Colombia
            - `CR` — Costa Rica
            - `CV` — Cape Verde
            - `CW` — Curaçao
            - `CX` — Christmas Island
            - `CY` — Cyprus
            - `CZ` — Czechia (Czech Republic)
            - `DE` — Germany
            - `DJ` — Djibouti
            - `DK` — Denmark
            - `DM` — Dominica
            - `DO` — Dominican Republic
            - `DZ` — Algeria
            - `EC` — Ecuador
            - `EE` — Estonia
            - `EG` — Egypt
            - `EH` — Western Sahara
            - `ER` — Eritrea
            - `ES` — Spain
            - `ET` — Ethiopia
            - `FI` — Finland
            - `FJ` — Fiji
            - `FK` — Falkland Islands
            - `FM` — Micronesia
            - `FO` — Faroe Islands
            - `FR` — France
            - `GA` — Gabon
            - `GB` — United Kingdom
            - `GD` — Grenada
            - `GE` — Georgia
            - `GF` — French Guiana
            - `GG` — Guernsey
            - `GH` — Ghana
            - `GI` — Gibraltar
            - `GL` — Greenland
            - `GM` — Gambia
            - `GN` — Guinea
            - `GP` — Guadeloupe
            - `GQ` — Equatorial Guinea
            - `GR` — Greece
            - `GS` — South Georgia and the South Sandwich Islands
            - `GT` — Guatemala
            - `GU` — Guam
            - `GW` — Guinea-Bissau
            - `GY` — Guyana
            - `HK` — Hong Kong
            - `HM` — Heard Island and McDonald Islands
            - `HN` — Honduras
            - `HR` — Croatia
            - `HU` — Hungary
            - `ID` — Indonesia
            - `IE` — Ireland
            - `IL` — Israel
            - `IM` — Isle of Man
            - `IN` — India
            - `IO` — British Indian Ocean Territory
            - `IQ` — Iraq
            - `IS` — Iceland
            - `IT` — Italy
            - `JE` — Jersey
            - `JM` — Jamaica
            - `JO` — Jordan
            - `JP` — Japan
            - `KE` — Kenya
            - `KG` — Kyrgyzstan
            - `KH` — Cambodia
            - `KI` — Kiribati
            - `KM` — Comoros
            - `KN` — Saint Kitts and Nevis
            - `KR` — South Korea
            - `KW` — Kuwait
            - `KY` — Cayman Islands
            - `KZ` — Kazakhstan
            - `LA` — Lao People's Democratic Republic (Laos)
            - `LB` — Lebanon
            - `LC` — Saint Lucia
            - `LI` — Liechtenstein
            - `LK` — Sri Lanka
            - `LR` — Liberia
            - `LS` — Lesotho
            - `LT` — Lithuania
            - `LU` — Luxembourg
            - `LV` — Latvia
            - `MA` — Morocco
            - `MC` — Monaco
            - `MD` — Moldova
            - `ME` — Montenegro
            - `MF` — Saint Martin
            - `MG` — Madagascar
            - `MH` — Marshall Islands
            - `MK` — Macedonia
            - `MN` — Mongolia
            - `MO` — Macao
            - `MP` — Northern Mariana Islands
            - `MQ` — Martinique
            - `MR` — Mauritania
            - `MS` — Montserrat
            - `MT` — Malta
            - `MU` — Mauritius
            - `MV` — Maldives
            - `MW` — Malawi
            - `MX` — Mexico
            - `MY` — Malaysia
            - `MZ` — Mozambique
            - `NA` — Namibia
            - `NC` — New Caledonia
            - `NE` — Niger
            - `NF` — Norfolk Island
            - `NG` — Nigeria
            - `NL` — Netherlands
            - `NO` — Norway
            - `NP` — Nepal
            - `NR` — Nauru
            - `NU` — Niue
            - `NZ` — New Zealand
            - `OM` — Oman
            - `PA` — Panama
            - `PE` — Peru
            - `PF` — French Polynesia
            - `PG` — Papua New Guinea
            - `PH` — Philippines
            - `PK` — Pakistan
            - `PL` — Poland
            - `PM` — Saint Pierre and Miquelon
            - `PN` — Pitcairn
            - `PR` — Puerto Rico
            - `PS` — Palestinian territories
            - `PT` — Portugal
            - `PW` — Palau
            - `PY` — Paraguay
            - `QA` — Qatar
            - `RE` — Reunion
            - `RO` — Romania
            - `RS` — Republic of Serbia
            - `RW` — Rwanda
            - `SA` — Saudi Arabia
            - `SB` — Solomon Islands
            - `SC` — Seychelles
            - `SE` — Sweden
            - `SG` — Singapore
            - `SH` — Saint Helena
            - `SI` — Slovenia
            - `SJ` — Svalbard and Jan Mayen
            - `SK` — Slovakia
            - `SL` — Sierra Leone
            - `SM` — San Marino
            - `SN` — Senegal
            - `SR` — Suriname
            - `ST` — São Tomé and Príncipe
            - `SV` — El Salvador
            - `SX` — Sint Maarten
            - `SZ` — Swaziland
            - `TC` — Turks and Caicos Islands
            - `TD` — Chad
            - `TF` — French Southern and Antarctic Lands
            - `TG` — Togo
            - `TH` — Thailand
            - `TJ` — Tajikistan
            - `TK` — Tokelau
            - `TL` — Timor-Leste
            - `TM` — Turkmenistan
            - `TN` — Tunisia
            - `TO` — Tonga
            - `TR` — Turkey
            - `TT` — Trinidad and Tobago
            - `TV` — Tuvalu
            - `TW` — Taiwan
            - `TZ` — Tanzania
            - `UA` — Ukraine
            - `UG` — Uganda
            - `UM` — United States Minor Outlying Islands
            - `US` — United States
            - `UY` — Uruguay
            - `UZ` — Uzbekistan
            - `VA` — Holy See (Vatican City)
            - `VC` — Saint Vincent and the Grenadines
            - `VG` — British Virgin Islands
            - `VI` — U.S. Virgin Islands
            - `VN` — Vietnam
            - `VU` — Vanuatu
            - `WF` — Wallis and Futuna
            - `WS` — Samoa
            - `XK` — Kosovo
            - `YT` — Mayotte
            - `ZA` — South Africa
            - `ZM` — Zambia
          - string — Two-letter code for a country that Paddle does not support sales to. Typically an ISO 3166-1 alpha-2 code, though Paddle uses a small number of codes that ISO doesn't currently assign.
            - `AF` — Afghanistan
            - `AQ` — Antarctica
            - `AN` — Netherlands Antilles. Withdrawn ISO 3166-1 code, succeeded by BQ, CW and SX.
            - `BY` — Belarus
            - `CD` — Democratic Republic of Congo
            - `CF` — Central African Republic
            - `CU` — Cuba
            - `CS` — Serbia and Montenegro. Withdrawn ISO 3166-1 code, succeeded by RS and ME.
            - `HT` — Haiti
            - `IR` — Iran
            - `KP` — North Korea
            - `LY` — Libya
            - `ML` — Mali
            - `MM` — Myanmar (Burma)
            - `NI` — Nicaragua
            - `RU` — Russia
            - `SO` — Somalia
            - `SS` — South Sudan
            - `SD` — Sudan
            - `SY` — Syria
            - `VE` — Venezuela
            - `YE` — Yemen
            - `ZW` — Zimbabwe
        - `unit_price`: object (required) — Override price. This price applies to customers located in the countries for this unit price override.
          - `amount`: string (required) — Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer.
          - `currency_code`: string (required) — Supported three-letter ISO 4217 currency code.
            - `USD` — United States Dollar
            - `EUR` — Euro
            - `GBP` — Pound Sterling
            - `JPY` — Japanese Yen
            - `AUD` — Australian Dollar
            - `CAD` — Canadian Dollar
            - `CHF` — Swiss Franc
            - `HKD` — Hong Kong Dollar
            - `SGD` — Singapore Dollar
            - `SEK` — Swedish Krona
            - `ARS` — Argentine Peso
            - `BRL` — Brazilian Real
            - `CLP` — Chilean Peso
            - `CNY` — Chinese Yuan
            - `COP` — Colombian Peso
            - `CZK` — Czech Koruna
            - `DKK` — Danish Krone
            - `HUF` — Hungarian Forint
            - `ILS` — Israeli Shekel
            - `INR` — Indian Rupee
            - `KRW` — South Korean Won
            - `MXN` — Mexican Peso
            - `NOK` — Norwegian Krone
            - `NZD` — New Zealand Dollar
            - `PEN` — Peruvian Sol
            - `PLN` — Polish Zloty
            - `RUB` — Russian Ruble
            - `THB` — Thai Baht
            - `TRY` — Turkish Lira
            - `TWD` — New Taiwan Dollar
            - `UAH` — Ukrainian Hryvnia
            - `VND` — Vietnamese Dong
            - `ZAR` — South African Rand
      - `quantity`: object (required) — Limits on how many times the related product can be purchased at this price. Useful for discount campaigns.
        - `minimum`: integer (required) — Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. (Range: 1–999999999; default: `1`)
        - `maximum`: integer (required) — Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. (Range: 1–999999999; default: `100`)
      - `status`: string (required) — Whether this entity can be used in Paddle. (default: `"active"`)
        - `active` — Entity is active and can be used.
        - `archived` — Entity is archived, so can't be used.
      - `custom_data`: object | null (required) — Your own structured key-value data.
      - `import_meta`: object | null (required) — Import information for this entity. `null` if this entity is not imported.
        - `external_id`: string | null — Reference or identifier for this entity from the provider where it was imported from. (Length: 1–200)
        - `imported_from`: string (required) — Name of the platform or provider where this entity was imported from. (Length: 1–200)
      - `created_at`: string (date-time) (required) — RFC 3339 datetime string of when this entity was created. Set automatically by Paddle.
      - `updated_at`: string (date-time) (required) — RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle.
  - `details`: object (required) — Calculated totals for a transaction preview, including discounts, tax, and currency conversion. Considered the source of truth for totals on a transaction preview.
    - `tax_rates_used`: array (required) — List of tax rates applied to this transaction preview.
      - `tax_rate`: string (required) — Rate used to calculate tax for this transaction preview.
      - `totals`: object (required) — Calculated totals for the tax applied to this transaction preview.
        - `subtotal`: string (required) — Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity.
        - `discount`: string (required) — Total discount as a result of any discounts applied.

Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied.
        - `tax`: string (required) — Total tax on the subtotal.
        - `total`: string (required) — Total after discount and tax.
    - `totals`: object (required) — Breakdown of the total for a transaction preview. `fee` and `earnings` always return `null` for transaction previews.
      - `subtotal`: string (required) — Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity.
      - `discount`: string (required) — Total discount as a result of any discounts applied.

Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied.
      - `tax`: string (required) — Total tax on the subtotal.
      - `total`: string (required) — Total after discount and tax.
      - `credit`: string (required) — Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction.
      - `credit_to_balance`: string (required) — Additional credit generated from negative `details.line_items`. This credit is added to the customer balance.
      - `balance`: string (required) — Total due on a transaction after credits and any payments.
      - `grand_total`: string (required) — Total due on a transaction after credits but before any payments.
      - `grand_total_tax`: string (required) — Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced.
      - `fee`: string | null (required) — Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed.
      - `earnings`: string | null (required) — Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed.
      - `currency_code`: string (required) — Three-letter ISO 4217 currency code of the currency used for this transaction.
        - `USD` — United States Dollar
        - `EUR` — Euro
        - `GBP` — Pound Sterling
        - `JPY` — Japanese Yen
        - `AUD` — Australian Dollar
        - `CAD` — Canadian Dollar
        - `CHF` — Swiss Franc
        - `HKD` — Hong Kong Dollar
        - `SGD` — Singapore Dollar
        - `SEK` — Swedish Krona
        - `ARS` — Argentine Peso
        - `BRL` — Brazilian Real
        - `CLP` — Chilean Peso
        - `CNY` — Chinese Yuan
        - `COP` — Colombian Peso
        - `CZK` — Czech Koruna
        - `DKK` — Danish Krone
        - `HUF` — Hungarian Forint
        - `ILS` — Israeli Shekel
        - `INR` — Indian Rupee
        - `KRW` — South Korean Won
        - `MXN` — Mexican Peso
        - `NOK` — Norwegian Krone
        - `NZD` — New Zealand Dollar
        - `PEN` — Peruvian Sol
        - `PLN` — Polish Zloty
        - `RUB` — Russian Ruble
        - `THB` — Thai Baht
        - `TRY` — Turkish Lira
        - `TWD` — New Taiwan Dollar
        - `UAH` — Ukrainian Hryvnia
        - `VND` — Vietnamese Dong
        - `ZAR` — South African Rand
    - `line_items`: array (required) — Information about line items for this transaction preview. Different from transaction preview `items` as they include totals calculated by Paddle. Considered the source of truth for line item totals.
      - `price_id`: string | null (required) — Paddle ID for the price related to this transaction line item, prefixed with `pri_`.
The value is null for custom prices being previewed. (pattern: `^pri_[a-z\d]{26}$`)
      - `quantity`: integer (required) — Quantity of this transaction line item.
      - `tax_rate`: string (required) — Rate used to calculate tax for this transaction line item.
      - `unit_totals`: object (required) — Breakdown of the charge for one unit in the lowest denomination of a currency (e.g. cents for USD).
        - `subtotal`: string (required) — Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity.
        - `discount`: string (required) — Total discount as a result of any discounts applied.

Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied.
        - `tax`: string (required) — Total tax on the subtotal.
        - `total`: string (required) — Total after discount and tax.
      - `totals`: object (required) — Breakdown of a charge in the lowest denomination of a currency (e.g. cents for USD).
        - `subtotal`: string (required) — Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity.
        - `discount`: string (required) — Total discount as a result of any discounts applied.

Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied.
        - `tax`: string (required) — Total tax on the subtotal.
        - `total`: string (required) — Total after discount and tax.
      - `product`: object (required) — Related product entity for this transaction line item price.
        - `id`: string | null (required) — Unique Paddle ID for this product, prefixed with `pro_`.
The value is null for custom products being previewed. (pattern: `^pro_[a-z\d]{26}$`)
        - `name`: string (required) — Name of this product. (Length: 1–200)
        - `description`: string | null (required) — Short description for this product. (Max length: 2048)
        - `type`: string (required) — Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. (default: `"standard"`)
          - `custom` — Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard.
          - `standard` — Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily.
        - `tax_category`: string (required) — Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account.
          - `digital-goods` — Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered.
          - `ebooks` — Digital books and educational material which is sold with permanent rights for use by the customer.
          - `implementation-services` — Remote configuration, set-up, and integrating software on behalf of a customer.
          - `professional-services` — Services that involve the application of your expertise and specialized knowledge of a software product.
          - `saas` — Products that allow users to connect to and use online or cloud-based applications over the Internet.
          - `software-programming-services` — Services that can be used to customize and white label software products.
          - `standard` — Software products that are pre-written and can be downloaded and installed onto a local device.
          - `training-services` — Training and education services related to software products.
          - `website-hosting` — Cloud storage service for personal or corporate information, assets, or intellectual property.
        - `image_url` (required) — Image for this product. Included in the checkout and on some customer documents.
          - Image Url — A URL to an image.
          - Empty String
        - `custom_data`: object | null (required) — Your own structured key-value data.
        - `status`: string (required) — Whether this entity can be used in Paddle. (default: `"active"`)
          - `active` — Entity is active and can be used.
          - `archived` — Entity is archived, so can't be used.
        - `import_meta`: object | null (required) — Import information for this entity. `null` if this entity is not imported.
          - `external_id`: string | null — Reference or identifier for this entity from the provider where it was imported from. (Length: 1–200)
          - `imported_from`: string (required) — Name of the platform or provider where this entity was imported from. (Length: 1–200)
        - `created_at`: string (date-time) (required) — RFC 3339 datetime string of when this entity was created. Set automatically by Paddle.
        - `updated_at`: string (date-time) (required) — RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle.
      - `proration`: object | null (required) — How proration was calculated for this item.
        - `rate`: string (required) — Rate used to calculate proration.
        - `billing_period`: object (required) — Billing period that proration is based on.
          - `starts_at`: string (date-time) (required) — RFC 3339 datetime string of when this period starts.
          - `ends_at`: string (date-time) (required) — RFC 3339 datetime string of when this period ends.
  - `available_payment_methods`: array (required) — List of available payment methods for Paddle Checkout given the price and location information passed.
    - `alipay` — Alipay, popular in China.
    - `apple_pay` — Apple Pay on a supported Apple device.
    - `bancontact` — Bancontact, popular in Belgium.
    - `blik` — BLIK, a popular payment method in Poland.
    - `card` — Credit or debit card.
    - `google_pay` — Google Pay on a supported Android device, Chromebook, or Google Chrome browser.
    - `ideal` — iDEAL, popular in the Netherlands.
    - `kakao_pay` — Kakao Pay, a popular payment method in South Korea.
    - `korea_local` — Korean payment methods, which includes over 20 payment options for the Korean market.
    - `naver_pay` — Naver Pay, a popular payment method in South Korea.
    - `payco` — Payco, a popular payment method in South Korea.
    - `samsung_pay` — Samsung Pay, a popular payment method in South Korea.
    - `south_korea_local_card` — Korean local credit or debit card.
    - `mb_way` — MB WAY, a popular payment method in Portugal.
    - `paypal` — PayPal.
    - `pix` — Pix, popular in Brazil.
    - `upi` — Unified Payments Interface (UPI), popular in India.
    - `wechat_pay` — WeChat Pay, a popular payment method in China.
- `meta`: object (required) — Information about this response.
  - `request_id`: string (required) — Unique ID for the request relating to this response. Provide this when contacting Paddle support about a specific request.

### Response example

```json
{
  "data": {
    "customer_id": null,
    "address_id": null,
    "business_id": null,
    "currency_code": "USD",
    "discount_id": "dsc_01gtgztp8fpchantd5g1wrksa3",
    "address": {
      "postal_code": "",
      "country_code": "US"
    },
    "customer_ip_address": null,
    "items": [
      {
        "price": {
          "id": "pri_01gsz8x8sawmvhz1pv30nge1ke",
          "description": "Monthly",
          "type": "standard",
          "name": "Monthly (per seat)",
          "product_id": "pro_01gsz4t5hdjse780zja8vvr7jg",
          "billing_cycle": {
            "interval": "month",
            "frequency": 1
          },
          "trial_period": null,
          "tax_mode": "account_setting",
          "unit_price": {
            "amount": "3000",
            "currency_code": "USD"
          },
          "unit_price_overrides": [],
          "custom_data": null,
          "quantity": {
            "minimum": 1,
            "maximum": 999
          },
          "status": "active",
          "created_at": "2023-02-23T13:55:22.538367Z",
          "updated_at": "2024-04-11T13:54:52.254748Z",
          "import_meta": null
        },
        "quantity": 20,
        "proration": null,
        "include_in_totals": true
      },
      {
        "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,
        "proration": null,
        "include_in_totals": true
      },
      {
        "price": {
          "id": "pri_01gsz98e27ak2tyhexptwc58yk",
          "description": "One-time addon",
          "type": "standard",
          "name": "One-time addon",
          "product_id": "pro_01gsz97mq9pa4fkyy0wqenepkz",
          "billing_cycle": null,
          "trial_period": null,
          "tax_mode": "account_setting",
          "unit_price": {
            "amount": "19900",
            "currency_code": "USD"
          },
          "unit_price_overrides": [],
          "custom_data": null,
          "quantity": {
            "minimum": 1,
            "maximum": 1
          },
          "status": "active",
          "created_at": "2023-02-23T14:01:28.391712Z",
          "updated_at": "2024-04-09T07:23:10.921392Z",
          "import_meta": null
        },
        "quantity": 1,
        "proration": null,
        "include_in_totals": false
      }
    ],
    "details": {
      "tax_rates_used": [
        {
          "tax_rate": "0",
          "totals": {
            "subtotal": "70000",
            "discount": "7000",
            "tax": "0",
            "total": "63000"
          }
        }
      ],
      "totals": {
        "subtotal": "70000",
        "tax": "0",
        "discount": "7000",
        "total": "63000",
        "grand_total": "63000",
        "grand_total_tax": "0",
        "fee": null,
        "credit": "0",
        "credit_to_balance": "0",
        "balance": "63000",
        "earnings": null,
        "currency_code": "USD"
      },
      "line_items": [
        {
          "price_id": "pri_01gsz8x8sawmvhz1pv30nge1ke",
          "quantity": 20,
          "totals": {
            "subtotal": "60000",
            "tax": "0",
            "discount": "6000",
            "total": "54000"
          },
          "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
          },
          "tax_rate": "0",
          "unit_totals": {
            "subtotal": "3000",
            "tax": "0",
            "discount": "300",
            "total": "2700"
          },
          "proration": null
        },
        {
          "price_id": "pri_01h1vjfevh5etwq3rb416a23h2",
          "quantity": 1,
          "totals": {
            "subtotal": "10000",
            "tax": "0",
            "discount": "1000",
            "total": "9000"
          },
          "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
          },
          "tax_rate": "0",
          "unit_totals": {
            "subtotal": "10000",
            "tax": "0",
            "discount": "1000",
            "total": "9000"
          },
          "proration": null
        },
        {
          "price_id": "pri_01gsz98e27ak2tyhexptwc58yk",
          "quantity": 1,
          "totals": {
            "subtotal": "19900",
            "tax": "0",
            "discount": "1990",
            "total": "17910"
          },
          "product": {
            "id": "pro_01gsz97mq9pa4fkyy0wqenepkz",
            "name": "Custom domains",
            "description": "Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account.",
            "type": "standard",
            "tax_category": "standard",
            "image_url": "https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png",
            "custom_data": null,
            "status": "active",
            "created_at": "2023-02-23T14:01:02.441Z",
            "updated_at": "2024-04-05T15:43:28.971Z",
            "import_meta": null
          },
          "tax_rate": "0",
          "unit_totals": {
            "subtotal": "19900",
            "tax": "0",
            "discount": "1990",
            "total": "17910"
          },
          "proration": null
        }
      ]
    },
    "ignore_trials": false,
    "available_payment_methods": [
      "apple_pay",
      "card",
      "paypal",
      "google_pay"
    ]
  },
  "meta": {
    "request_id": "eb3d6481-6799-4e30-8676-0dc96a356182"
  }
}
```
