Discount Types Reference
This page provides a complete reference for all discount types, triggers, conditions, and filters available in SlotBase. Use it as a quick lookup when creating or managing discounts at your facility.
Discount Types
The discount type determines how the price reduction is calculated.
| Type | Behavior | Value Field | Example |
|---|---|---|---|
| PERCENTAGE | Reduces the price by a percentage of the original amount | Percentage (0 -- 100) | Value = 20 means 20% off |
| FIXED_AMOUNT | Subtracts a fixed dollar amount from the original price | Dollar amount | Value = 10 means $10 off |
| PRICE_OVERRIDE | Replaces the original price entirely with the specified value | New price | Value = 35 means the price becomes $35 |
PRICE_OVERRIDE ignores the original price entirely. Use it when you want to set a specific price regardless of the base rate.
Discount Triggers
The trigger determines how the discount gets applied to a transaction.
| Trigger | Who Applies | Player Action Required | Best For |
|---|---|---|---|
| AUTOMATIC | System applies when conditions match | None | Ongoing promotions, membership perks |
| CODE | Player enters a promo code at checkout | Enter the code | Marketing campaigns, referral programs |
| MANUAL | Facility admin applies from the dashboard | None (admin action) | One-off adjustments, special cases |
Discount Conditions
Conditions are optional rules that control when a discount is valid.
| Condition | Type | Description |
|---|---|---|
| validFrom | Date | Earliest date the discount can be used |
| validUntil | Date | Latest date the discount can be used |
| isActive | Boolean | Master toggle to enable or disable the discount |
| stackable | Boolean | Whether this discount can combine with others on the same transaction |
| maxTotalUses | Number | Maximum total redemptions across all players (null = unlimited) |
| maxUsesPerUser | Number | Maximum redemptions per individual player (null = unlimited) |
| newCustomersOnly | Boolean | If true, only first-time players at the facility can use this discount |
| minAmount | Currency | Minimum transaction amount required for the discount to apply |
Discount Filters
Filters restrict which activities the discount applies to.
| Filter | Type | Description |
|---|---|---|
| lessonTypes | Array | List of lesson types the discount applies to (e.g., Private, Group) |
| sportTypes | Array | List of sports the discount applies to (e.g., Tennis, Basketball) |
If no filters are set, the discount applies to all activities at your facility. Add filters only when you want to limit the discount to specific lesson or sport types.
Discount Redemption Tracking
Every time a discount is used, a DiscountRedemption record is created with:
| Field | Description |
|---|---|
| Discount | Which discount was applied |
| Player | Who received the discount |
| Transaction | The booking, registration, or payment it was applied to |
| Amount Saved | The dollar value of the savings |
| Date | When the redemption occurred |
Sibling Discount Settings
Sibling discounts are configured separately from standard discounts at the facility level:
| Setting | Type | Description |
|---|---|---|
| siblingDiscountEnabled | Boolean | Enables or disables sibling discounts |
| siblingDiscount2nd | Percentage | Discount for the 2nd child enrolled |
| siblingDiscount3rd | Percentage | Discount for the 3rd child enrolled |
| siblingDiscount4th | Percentage | Discount for the 4th child (and beyond) enrolled |
Quick Decision Guide
Not sure which discount type to use? This table can help:
| Scenario | Recommended Type | Recommended Trigger |
|---|---|---|
| "20% off for new members" | PERCENTAGE | AUTOMATIC |
| "Use code SAVE10 for $10 off" | FIXED_AMOUNT | CODE |
| "Special rate of $25 for this player" | PRICE_OVERRIDE | MANUAL |
| "15% off group tennis lessons" | PERCENTAGE (with sport + lesson filter) | AUTOMATIC |
| "First 100 bookings get 10% off" | PERCENTAGE (maxTotalUses = 100) | AUTOMATIC |
| "Welcome offer: $5 off first booking" | FIXED_AMOUNT (newCustomersOnly + maxUsesPerUser = 1) | AUTOMATIC |