invoices or orders.
* Coupons do not work with conventional one-off charges.
*
* @property string $id Unique identifier for the object.
* @property string $object String representing the object's type. Objects of the same type share the same value.
* @property null|int $amount_off Amount (in the currency
specified) that will be taken off the subtotal of any invoices for this customer.
* @property \Stripe\StripeObject $applies_to
* @property int $created Time at which the object was created. Measured in seconds since the Unix epoch.
* @property null|string $currency If amount_off
has been set, the three-letter ISO code for the currency of the amount to take off.
* @property string $duration One of forever
, once
, and repeating
. Describes how long a customer who applies this coupon will get the discount.
* @property null|int $duration_in_months If duration
is repeating
, the number of months the coupon applies. Null if coupon duration
is forever
or once
.
* @property bool $livemode Has the value true
if the object exists in live mode or the value false
if the object exists in test mode.
* @property null|int $max_redemptions Maximum number of times this coupon can be redeemed, in total, across all customers, before it is no longer valid.
* @property null|\Stripe\StripeObject $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.
* @property null|string $name Name of the coupon displayed to customers on for instance invoices or receipts.
* @property null|float $percent_off 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 %s100 invoice %s50 instead.
* @property null|int $redeem_by Date after which the coupon can no longer be redeemed.
* @property int $times_redeemed Number of times this coupon has been applied to a customer.
* @property bool $valid Taking account of the above properties, whether this coupon can still be applied to a customer.
*/
class Coupon extends ApiResource
{
const OBJECT_NAME = 'coupon';
use ApiOperations\All;
use ApiOperations\Create;
use ApiOperations\Delete;
use ApiOperations\Retrieve;
use ApiOperations\Update;
}