lago_id
string
required

Unique identifier of the coupon, created by Lago.

name
string
required

The name of the coupon.

code
string
required

Unique code used to identify the coupon.

coupon_type
enum<string>
required

The type of the coupon. It can have two possible values: fixed_amount or percentage.

  • If set to fixed_amount, the coupon represents a fixed amount discount.
  • If set to percentage, the coupon represents a percentage-based discount.
Available options:
fixed_amount,
percentage
reusable
boolean
required

Indicates whether the coupon can be reused or not. If set to true, the coupon is reusable, meaning it can be applied multiple times to the same customer. If set to false, the coupon can only be used once and is not reusable. If not specified, this field is set to true by default.

limited_plans
boolean
required

The coupon is limited to specific plans. The possible values can be true or false.

limited_billable_metrics
boolean
required

The coupon is limited to specific billable metrics. The possible values can be true or false.

frequency
enum<string>
required

The type of frequency for the coupon. It can have three possible values: once, recurring, or forever.

  • If set to once, the coupon is applicable only for a single use.
  • If set to recurring, the coupon can be used multiple times for recurring billing periods.
  • If set to forever, the coupon has unlimited usage and can be applied indefinitely.
Available options:
once,
recurring,
forever
expiration
enum<string>
required

Specifies the type of expiration for the coupon. It can have two possible values: time_limit or no_expiration.

  • If set to time_limit, the coupon has an expiration based on a specified time limit.
  • If set to no_expiration, the coupon does not have an expiration date and remains valid indefinitely.
Available options:
no_expiration,
time_limit
created_at
string
required

The date and time when the coupon was created. It is expressed in UTC format according to the ISO 8601 datetime standard. This field provides the timestamp for the exact moment when the coupon was initially created.

description
string | null

Description of the coupon.

amount_cents
integer | null

The amount of the coupon in cents. This field is required only for coupon with fixed_amount type.

amount_currency
enum<string> | null

The currency of the coupon. This field is required only for coupon with fixed_amount type.

Available options:
AED,
AFN,
ALL,
AMD,
ANG,
AOA,
ARS,
AUD,
AWG,
AZN,
BAM,
BBD,
BDT,
BGN,
BIF,
BMD,
BND,
BOB,
BRL,
BSD,
BWP,
BYN,
BZD,
CAD,
CDF,
CHF,
CLF,
CLP,
CNY,
COP,
CRC,
CVE,
CZK,
DJF,
DKK,
DOP,
DZD,
EGP,
ETB,
EUR,
FJD,
FKP,
GBP,
GEL,
GIP,
GMD,
GNF,
GTQ,
GYD,
HKD,
HNL,
HRK,
HTG,
HUF,
IDR,
ILS,
INR,
ISK,
JMD,
JPY,
KES,
KGS,
KHR,
KMF,
KRW,
KYD,
KZT,
LAK,
LBP,
LKR,
LRD,
LSL,
MAD,
MDL,
MGA,
MKD,
MMK,
MNT,
MOP,
MRO,
MUR,
MVR,
MWK,
MXN,
MYR,
MZN,
NAD,
NGN,
NIO,
NOK,
NPR,
NZD,
PAB,
PEN,
PGK,
PHP,
PKR,
PLN,
PYG,
QAR,
RON,
RSD,
RUB,
RWF,
SAR,
SBD,
SCR,
SEK,
SGD,
SHP,
SLL,
SOS,
SRD,
STD,
SZL,
THB,
TJS,
TOP,
TRY,
TTD,
TWD,
TZS,
UAH,
UGX,
USD,
UYU,
UZS,
VND,
VUV,
WST,
XAF,
XCD,
XOF,
XPF,
YER,
ZAR,
ZMW
plan_codes
string[]

An array of plan codes to which the coupon is applicable. By specifying the plan codes in this field, you can restrict the coupon's usage to specific plans only.

billable_metric_codes
string[]

An array of billable metric codes to which the coupon is applicable. By specifying the billable metric codes in this field, you can restrict the coupon's usage to specific metrics only.

percentage_rate
string | null

The percentage rate of the coupon. This field is required only for coupons with a percentage coupon type.

frequency_duration
integer | null

Specifies the number of billing periods to which the coupon applies. This field is required only for coupons with a recurring frequency type

expiration_at
string | null

The expiration date and time of the coupon. This field is required only for coupons with expiration set to time_limit. The expiration date and time should be specified in UTC format according to the ISO 8601 datetime standard. It indicates the exact moment when the coupon will expire and is no longer valid.

terminated_at
string | null

This field indicates if the coupon has been terminated and is no longer usable. If it's not null, it won't be removed for existing customers using it, but it prevents the coupon from being applied in the future.