Struct stripe::CreateCoupon[][src]

pub struct CreateCoupon<'a> {
    pub amount_off: Option<i64>,
    pub applies_to: Option<CreateCouponAppliesTo>,
    pub currency: Option<Currency>,
    pub duration: CouponDuration,
    pub duration_in_months: Option<i64>,
    pub expand: &'a [&'a str],
    pub id: Option<&'a str>,
    pub max_redemptions: Option<i64>,
    pub metadata: Option<Metadata>,
    pub name: Option<&'a str>,
    pub percent_off: Option<f64>,
    pub redeem_by: Option<Timestamp>,
}

The parameters for Coupon::create.

Fields

amount_off: Option<i64>

A positive integer representing the amount to subtract from an invoice total (required if percent_off is not passed).

applies_to: Option<CreateCouponAppliesTo>

A hash containing directions for what this Coupon will apply discounts to.

currency: Option<Currency>

Three-letter ISO code for the currency of the amount_off parameter (required if amount_off is passed).

duration: CouponDuration

Specifies how long the discount will be in effect.

Can be forever, once, or repeating.

duration_in_months: Option<i64>

Required only if duration is repeating, in which case it must be a positive integer that specifies the number of months the discount will be in effect.

expand: &'a [&'a str]

Specifies which fields in the response should be expanded.

id: Option<&'a str>

Unique string of your choice that will be used to identify this coupon when applying it to a customer.

If you don't want to specify a particular code, you can leave the ID blank and we'll generate a random code for you.

max_redemptions: Option<i64>

A positive integer specifying the number of times the coupon can be redeemed before it's no longer valid.

For example, you might have a 50% off coupon that the first 20 readers of your blog can use.

metadata: Option<Metadata>

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 to metadata.

name: Option<&'a str>

Name of the coupon displayed to customers on, for instance invoices, or receipts.

By default the id is shown if name is not set.

percent_off: Option<f64>

A positive float larger than 0, and smaller or equal to 100, that represents the discount the coupon will apply (required if amount_off is not passed).

redeem_by: Option<Timestamp>

Unix timestamp specifying the last time at which the coupon can be redeemed.

After the redeem_by date, the coupon can no longer be applied to new customers.

Implementations

impl<'a> CreateCoupon<'a>[src]

pub fn new(duration: CouponDuration) -> Self[src]

Trait Implementations

impl<'a> Clone for CreateCoupon<'a>[src]

impl<'a> Debug for CreateCoupon<'a>[src]

impl<'a> Serialize for CreateCoupon<'a>[src]

Auto Trait Implementations

impl<'a> RefUnwindSafe for CreateCoupon<'a>[src]

impl<'a> Send for CreateCoupon<'a>[src]

impl<'a> Sync for CreateCoupon<'a>[src]

impl<'a> Unpin for CreateCoupon<'a>[src]

impl<'a> UnwindSafe for CreateCoupon<'a>[src]

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 

impl<T> WithSubscriber for T[src]