Operator guideEN

Coupon Codes / List

Main affiliate coupon-code workspace with catalog stats, PID reference panel, inline create or edit modals, filters, export, and destructive delete confirmation.

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 page shows

This page is the full working surface for affiliate coupon codes.

Operators use it to:

  • review the current coupon-code catalog
  • verify which PID a code points to
  • check whether Force Registration is enabled
  • see how many distinct players have used the coupon code
  • add, update, delete, copy, and export coupon codes

Use this page when the question is about affiliate or PID-driven promo-code routing. If the question is about the reusable bonus configuration itself, use Bonuses / Form or Bonuses / View instead.

How the page is organized

  • top orientation cards summarize the current coupon-code catalog
  • the Affiliate PIDs panel shows reference PIDs and affiliate-link details
  • the filter block narrows the visible coupon rows
  • the main grid shows one row per coupon code and exposes row actions

How to read the page

  • Coupon Code is the operator-facing promo code value. The copy button copies this exact code to the clipboard.
  • PID shows the affiliate PID linked to the coupon code.
  • Bonus Count is the number of distinct players found in user_coupon_codes for this promo code. It is not a money amount and not a count of issued bonus objects.
  • Force Registration shows whether this coupon should still update the player's affiliate tag when the player already has affiliate data.
  • Created At and Updated At are shown in UTC on the grid.

Filters that change the result

  • Coupon Code
  • PID
  • Force Registration

Coupon Code is broader than the label suggests: the current list behavior can also match PID text from the same field.

Force Registration behaves as a positive filter only. Yes narrows the list to force-registration coupons, but No should not be read as a strict "show only disabled" filter.

Main actions

  • Add New Coupon opens the create modal.
  • Edit opens the same modal with current row values.
  • Delete opens a destructive confirmation modal.
  • Show Filters and Hide Filters only show or hide the filter panel; they do not clear filter values.
  • removing an active filter chip resubmits the list without that selected chip.
  • Export downloads a CSV built from the currently loaded rows.
  • Show Affiliate PIDs expands a reference panel so operators can copy a PID before creating or editing a coupon.
  • page controls are intended to move through the coupon-code list when more rows exist than the current page size.

Why values can differ from expectations

Bonus Count is user usage, not a payout amount

Bonus Count is calculated as the number of distinct players with a matching promo-code usage record. It does not represent bonus money, marketing spend, or the number of bonus configuration objects.

Active Coupon Codes is not a real active-state check

The current catalog does not have a separate active/inactive coupon-code state. Active Coupon Codes currently mirrors Total Coupon Codes.

Force-registration rate is catalog-based

Force Registration (%) is calculated from the current coupon catalog, not from player conversion or registration performance.

Known caveats

  • Card trends are not trustworthy business trends. Treat the cards as catalog orientation, not marketing performance reporting.
  • The Reset button currently resubmits the current filter values instead of clearing all fields.
  • Export works on the rows currently loaded in the browser. It is not a full-dataset export.
  • If Delete closes but the row still appears after refresh, the delete request did not remove the row and should be escalated.
  • If pagination appears to stay on the same rows, verify the result before assuming there are no more records.
  • The affiliate PID panel is a reference helper. It shows affiliate links where pid exists, but it is not itself a coupon-code editor.
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.

Source calculations4 topicsOpen details

bonus-count

Distinct-player usage count attached to each coupon-code row.

Formula
COUNT(DISTINCT user_coupon_codes.user_id) WHERE user_coupon_codes.promo_code = AffiliateCouponCode.coupon_code

force-registration-rate

Percentage of stored coupon codes where `forceRegistration` is true.

Formula
(forceRegistrationCouponCount / totalCouponCount) * 100

average-bonus-count

Average distinct-user usage count per coupon code in the stats response.

Formula
SUM(bonusCount for all coupon codes) / totalCouponCount

active-coupons

The current backend stats implementation treats every stored coupon code as active.

Formula
totalCouponCount
Columns7 topicsOpen details

ID

Internal coupon-code identifier for support and audit lookups.

Data Type
integer

Coupon Code

Promo-code value shared with players or affiliates.

Data Type
string

PID

Affiliate PID linked to the coupon code.

Data Type
string

Bonus Count

Count of distinct players who have a matching `promo_code` entry for this coupon.

Data Type
integer
Caveats
This is a usage count, not a payout amount and not a count of created bonus configuration objects.

Force Registration

Indicates whether coupon-based affiliate assignment should still update the player's affiliate tag when the player already has affiliate data.

Data Type
boolean
Downstream Behavior
Player-side affiliate assignment reads this flag when matching a coupon code to a PID.

Created At

UTC creation timestamp for the coupon-code row.

Data Type
datetime

Updated At

UTC update timestamp for the coupon-code row.

Data Type
datetime
Filters3 topicsOpen details

Coupon Code

Filters the grid by coupon-code text.

Type
text
Affects
list_results
Backend Behavior
The verified read service matches this value against both coupon code and PID text.

PID

Filters the grid by affiliate PID.

Type
text
Affects
list_results
Backend Behavior
The verified read service applies exact PID matching when no Coupon Code branch overrides it.
Caveats
If Coupon Code is also supplied, the current backend read branch can replace the PID condition with a Coupon Code-or-PID text match.

Force Registration

Narrows the list to coupons where force registration is enabled.

Type
boolean-toggle
Affects
list_results
Backend Behavior
The verified read service applies this filter only when the request value is truthy.
Caveats
`No` should not be read as an explicit request for only rows where force registration is disabled.
Summary cards4 topicsOpen details

Total Coupon Codes

Total number of coupon-code rows currently stored in the backend catalog.

Active Coupon Codes

Orientation count intended to show active coupons.

Force Registration (%)

Share of stored coupon codes where force registration is enabled.

Avg. Bonus Count

Average distinct-user usage count per coupon code inside the current stats response.

Metrics4 topicsOpen details

Total Coupon Codes

Total number of coupon-code rows currently stored in the backend catalog.

Aliases
coupon codes total, how many coupon codes, affiliate coupon count
Formula
COUNT(*) FROM AffiliateCouponCode

Active Coupon Codes

Orientation count intended to show active coupon codes.

Aliases
active coupon codes, enabled coupon codes
Formula
totalCouponCount

Force Registration (%)

Share of stored coupon codes where the force-registration flag is enabled.

Aliases
force registration percentage, coupon force registration rate
Formula
(forceRegistrationCouponCount / totalCouponCount) * 100

Avg. Bonus Count

Average number of distinct players attached to each coupon code in the stats response.

Aliases
average bonus count, average coupon usage, average coupon user count
Formula
SUM(bonusCount per coupon) / totalCouponCount
Comparison Notes
This is based on distinct-user usage rows, not money or bonus issuance totals.
More help

Related pages

Coupon Codes

Operator documentation for affiliate coupon-code maintenance, inline create or edit modals, coupon usage counts, and the reference PID panel.

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 / Form

Create and edit form for affiliate deals, including PID, date window, commercial terms, and responsible person.

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.