Discount Specific Item Groups + Order Tag/Price Modifiers

I’ve reviewed many different tutorials and I’m having a hard time finding the right way to apply a 25% discount to a specific item in an item group as well as its attached modifiers/order tags.

(1) Is there a way to map the discount button on the settlement screen to only specific item groups?

(2) If not is there an easy way to apply an order tag based upon the % of the selected item to include its attached order tags
**I’ve tried @QMcKay tutorial and I can’t get it to also adjust modifiers.

My menu items often look like this:

Cheese Burger $5.00
Add - Bacon .50 (order tag)
Add - Guac .50 (order tag)

We have discounts of 25% to these items for employee discount. I cannot apply it to the entire order because our bar items have a flat employee price (this is set by a portion price). Can I map the discount button on the settlement screen easily?



I have this working, but it does not discount the order tags attached to the product. How would I target and update all order tags attached to the product?


You could mark the tags to include them in item price.


I tried that last night. It seemed when including the order tags in the price of the item it didn’t calculate properly. Additionally when untagging the discount it would increase the price. Continual tagging and untagging would increase the price of the product every time.


Are you trying to make discount to the modifier price?

Yes Emre. I’m trying to apply 25% discount to all food including their modifiers.

Sadly, I can’t use the discount button on the settlement screen because beer and liquor has a flat discount price so the bar manager is using a portion size to adjust the price for his item.


OK after merging bits from your posts I’ve understand your need.

You need entirely different discount calculation method. It is possible to have a Employee Discount button on payment screen and when clicked we can calculate a fixed discount amount from orders that have certain group (or product tag).

What you need to do is basically.

  • Create a new calculation type named Fixed Discount.
  • Create a Update Ticket Calculation action that updates Fixed Discount.

By using them you can add a discount amount (not rate) to Ticket from rules.

Now we you’ll need to calculate discount amount when Employee Discount button clicked on payment screen. As you need to include certain orders into the discount calculation you need to mark these order’s state as something specific like Discount Type = Employee. While adding an order you can check product group and update order’s Discount Type state to Employee.

When you implement it new orders from configured product group should automatically have Discount Type = Employee state.

Finally you should calculate discount amount when Employee Discount button clicked. To do this you can use [={ORDER STATE TOTAL:Discount Type=Employee} * 0.25] expression. As {ORDER STATE TOTAL:X} tag will return total of all order including order tags or other possible calculations you won’t need to worry them.

That may look like slightly complex implementation but at the end you’ll have a single button that automatically calculates employee discount. You can also refresh discount amount as you add new orders or tag orders you can use Ticket Total Changed rule to recalculate discount.

I hope that gives the idea.


Thanks @emre. I have a paper to write for college and then I’m jumping on this asap.