Creates a new discount.
If successful, your response includes a copy of the new discount entity.
Requests are authenticated with API keys. Provide your API key as a Bearer token in the Authorization header.
API keys are assigned permissions, granting them access to entities and operations.
Each endpoint may require one or more permissions, defined with the x-permissions extension.
Values for include parameters may require specific permissions as defined in the x-enum-permissions extension.
See all available permissions in the permission schema or documentation.
Get an API key and select the permissions you need from the Paddle dashboard under Paddle > Developer Tools > Authentication.
Represents a discount entity when creating discounts.
Short description for this discount for your reference. Not shown to customers.
1 - 500Type of discount. Determines how this discount impacts the checkout or transaction total.
flat, flat_per_seat, percentage 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.
Whether this discount can be redeemed by customers at checkout (true) or not (false).
Unique code that customers can use to redeem this discount at checkout. Use letters and numbers only, up to 32 characters. Not case-sensitive.
If omitted and enabled_for_checkout is true, Paddle generates a random 10-character code.
1 - 32Discount mode. Standard discounts are considered part of your catalog and are shown in the Paddle dashboard. If omitted, defaults to standard.
standard, custom Supported three-letter ISO 4217 currency code. Required where discount type is flat or flat_per_seat.
USD, EUR, GBP, JPY, AUD, CAD, CHF, HKD, SGD, SEK, ARS, BRL, CNY, COP, CZK, DKK, HUF, ILS, INR, KRW, MXN, NOK, NZD, PLN, RUB, THB, TRY, TWD, UAH, VND, ZAR 3Whether this discount applies for multiple subscription billing periods (true) or not (false). If omitted, defaults to false.
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.
x >= 1Maximum number of times this discount can be redeemed. This is an overall limit for this discount, rather than a per-customer limit. null if this discount can be redeemed an unlimited amount of times.
Paddle counts a usage as a redemption on a checkout, transaction, or the initial application against a subscription. Transactions created for subscription renewals, midcycle changes, and one-time charges aren't considered a redemption.
x >= 1Product 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.
RFC 3339 datetime string of when this discount expires. Discount can no longer be redeemed after this date has elapsed. null if this discount can be redeemed forever.
Expired discounts can't be redeemed against transactions or checkouts, but can be applied when updating subscriptions.
"2024-10-12T07:20:50.52Z"
Your own structured key-value data.
{ "customer_reference_id": "abcd1234" }