Solidshop’s core ships with a built-in discount engine for running promotions. You can configure automatic discounts that apply when a cart meets certain conditions, or coupon codes that customers enter at checkout.

Core vs. Advanced plugin. This section describes the discount features built into the core component. The Discount & Coupons plugin (coming soon) extends this engine with rule-based conditions (per-product, per-category, per-customer), bulk coupon generation, advanced stacking controls, usage analytics, and scheduled campaigns. The core engine and the plugin share the same data model — promotions you create in the core continue to work after installing the plugin.

Creating a discount

Go to Solidshop → Discounts → New. The form has three tabs: General, Conditions, and Action.

General tab — when it fires
  • Name — a label for your reference (e.g. “Spring Sale 10%”). Not shown to customers.
  • Status — Published, Unpublished, or Trashed. Unpublished discounts never apply.
  • Trigger typeAutomatic applies to every qualifying cart with no action from the customer; Coupon code only applies when the customer enters the exact code at checkout.
  • Code — the coupon string (shown only when trigger type is Coupon code). Click the randomise button to generate a short unique code.
  • Priority — the order of evaluation when multiple discounts qualify. Higher priority runs first.
  • Combinable — whether this discount can stack with other combinable discounts. Non-combinable discounts win over lower-priority ones and block them from applying.
  • Start / end date — schedule the discount. Empty start or end means “always on” from that side.
Conditions tab — who qualifies
  • Minimum cart total — the discount applies only when the cart subtotal reaches this amount.
  • Usage limit — the maximum number of orders this discount can apply to, in total, across all customers.
  • Usage limit per user — the maximum number of times a single customer can redeem this discount.
Action tab — what it does
  • Action typePercentage (e.g. 10 = 10% off) or Fixed (a currency amount off).
  • Action value — the percentage or amount.
  • Action scopeCart applies the discount to the cart subtotal; Product applies it per qualifying line item.

Applying a discount manually on an order

You can apply a one-off discount directly from the order detail page — useful for goodwill gestures, phone-order negotiations, or back-office promotions that don’t warrant a full discount rule. Open the order, click the Apply discount button in the products section, choose Percentage or Fixed, enter the value, and save. The order recalculates immediately.

Testing a coupon: create a coupon-code discount with a high usage limit, start date in the past, and a small percentage value. Open the storefront in a private window, add a product to the cart, and enter the code at checkout — confirm it applies, appears in the order total, and shows up on the order detail page and invoice.