Operator guideEN

Bonus Triggers / List

Single-page trigger configuration workspace with one editable card per trigger, coupon-code chip management, expiration time editing, comments, and a full-form submit action.

How to use this guide

Start with the main guide

Follow the explanation and examples first. Extra definitions and formulas are available below when you need them.

What this surface does

This is the only verified route for Bonus Triggers.

Operators use it to inspect each existing trigger card, update the attached coupon codes, adjust expiration time, and save the full trigger configuration.

How the page is organized

  • the page shows one card per saved trigger
  • each card uses the trigger name as the card title
  • the left side of the card manages coupon-code chips
  • the right side stores expiration time and free-text comments
  • the footer actions let the operator return to Bonuses or submit all current changes

How to read the page

  • Coupon Codes is a multi-value chip field. Each chip is one code currently attached to the trigger.
  • Expiration Time (minutes) needs special care: values above 365 are converted from minutes to days when coupons are assigned, while values from 1 through 365 are treated as days.
  • A positive expiry configured on the matched bonus takes precedence over the trigger value and is applied in minutes.
  • Comments is operator-facing free text kept on the trigger record.
  • Saved coupon codes are stored as one comma-separated string and the page shows them as editable chips.
  • User-side trigger logic can read these records and issue the stored coupon codes as internal coupon codes.
  • If a trigger has no coupon codes, firing it does not issue a coupon.

Main actions

  • add one coupon code to a trigger card
  • remove one coupon-code chip from a trigger card
  • submit the full trigger configuration
  • return to the Bonuses route without saving

Known caveats

  • The page currently edits only the saved trigger records it loads. There is no verified CRM action to add a new trigger card or delete a trigger card.
  • Submit sends the whole bonusTriggers payload after converting coupon-code arrays back into comma-separated strings.
  • The current save path can fail before any row is written, while the page can still show a success notification.
  • After Submit, reload the page and confirm that every changed value remains. Do not rely on the notification alone.
More details

Definitions and formulas

Open only the section you need. The relevant section opens automatically when you request help for a specific item on screen.

Calculations4 topicsOpen details

Coupon code chip transform

Operators edit coupon codes as separate chips, but the saved value is one comma-separated string.

Inputs
saved coupon-code string
Display Transform
The page splits the saved comma-separated `bonus_code` string into chips when loading the form and joins the chips back into a comma-separated string before submit.
Save Transform
The intended update path removes spaces from the submitted code string before replacing the saved trigger values. The current implementation fails before reaching that transform.

Expiration time fallback

Although the field label says minutes, the effective unit is not uniform. Use values above 365 for minute-based trigger expiry, and verify the matched bonus because its own expiry can take precedence.

Inputs
saved trigger expiration value
Display Transform
The page loads `4320` when the loaded value is falsy, including when the saved value is zero.
Downstream Effect
The assignment flow treats values greater than 365 as minutes and converts them to days. Values from 1 through 365 are treated directly as days. A positive expiry configured on the matched bonus overrides the trigger value and is applied in minutes.

Submit upsert risk

After Submit, reload the page and confirm the values. Do not rely on the success notification alone.

Inputs
submitted trigger-card values
Save Transform
The intended update path replaces rows by trigger id, but the current implementation can fail while preparing the update and before writing rows. The page also reports success without waiting for a confirmed result.

Empty coupon-code configuration

A trigger with no coupon codes can still exist, but firing it does not issue a coupon.

Inputs
configured coupon codes
Transform
Empty or blank coupon values produce no usable coupon entries for the trigger assignment flow.
More help

Related pages

Bonus Triggers

Operator documentation for the bonus trigger configuration screen used to maintain trigger names, coupon-code mappings, expiry behavior, and comments.

Activity Tag Rules / List

Main inventory for activity-driven tag rules, with search, activity and status filters, grouped rows, clone, edit, and run actions.

Affiliate Deals / List

Searchable table of affiliate deal rows with PID filter, create action, dashboard shortcut, and edit/delete row actions.

Affiliate Payment Settings / List

Affiliate payment settings inventory page for reviewing configured rows and opening saved records.

Affiliate Settings / List

Affiliate inventory list used to review saved affiliates and open detail or report flows.

Auto Tags Manager / List

Rule inventory with search, direct navigation to create or reorder, row-level run controls, and job history or recovery actions.