Create a promotion code ​
A promotion code points to an underlying promotion. You can optionally restrict the code to a specific customer, redemption limit, and expiration date.
Returns ​
Returns the promotion code object.
Parameters ​
promotion(object, required) The promotion referenced by this promotion code.promotion.type(enum, required) Specifies the type of promotion. Possible enum values:couponCoupon promotion type.
promotion.coupon(string, optional) If promotiontypeiscoupon, the coupon for this promotion code.
active(boolean, optional) Whether the promotion code is currently active.code(string, optional) The customer-facing code. Regardless of case, this code must be unique across all active promotion codes for a specific customer. Valid characters are lower case letters (a-z), upper case letters (A-Z), digits (0-9), and dashes (-).If left blank, we will generate one automatically.
The maximum length is 500 characters.
customer(string, optional) The customer who can use this promotion code. If not set, all customers can use the promotion code.customer_account(string, optional) The account representing the customer who can use this promotion code. If not set, all customers can use the promotion code.expires_at(timestamp, optional) The timestamp at which this promotion code will expire. If the coupon has specified aredeems_by, then this value cannot be after the coupon’sredeems_by.max_redemptions(integer, optional) A positive integer specifying the number of times the promotion code can be redeemed. If the coupon has specified amax_redemptions, then this value cannot be greater than the coupon’smax_redemptions.metadata(object, optional) Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value tometadata.restrictions(object, optional) Settings that restrict the redemption of the promotion code.restrictions.currency_options(object, optional) Promotion codes defined in each available currency option. Each key must be a three-letter ISO currency code and a supported currency.restrictions.currency_options.<currency>.minimum_amount(integer, optional) Minimum amount required to redeem this Promotion Code into a Coupon (e.g., a purchase must be $100 or more to work).
restrictions.first_time_transaction(boolean, optional) A Boolean indicating if the Promotion Code should only be redeemed for Customers without any successful payments or invoicesrestrictions.minimum_amount(integer, optional) Minimum amount required to redeem this Promotion Code into a Coupon (e.g., a purchase must be $100 or more to work).restrictions.minimum_amount_currency(enum, optional) Three-letter ISO code for minimum_amount
curl
curl https://api.stripe.com/v1/promotion_codes \
-u "<<YOUR_SECRET_KEY>>" \
-d "promotion[type]=coupon" \
-d "promotion[coupon]=nVJYDOag"Response ​
json
{
"id": "promo_1MiM6KLkdIwHu7ixrIaX4wgn",
"object": "promotion_code",
"active": true,
"code": "A1H1Q1MG",
"promotion": {
"type": "coupon",
"coupon": "nVJYDOag"
},
"created": 1678040164,
"customer": null,
"expires_at": null,
"livemode": false,
"max_redemptions": null,
"metadata": {},
"restrictions": {
"first_time_transaction": false,
"minimum_amount": null,
"minimum_amount_currency": null
},
"times_redeemed": 0
}