Skip to Content
PlatformCoupons & Discounts

Coupons & Discounts

Create and manage discount codes to run promotions, reward loyal clients, or incentivize first-time bookings — with advanced product targeting, customer eligibility rules, and real-time analytics. Available on Plus plans and above.

Plus+

Overview

The Coupons app is a full-featured promotional system with Shopify-level capabilities. Create discount codes that clients apply during checkout, with complete control over who can use them, what they apply to, and how many times they can be redeemed.

Key capabilities:

FeatureDescription
3 Discount TypesPercentage off, fixed amount off, or free shipping
Product TargetingApply to all products, specific products, or specific categories
Customer EligibilityAll clients, specific clients, new customers only, or returning only
Usage LimitsControl total redemptions and per-customer limits
Validity PeriodsSchedule promotions with start and end dates
Minimum PurchaseRequire a minimum cart value for the coupon to apply
Combination RulesAllow stacking with other coupons or combos
Real-Time Validation10-step server-side validation at checkout
AnalyticsTrack uses, revenue, and ROI per coupon

Getting Started

Creating a Coupon

Open the Coupons app

Go to DashboardAppsCoupons. You’ll see a grid of your existing coupons with status badges.

Click “Create Coupon”

Click the Create Coupon button to open the creation form.

Set the coupon code

Enter an uppercase alphanumeric code (e.g., SUMMER2025, WELCOME10, VIP50). This is what clients type at checkout.

Choose discount type and value

TypeValueExample
PercentagePercentage off (0-100%)20% off entire order
Fixed AmountDollar amount off$15 off order total
Free ShippingWaives shipping costFree delivery

Configure rules

Set usage limits, validity dates, and minimum purchase requirements (detailed in sections below).

Configure advanced targeting (optional)

Select which products or categories the coupon applies to, and which customers are eligible (detailed in Advanced Targeting section).

Save

Click Save. The coupon is ready — share the code with your clients.

Use clear, memorable coupon codes that relate to the promotion. “WELCOME10” for 10% off first order, “BLACKFRI25” for Black Friday 25% off, or “VIP50” for a $50 loyalty discount.


Discount Types

TypeHow It WorksBest For
PercentageDeducts a percentage from the eligible totalBroad promotions, seasonal sales
Fixed AmountDeducts a fixed dollar amountLoyalty rewards, referral bonuses
Free ShippingRemoves shipping costs from the orderEncouraging online product purchases

Discount calculation at checkout:

Subtotal: Sum of eligible products/services Shipping: Calculated shipping cost Coupon Discount: Based on type and value Grand Total: max(0, Subtotal + Shipping - Coupon Discount)

The grand total can never go below zero — if a coupon discount exceeds the order value, the total is simply $0.


Coupon Rules

Usage Limits

SettingDescriptionDefault
Max Total UsesMaximum number of times this coupon can be redeemed across all clientsUnlimited
Max Uses Per CustomerMaximum times a single client can use this coupon1

Examples:

  • Flash sale: 100 total uses, 1 per customer = first 100 clients get the deal
  • Loyalty reward: Unlimited total, 1 per customer = every client gets it once
  • Ongoing promotion: Unlimited total, unlimited per customer = no restrictions

Validity Period

SettingDescription
Start DateWhen the coupon becomes active (optional)
End DateWhen the coupon expires (optional)

Leave both empty for an always-valid coupon. The system handles timezone conversion automatically.

Coupon statuses based on dates:

StatusCondition
ActiveEnabled and within valid date range
InactiveManually disabled
ScheduledStart date is in the future
ExpiredEnd date has passed

Minimum Purchase

Set a minimum cart value that must be reached before the coupon can be applied. If the cart total is below the minimum, the client sees an error message with the required amount.


Advanced Targeting

Product Targeting

Control which products the coupon applies to:

Applies ToDescription
All ProductsCoupon applies to everything in the cart (default)
Specific ProductsSelect individual products from a multi-select list
Specific CategoriesSelect product categories — coupon applies to all products in those categories

When targeting specific products or categories, only the eligible items in the cart receive the discount. Non-eligible items are charged at full price.

Customer Eligibility

Control which clients can use the coupon:

