This method allows for applying a TakeAway Surcharge on a per-Product basis.
It uses a combination of Product Tags, Ticket Tags, Order Tags, Order States, and Automation (Actions/Rules).
While you could use this surcharge to recover the cost of Take-out containers, we are going to call this surcharge an Environmental Fee, and the surcharge can be different for each Product.
FLOW:
Click on the To GO button at the bottom of the Ticket to toggle between Dine In and To GO, while also automatically applying or removing the Environmental Fee surcharge
Ticket Tag TA
with sub-Tags βDine In
β and βTo GO
β (no mapping required)
Order Tag TA Surcharge
with sub-Tag βEnvironmental Fee
β (no mapping required)
Custom Product Tag Caption βEnvFee
β to set per-Product Surcharge value:
Set the EnvFee
surcharge for each Product using the Product Tag Editor:
Automation Command to toggle Dine In / To GO:
Action to set Ticket Tag TA
to βDine In
β or βTo GO
β:
Tag Name: TA
Tag Value: [:StayGo]
Action to update Order State TAsurcharge
to TA
or NonTA
:
State Name: TAsurcharge
State: [:TA or NonTA]
Action to Tag Order with the Surcharge and Fee:
Order Tag Name: TA Surcharge
Order Tag Value: Environmental Fee
Order Tag Price: [:SurchargePrice]
Action to UnTag Order:
Order Tag Name: TA Surcharge
Order Tag Value: Environmental Fee
Action to Refresh Ticket display (optional - you might already have this action as part of some other setup):
All Rules require a Default Mapping !!!
Rule to capture Automation Command button and set the TA
Ticket Tag value to βDine In
β or βTo GO
β
Execute Rule if Matches
Automation Command Name
Equals TA StayGo Toggle
TA Update Ticket Tag StayGo:
StayGo: [:CommandValue]
Rule to capture Order Added event and set Order State to TA
or NonTA
based on TA
Ticket Tag value of βTo GO
β or βDine In
β
TA Update Order TAsurcharge State:
Constraint: '{TICKET TAG:TA}'=='Dine In'
TA or NonTA: NonTA
TA Update Order TAsurcharge State:
Constraint: '{TICKET TAG:TA}'=='To GO'
TA or NonTA: TA
Rule to check TA
Ticket Tag value when we toggle using the Automation command for βTo GO
β or βDine In
β and set the Order State to βTA
β or βNonTA
β
Execute Rule if Matches
Tag Name
Equals TA
TA Update Order TAsurcharge State:
Constraint: '{TICKET TAG:TA}'=='Dine In'
TA or NonTA: NonTA
TA Update Order TAsurcharge State:
Constraint: '{TICKET TAG:TA}'=='To GO'
TA or NonTA: TA
Rule to Tag Orders with the surcharge Fee when the Order State is set to TA
:
The amount of the fee is derived from the Product Tag called EnvFee
and is only applied if the EnvFee
is greater than zero (0
). If you want ALL Products to be charged with the same Fee, then remove the Action Constraint and set a static value for SurchargeFee
.
Execute Rule if Matches
State Name
Equals TAsurcharge
State
Equals TA
{ORDER STATE:GStatus}
Not Equals Gift
TA Tag Order Surcharge:
Constraint: [=TN('{ITEM TAG:EnveFee}')]>0
SurchargePrice: [=TN('{ITEM TAG:EnveFee}')]
Rule to UnTag an Order when the item is Gifted
or when the Order State is set to NonTA
:
Execute Rule if Matches
State Name
Equals TAsurcharge
State
Equals NonTA
State Name
Equals GStatus
State
Equals Gift
Rule to re-Tag Orders when the item is UnGifted
and the Order State is TA
:
The amount of the fee is derived from the Product Tag called EnvFee
and is only applied if the EnvFee
is greater than zero (0
). If you want ALL Products to be charged with the same Fee, then remove the last half of the Action Constraint and set a static value for SurchargeFee
.
Execute Rule if Matches
State Name
Equals GStatus
State
Not Equals Gift
TA Tag Order Surcharge:
Constraint: '{ORDER STATE:TAsurcharge}'=='TA' && [=TN('{ITEM TAG:EnveFee}')]>0
SurchargePrice: [=TN('{ITEM TAG:EnveFee}')]
If you implemented this setup manually by following the instructions above then Good on You! And if you didnβt, here is your reward for at least reading all of itβ¦
DB Tools Import File for the Automation (Rules/Actions) and the Ticket Tag and Order Tag - you will still need to set up your Product Tag
, and Product Tag
EnvFee prices in order for this to work:
TakeAwaySurcharge_TicketTagOrderTag.zip (713 Bytes)
TakeAwaySurcharge_Automation.zip (1.4 KB)