List discounts
Returns a paginated list of discounts. Use the query parameters to page through results.
By default, Paddle returns discounts that are active
. Use the status
query parameter to return discounts that are archived or expired.
Query Parameters
Return entities after the specified Paddle ID when working with paginated endpoints. Used in the meta.pagination.next
URL in responses for list operations.
Return entities that match the discount code. Use a comma-separated list to specify multiple discount codes.
Return only the IDs specified. Use a comma-separated list to get multiple entities.
Order returned entities by the specified field and direction ([ASC]
or [DESC]
). For example, ?order_by=id[ASC]
.
Valid fields for ordering: created_at
and id
.
Set how many entities are returned per page. Paddle returns the maximum number of results if a number greater than the maximum is requested. Check meta.pagination.per_page
in the response to see how many were returned.
Default: 50
; Maximum: 200
.
Return entities that match the specified status. Use a comma-separated list to specify multiple status values.
Response
Represents a discount entity.
Unique Paddle ID for this discount, prefixed with dsc_
.
Whether this entity can be used in Paddle.
Short description for this discount for your reference. Not shown to customers.
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. Not case-sensitive.
Type of discount. Determines how this discount impacts the checkout or transaction total.
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.
Supported three-letter ISO 4217 currency code. Required where discount type is flat
or flat_per_seat
.
Whether this discount applies for multiple subscription billing periods (true
) or not (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.
Maximum 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.
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.
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.
Your own structured key-value data.
How many times this discount has been redeemed. Automatically incremented by Paddle.
Paddle counts a usage as a redemption on a checkout, transaction, or subscription. Transactions created for subscription renewals, midcycle changes, and one-time charges aren't considered a redemption.
RFC 3339 datetime string of when this entity was created. Set automatically by Paddle.
RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle.
Import information for this entity. null
if this entity is not imported.
Information about this response.
Unique ID for the request relating to this response. Provide this when contacting Paddle support about a specific request.
Keys used for working with paginated results.