Skip to content

Discount Manager

Shopify Plus required. The Discount Manager uses the Cart & Checkout Validation API, which is only available on Shopify Plus plans.

The Discount Manager provides full lifecycle management of discount codes, products, and cart attributes at checkout. It goes beyond simple discounting — you can automatically apply discount codes, reject invalid ones, add free gifts, remove products, and manage cart attributes based on conditions.

Automatically apply a discount code when conditions are met. The customer doesn’t need to enter a code — it’s applied for them.

Replace one discount code with a better one. When a customer enters a code and the cart qualifies for an upgrade, the original code is swapped automatically.

Remove or reject a discount code with a custom message. Use this to block codes during sales events or for ineligible customers.

Add products to the cart automatically. This is how you create free gift promotions — when conditions are met, a product is added at checkout.

Remove products from the cart based on conditions. Useful for preventing certain items from being ordered under specific delivery methods.

Add, update, or remove cart attributes. Cart attributes are key-value pairs that can be used for order tagging, tracking, and fulfillment workflows.

The Discount Manager supports an additional qualifier not available in other function types — the delivery method qualifier.

ConditionMatch Options
Delivery typeShipping, Local Pickup, Local Delivery, Any
Match conditionIs / Is not
Delivery titleContains specific keywords

This lets you create rules that depend on how the customer chooses to receive their order.

  1. Open PowerX from your Shopify admin.
  2. Click Create Campaign.
  3. Select Discount Manager as the function type.
  4. Name your campaign (e.g., “Auto-Apply SAVE20”).

Select one of the six campaign types listed above. Each type has its own configuration options.

Depending on the campaign type:

  • Add Discount: Enter the discount code to apply.
  • Replace Discount: Enter the original code and the replacement code.
  • Reject Discount: Enter the rejection message.
  • Add Products: Select the product variant to add.
  • Remove Products: Select the product variants to remove.
  • Manage Cart Attributes: Set the attribute key, value, and operation (add/update/remove).

Use cart qualifiers, customer qualifiers, and delivery method qualifiers to control when the action triggers.

Review and toggle to Active.

Automatically apply the best discount code when the cart qualifies.

  • Campaign: Add Discount
  • Cart qualifier: Subtotal >= $100
  • Discount code: SAVE20

Block all discount codes during Black Friday or other promotional periods.

  • Campaign: Reject Discount
  • Discount qualifier: Code is any
  • Message: “Discount codes cannot be combined with our Black Friday sale.”

Upgrade a discount code when the customer spends more.

  • Campaign: Replace Discount
  • Discount qualifier: Code matches “SAVE10”
  • Cart qualifier: Subtotal >= $200
  • New code: SAVE20

Add a free product when the cart meets a spending threshold.

  • Campaign: Add Products
  • Cart qualifier: Subtotal >= $75
  • Product: Select the gift variant

Reward customers who choose local pickup.

  • Campaign: Add Products
  • Delivery method: Is Local Pickup
  • Product: Select the gift variant

Prevent certain products from being ordered for in-store pickup.

  • Campaign: Remove Products
  • Delivery method: Is Local Pickup
  • Products: Heavy item variants

Add a cart attribute to tag local delivery orders for fulfillment.

  • Campaign: Manage Cart Attributes
  • Delivery method: Is Local Delivery
  • Attribute key: _delivery_type
  • Attribute value: local_delivery

Discount code not being applied/rejected?

  • Verify the campaign is Active.
  • Check that the discount code in your rule exactly matches the code in Shopify.
  • Ensure all conditions (cart, customer, delivery) are met.

Free gift not appearing in cart?

  • Confirm the product variant is published and in stock.
  • Check the cart qualifier conditions.