Rick's Tutorial 10 - Price Change Reasons (also print on receipts)

This is the flow, add an order to the ticket

Select order and press price change button

Enter reason for price change

Enter new price

orders price has changed and order state updated to the reason for price change that was selected, in this case “Goodwill Gesture”

Price change information prints on the receipt


  1. Create Price Change Automation Command

  2. Create an Update Order ACTION

  3. Create a State called PStatus (needed to print price change on receipt) Settings->States->Add State

  4. Create an Update Order State ACTION

  5. Create an Automation Command Executed RULE to link everything you have created in steps 1-4

the format for the keyboard that appears is as follows:

[?Enter New Price;(\d{1}.\d{2}|\d{1}\d{1}?.\d{2}|\d{1}\d{1}\d{1}?.\d{2}|\d{1}\d{1}\d{1}\d{1}?.\d{2})?|0;;OCN;49,50,51|52,53,54|55,56,57|190,48,8]
  1. Enter the following tag into your receipt template (using the state we created in step 3)

    [ *** Price Override: {ORDER STATE:PStatus}]

It is surrounded with square brackets so it only prints on the receipt when PStatus has a value, ie when a reason is selected from the pos screen after pressing the price change button. If the square brackets were not there every ticket you printed would have ***Price Override: printed on it. Square brackets are a little trick to hide lines from being printed on a ticket when they dont have a value

I have also used exactly the same principle above to create reasons for when a discount is applied, with both the discount reason and amount printed on the receipt. Once you have implemented this tutorial you may want to try adapting for discounts, example below:


@RickH , I have implemented this, but if I have more items, all items change, not what I would expect.
I would like to see this more that if I would click on the order line that I could change the individual item.

Pretty sure that doesnt happen for me, just the item i select changes price. Ill have a look and check but i havent noticed that happening

this doesnt happen for me so must be something in your setup i added the following 4 items and changed walkers cheese and onion from 0.80 to 0.20 with reason past sell by date and it only updated the 1 product i selected as shown below

What price change are you using? is it the default one or did you follow the tutorial on here to create your own? I dont use the default price change button so that could be the issue if you are

an you post screenshots of your price change actions and rules

Off topic:

Fuck me, is that V5? :open_mouth: It’s unbelievable…

1 Like

Hi RickH, Have used 2 times your setup (not the default price change button) according your Tutorial, only did not use the Values
You are using.
Same issue, will try later to do it one more time and make a export.

Yep, V5 is awesome, just be patient a little more should be released soon .

@Peter_Cijsouw try naming it differently as you already have a Price Change button that mapped to ticket. (one that appears when no orders are selected)

Make sure your price change button is mapped to order line i dont know if that makes a difference but you have one mapped to ticket so that could be why its selecting all orders on the ticket, set to orderline so you have to select theorder to you want to change first

1 Like

Thanks, will try tomorrow and just delete the Default Change Button.

Delete the default one and make sure the other is mapped to orderline

Im pretty sure thats the issue, when mapped to ticket it doesnt know what order to change the price of so it changes all the orders on the ticket. When mapped to order line you have to select the order first then press the orice change button so it only changes the price of that item (or however many you select)

Thats my theory lol ill test that later and map my price change button to ticket and see if that does what i think

@Peter_Cijsouw ive reproduced your issue and it is as i thought, having the price change button mapped to ticket changes all orders prices on the ticket, so just change mapping to order line and it should work fine :slight_smile:

Sorry its off topic but am curious;
@Peter_Cijsouw what are the 1-10 followup in the quick menu?

Also are you void/cancel void mapped to ticket rather than order position?

1 Like

Thanks @RickH all working now after deleting the default and change to orderline.

PS @JTRTech we use the 1-10 button to send a message to the Kitchen Display that we have a new table 1-10Pax, so the chef is informed what’s coming up next, the P_Kitchen (Preparation) will prepare the Free starter. Then the Order Ready is send from the P-Kitchen (or Kitchen) and the Waiters do know were to deliver the Free starter.
The Follow Up is used to send a message to the Kitchen that the Table is cleared between the courses and ready for the next course of the Menu.

Due to the fact that we have local staff working with bad English the message and orders are send in Vietnamese to the P-Kitchen Display and the Chef can follow the request in English on a combined P-Kitchen / Kitchen display.

This minimize communication or explanation and did improve the workflow tremendously in the kitchen.

1 Like

Thank you for Tutorial!

All works well except I cant get the line to print on my ticket template. Can you see where I went wrong?

PS: An edit on your post to say ORDER LINE when doing mapping for the Price Change button would help more persons when following your tutorial.

Thank you

Template looks OK but havn’t tried this config myself.
Are you sure the order is correctly getting a state for PStatus?

well the item is following the rule and all the right questions pop up.

How would I be able to test it?

Show us the rule and action for the state change

Price change Reason:

[?Enter New Price;(\d{1}.\d{2}|\d{1}\d{1}?.\d{2}|\d{1}\d{1}\d{1}?.\d{2}|\d{1}\d{1}\d{1}\d{1}?.\d{2})?|0;;OCN;49,50,51|52,53,54|55,56,57|190,48,8]

Can you show the update order status action