Help / Marketing & website

Discount codes

Create a code a customer types at checkout or the register, with an expiry, minimum order and use cap.

3 min read · in your admin: /admin/collections/discounts

A discount code is something the customer types. It works on the website cart, course checkout, quote acceptance, and at the register. Codes are matched without regard to case — VIP10 and vip10 are the same code — and are checked on the server at the moment of payment, so the Stripe charge always matches the real total.

Create a code

  1. Open Marketing → Discount Codes and press Create New.
  2. Code is what the customer types, e.g. VIP10. Description is an internal label such as “Valentine’s Day 10% off”.
  3. Amount with Percentage off ticked means percent; untick it for a fixed dollar amount off the order.
  4. Optional limits: Expires (blank never expires), Min order ($), Max uses (blank = unlimited). Times redeemed counts up on its own.
  5. Leave Active ticked and save. Untick Active later to switch the code off without deleting it.

How it applies at gear checkout

  • In the cart the customer types the code in the Discount code box and presses Apply. The cart shows “Code VIP10 applied” with a Remove link.
  • The discount is priced against the current subtotal. If the cart changes, the code is cleared and has to be applied again.
  • The customer sees a plain reason when a code fails: not valid, no longer active, expired, reached its usage limit, or the order is under the minimum.
  • A fixed-amount code never takes more than the subtotal.
TipOne use of a capped code is reserved the moment a checkout starts. If the customer abandons the Stripe page, the slot is released when that session expires, so an abandoned cart doesn’t burn a redemption.
CarefulDiscount Codes and Promotions are different tools. A Promotion has no code — it is a tracker of who bought a qualifying course in a date window. If the customer needs to type something, it is a Discount Code.

Something here is wrong or missing? Email hello@divedesk.io.