Create a new coupon definition.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
How redemption works redeem_type
redeem_typeRequired. Controls how a member activates and redeems the coupon.
Allowed values:
| Value | Description |
|---|---|
STANDARD | Digital reward redeemed by user coupon ID (API / POS / staff). No coupon code is auto-assigned from the code pool. |
SIMPLE_TIMEOUT | On activation (or immediate redeem, depending on vendor config), a code is automatically assigned from the coupon code pool and shown to the member. |
VENUE_QR_SCAN | Same as SIMPLE_TIMEOUT, but activation/redeem also requires scanning a venue secret QR. The scanned QR determines the redeem venue. |
STANDARD
Use when redemption is handled outside the in-app code flow — for example POS integrations, member/card APIs, or staff redeeming a specific user_coupon. The coupon is activated/assigned to the member, then marked redeemed via API. Coupon codes are not taken from inventory automatically (they can still be attached manually if needed).
SIMPLE_TIMEOUT
Use for classic “activate → show code” rewards. When the member activates the coupon, Trifft assigns an available code from that coupon’s code pool (and decrements stock if stock is tracked). Typically paired with expiration_override_on_activation to limit how long the activated code remains valid.
VENUE_QR_SCAN
Use when redemption must happen at a specific venue. Same code-assignment behavior as SIMPLE_TIMEOUT, plus the client must supply a valid venue secret QR in the redeem/activate request. That QR is resolved to a venue and stored as the redeem venue.
Notes
- For
SIMPLE_TIMEOUTandVENUE_QR_SCAN, ensure coupon codes exist (and have stock, if used) before members activate; otherwise activation can fail as out of stock. - Whether the app activates first or redeems immediately depends on the vendor setting
COUPON.activation, not onredeem_type. - Default:
STANDARD.
Expiration OverridesBy default, a coupon's expiration is determined by its
valid_untilattribute. However, if needed, you can override this expiration. Overrides can be applied both at the time of assignment and activation. These expiration rules do not apply to the Coupon entity itself but rather to the User Coupon entity, which is a duplicate of the original coupon but treated as a unique instance for each customer.Expiration Override on Assignment
A coupon is assigned when it is directly given to a member via an API call, through the Content Cockpit, as a reward from Contests or Promo Events, or as part of a predefined Scenario.Expiration Override on Activation
A coupon is activated when a member activates it manually via a mobile app, e-commerce website, or client portal. Activation can also occur automatically if Coupon Preactivation is enabled globally or if the coupon is flagged as Always Activated.Expiration Types
There are three types of expiration overrides:absolute,relative, andperiodbased.
- Absolute: Defines a specific timestamp when the User Coupon should expire.
- Relative: Sets an expiration period in units (
seconds,hours,days...) starting from when the coupon is assigned or activated.- Period: Expires the User Coupon at the end of a predefined period, such as an
hour,day,week,month,quarter, oryear.