pub struct Coupon {Show 16 fields
pub amount_off: Option<i64>,
pub applies_to: Option<CouponAppliesTo>,
pub created: Timestamp,
pub currency: Option<Currency>,
pub currency_options: Option<HashMap<Currency, CouponCurrencyOption>>,
pub duration: CouponDuration,
pub duration_in_months: Option<i64>,
pub id: CouponId,
pub livemode: bool,
pub max_redemptions: Option<i64>,
pub metadata: Option<HashMap<String, String>>,
pub name: Option<String>,
pub percent_off: Option<f64>,
pub redeem_by: Option<Timestamp>,
pub times_redeemed: i64,
pub valid: bool,
}
Expand description
A coupon contains information about a percent-off or amount-off discount you might want to apply to a customer. Coupons may be applied to subscriptions, invoices,. checkout sessions, quotes, and more. Coupons do not work with conventional one-off charges or payment intents.
For more details see <https://stripe.com/docs/api/coupons/object>.
Fields§
§amount_off: Option<i64>
Amount (in the currency
specified) that will be taken off the subtotal of any invoices for this customer.
applies_to: Option<CouponAppliesTo>
§created: Timestamp
Time at which the object was created. Measured in seconds since the Unix epoch.
currency: Option<Currency>
If amount_off
has been set, the three-letter ISO code for the currency of the amount to take off.
currency_options: Option<HashMap<Currency, CouponCurrencyOption>>
Coupons defined in each available currency option. Each key must be a three-letter ISO currency code and a supported currency.
duration: CouponDuration
One of forever
, once
, or repeating
.
Describes how long a customer who applies this coupon will get the discount.
duration_in_months: Option<i64>
If duration
is repeating
, the number of months the coupon applies.
Null if coupon duration
is forever
or once
.
id: CouponId
Unique identifier for the object.
livemode: bool
Has the value true
if the object exists in live mode or the value false
if the object exists in test mode.
max_redemptions: Option<i64>
Maximum number of times this coupon can be redeemed, in total, across all customers, before it is no longer valid.
metadata: Option<HashMap<String, String>>
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.
name: Option<String>
Name of the coupon displayed to customers on for instance invoices or receipts.
percent_off: Option<f64>
Percent that will be taken off the subtotal of any invoices for this customer for the duration of the coupon. For example, a coupon with percent_off of 50 will make a $ (or local equivalent)100 invoice $ (or local equivalent)50 instead.
redeem_by: Option<Timestamp>
Date after which the coupon can no longer be redeemed.
times_redeemed: i64
Number of times this coupon has been applied to a customer.
valid: bool
Taking account of the above properties, whether this coupon can still be applied to a customer.