Promo codes at the till (in-store)

How staff can apply promo codes during in-store checkout

Promo Codes at Checkout (In-Store)

Staff can apply promo codes during the checkout process for in-store appointments. The system validates all settings before allowing redemption.

Enabling In-Store Usage

To allow promo codes at checkout:

  1. Edit the promo code
  2. In the Settings section, enable "Allow In-Store"
  3. Save the code

How Staff Apply Codes

During checkout:

  1. Open the checkout drawer for an appointment
  2. Find the "Promo Code" section
  3. Enter the promo code
  4. Click "Apply" to validate
  5. See the discount applied to the totals
  6. Complete the checkout with the discount applied

Validation Rules Checked

When staff apply a code at checkout, the system validates:

Basic Validation

  • Code exists and is active
  • Code is within validity date range
  • Code allows in-store channel

Usage Validation

  • Total usage limit not exceeded
  • Per-customer usage limit not exceeded

Customer Validation

Based on customer scope:

  • All Customers - Any customer
  • VIP Only - Customer must be VIP
  • Tagged Only - Customer must have required tags
  • New Customers Only - First-time customer
  • First-Time Only - Customer's first booking ever

Service Validation

  • Validates against the appointment's service
  • Checks service category if category restrictions apply

Staff Validation

  • Validates against the staff member assigned to the appointment

Amount Validation

  • Checks against the appointment subtotal

Date Validation

  • If appointment date range is set, validates the appointment date

Discount Calculation

The discount is calculated after validation:

  • Percentage: Subtotal x (percentage / 100), capped at max discount if set
  • Fixed Amount: Direct discount amount, not exceeding subtotal

Tax is calculated on the discounted subtotal.

Redemption on Completion

When checkout is processed:

  1. Promo code is validated again
  2. Invoice is created with discount applied
  3. PromoCodeRedemption record is created with:
    • Customer information
    • Staff who processed
    • Original and final amounts
    • Channel marked as "IN_STORE"
    • Link to invoice and appointment
  4. Appointment status is updated to COMPLETED

Manual Discount vs Promo Code

Note: Promo codes take priority over manual discounts. If a promo code is applied, any manual discount is ignored to prevent double-discounting.

Use case scenarios

Scenario 1: Customer brings a code from email

"I got an email with WINTER20", customer says. Reception types it at checkout, validates, applies. Customer pays the discounted total.

Scenario 2: Customer doesn't know about promotions

Reception checks active codes ("we have SUMMER15 that applies"), informs the customer. Customer feels like she got a deal she didn't know about.

Scenario 3: Wrong code rejection

Customer gives an old code. System rejects with "Code expired". Reception apologizes, no awkwardness, transaction continues at full price.

Scenario 4: Manual discount conflict

Stylist already gave a 10% friend discount manually. Then promo code gets applied. System uses promo code, discards manual. Reception explains.

Tips for staff

  • Always validate before completing checkout: easier to catch errors before than after.
  • Check the discount preview: confirm the amount makes sense.
  • Read error messages clearly: each one tells you exactly why.
  • Promo codes override manual discounts: don't try to stack.
#checkout#in-store#staff#POS
💬

Have a question? Ask the AI assistant

The Bookinda AI knows the entire help center and can answer in seconds.

B

Bookinda AI Assistant

Ask anything about features, settings, or integrations.

Hi! I'm the Bookinda assistant. I can answer questions about features, billing, integrations, and more. What would you like to know?

Still need help?

Get in touch with our support team.

Contact us