EligibilityDescription
All CustomersAnyone can use the coupon (default)
Specific CustomersSelect individual clients from your CRM
New Customers OnlyOnly clients with no previous bookings or purchases
Returning Customers OnlyOnly clients who have made at least one previous booking or purchase

Use “New Customers Only” for welcome discounts to attract first-time clients. Use “Returning Customers Only” for loyalty rewards that keep existing clients coming back.

Combination Rules

SettingDescription
Combine with Other CouponsAllow this coupon to be stacked with other active coupons
Combine with CombosAllow this coupon to be applied on top of Combo Magico bundle discounts

By default, coupons cannot be combined. Enable stacking only when you want to allow double discounts.


Checkout Integration

Customer Experience

When a client reaches the checkout page:

Enter coupon code

The client sees a “Have a coupon code?” section. They type their code in the input field.

Apply the coupon

Click Apply. The system validates the code in real time against all rules.

See the discount

If valid, a green checkmark appears with the discount amount. The order total updates immediately showing the original price, discount, and new total.

Complete the order

The client proceeds to payment with the discounted price. The coupon is recorded on the order.

Validation Rules

When a client applies a coupon, the system runs 10 validation checks server-side:

#CheckError if Failed
1Coupon exists”Invalid coupon code”
2Coupon is active”This coupon is not active”
3Within valid date range”This coupon has expired”
4Total usage limit not exceeded”Coupon usage limit reached”
5Per-customer limit not exceeded”You have already used this coupon”
6Minimum purchase met”Minimum purchase of $X required”
7Cart has eligible products”Coupon does not apply to products in cart”
8Cart has eligible categories”Coupon does not apply to these product categories”
9Customer is eligible”This coupon is not available for your account”
10New/returning customer check”This coupon is for new customers only”

All validation happens server-side via an edge function — it cannot be bypassed from the browser.

After Purchase

When an order is placed with a coupon:

  • The coupon ID and code are saved on the order record
  • The discount amount is recorded for reporting
  • The coupon’s usage counter is incremented automatically
  • The coupon analytics table is updated with daily metrics

Analytics

Tracked Metrics

Every coupon automatically tracks performance data:

MetricDescription
Total UsesNumber of times the coupon has been redeemed
Total Discount GivenSum of all discounts applied with this coupon
Total RevenueTotal order value of orders using this coupon
Unique CustomersNumber of distinct clients who used the coupon
Average Order ValueAverage order total for orders with this coupon

Analytics Dashboard

Click on any coupon to view its performance:

  • Summary cards with key metrics
  • Daily breakdown showing usage trends over the last 30 days
  • Revenue impact — how much revenue the coupon drove vs. how much discount was given

Track ROI by comparing “Total Revenue” against “Total Discount Given”. If a 20% coupon generates $5,000 in revenue with $1,000 in discounts, the net revenue impact is strongly positive.


Managing Coupons

Dashboard Actions

ActionDescription
Toggle ActiveEnable or disable a coupon without deleting it
Copy CodeCopy the coupon code to clipboard for sharing
EditModify any coupon setting
DeletePermanently remove the coupon
View AnalyticsSee performance metrics

Coupon Lifecycle

A typical coupon lifecycle:

  1. Create the coupon with rules and targeting
  2. Test by applying it on a test checkout
  3. Share the code via email, social media, or in-person
  4. Monitor analytics to track performance
  5. Adjust rules if needed (increase discount, extend dates)
  6. Deactivate when the promotion ends

Security

FeatureDescription
Server-Side ValidationAll 10 checks run on the server — cannot be bypassed
Rate Limiting10 validation attempts per minute per IP address
Code NormalizationCodes are automatically converted to uppercase
RLS PoliciesProfessionals can only manage their own coupons
Encrypted TransportAll validation requests use HTTPS

Plan Availability

FeatureFreePlusProMaxUltra
Create couponsUnlimitedUnlimitedUnlimitedUnlimited
Discount typesAll 3All 3All 3All 3
Usage limitsYesYesYesYes
Validity periodsYesYesYesYes
Minimum purchaseYesYesYesYes
Product targetingAll onlyAll + specificAll + specificAll + specific
Category targetingYesYesYes
Customer eligibilityAll onlyAll 4 optionsAll 4 optionsAll 4 options
Combination rulesYesYesYes
AnalyticsBasicFullFullFull
Rate limitingYesYesYesYes