View Source Stripe.PromotionCode (stripity_stripe v3.2.0)
A Promotion Code represents a customer-redeemable code for a coupon. It can be used to create multiple codes for a single coupon.
Summary
Functions
A promotion code points to a coupon. You can optionally restrict the code to a specific customer, redemption limit, and expiration date.
Returns a list of your promotion codes.
Retrieves the promotion code with the given ID. In order to retrieve a promotion code by the customer-facing code
use list with the desired code
.
Updates the specified promotion code by setting the values of the parameters passed. Most fields are, by design, not editable.
Types
@type restrictions() :: %{ optional(:currency_options) => map(), optional(:first_time_transaction) => boolean(), optional(:minimum_amount) => integer(), optional(:minimum_amount_currency) => binary() }
Settings that restrict the redemption of the promotion code.
@type t() :: %Stripe.PromotionCode{ active: boolean(), code: binary(), coupon: Stripe.Coupon.t(), created: integer(), customer: (binary() | Stripe.Customer.t() | Stripe.DeletedCustomer.t()) | nil, expires_at: integer() | nil, id: binary(), livemode: boolean(), max_redemptions: integer() | nil, metadata: term() | nil, object: binary(), restrictions: term(), times_redeemed: integer() }
The promotion_code
type.
active
Whether the promotion code is currently active. A promotion code is only active if the coupon is also valid.code
The customer-facing code. Regardless of case, this code must be unique across all active promotion codes for each customer.coupon
created
Time at which the object was created. Measured in seconds since the Unix epoch.customer
The customer that this promotion code can be used by.expires_at
Date at which the promotion code can no longer be redeemed.id
Unique identifier for the object.livemode
Has the valuetrue
if the object exists in live mode or the valuefalse
if the object exists in test mode.max_redemptions
Maximum number of times this promotion code can be redeemed.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.object
String representing the object's type. Objects of the same type share the same value.restrictions
times_redeemed
Number of times this promotion code has been used.
Functions
@spec create( params :: %{ optional(:active) => boolean(), optional(:code) => binary(), optional(:coupon) => binary(), optional(:customer) => binary(), optional(:expand) => [binary()], optional(:expires_at) => integer(), optional(:max_redemptions) => integer(), optional(:metadata) => %{optional(binary()) => binary()}, optional(:restrictions) => restrictions() }, opts :: Keyword.t() ) :: {:ok, t()} | {:error, Stripe.ApiErrors.t()} | {:error, term()}
A promotion code points to a coupon. You can optionally restrict the code to a specific customer, redemption limit, and expiration date.
Details
- Method:
post
- Path:
/v1/promotion_codes
@spec list( params :: %{ optional(:active) => boolean(), optional(:code) => binary(), optional(:coupon) => binary(), optional(:created) => created() | integer(), optional(:customer) => binary(), optional(:ending_before) => binary(), optional(:expand) => [binary()], optional(:limit) => integer(), optional(:starting_after) => binary() }, opts :: Keyword.t() ) :: {:ok, Stripe.List.t(t())} | {:error, Stripe.ApiErrors.t()} | {:error, term()}
Returns a list of your promotion codes.
Details
- Method:
get
- Path:
/v1/promotion_codes
@spec retrieve( promotion_code :: binary(), params :: %{optional(:expand) => [binary()]}, opts :: Keyword.t() ) :: {:ok, t()} | {:error, Stripe.ApiErrors.t()} | {:error, term()}
Retrieves the promotion code with the given ID. In order to retrieve a promotion code by the customer-facing code
use list with the desired code
.
Details
- Method:
get
- Path:
/v1/promotion_codes/{promotion_code}
@spec update( promotion_code :: binary(), params :: %{ optional(:active) => boolean(), optional(:expand) => [binary()], optional(:metadata) => %{optional(binary()) => binary()} | binary(), optional(:restrictions) => restrictions() }, opts :: Keyword.t() ) :: {:ok, t()} | {:error, Stripe.ApiErrors.t()} | {:error, term()}
Updates the specified promotion code by setting the values of the parameters passed. Most fields are, by design, not editable.
Details
- Method:
post
- Path:
/v1/promotion_codes/{promotion_code}