Gift Certificate Sales

Unfortunately, no. There is no Mapping features available for Menu Categories, Menu Items or Products.

However, you can use Automation to prevent a non-Admin (or any User or Role for that matter) from being able to add the item to a Ticket.

Use the Order Added rule to check the {:CURRENTUSERROLE} and if it is not “Admin”, then use an Action to Cancel Order which will immediately remove the GC item from the Ticket.

For example, this Rule has a Show Message Action in it to display the User and Role …

So when I add a GC to the Ticket, this shows up …

We can use that information to Constrain the Rule and/or the Actions from firing. There are a couple ways to do this:

  • Method 1: constrain all Actions.

  • Method 2: constrain the Rule itself, and create another Rule to remove the Order.

  • Method 3a: remove the Menu Item button from the Menu/Category, and create an Automation Command button to use an Add Order Action which is constrained for Admin Role either by Admin PIN and/or in the Rule that is triggered by the AMC. This method will have the GC AMC Button mapped to the Ticket

  • Method 3b: remove the Menu Item button from the Menu/Category, and create a Custom Category Menu Button which invokes a Rule to use an Add Order Action which is constrained for Admin Role in the Rule that is triggered by the button’s Automation Command Property. This method will show the GC button in the same way as using a regular Menu Item button, but it is not mapped to a Product.

For the first 2 Methods, we first need to create a new Action for GC Remove Order

For the 3rd Methods (a or b), we need to create a new Action for GC Add Order


#Constrain Rule Actions (Method 1)

Now we can modify our Rule to contain the GC Remove Order Action, and constrain the Actions with:

'{:CURRENTUSERROLE}' == 'Administrator'
  • NOTE 1: If your Role is “Administrator” instead of “Admin” then you need to change it in the constraints to match your configured Role…
  • NOTE 2: Notice the last Action Constraint uses != instead of ==


#Constrain 2 Rules (Method 2)

The other way to do this is to Clone the original Rule, remove all the Actions, and add the GC Remove Order Action to the Clone …

Then edit the original Rule and either add a Rule Constraint, or modify the Rule Mapping so that only an Admin user will fire the Rule …


#Use an Automation Command button (Method 3a)

First, you would remove the Menu Item from the Category/Menu …

Create an Automation Command and map it to Ticket, Under Ticket or Under Ticket Row 2.

You can choose to use Admin PIN confirmation (any user will see the button, but it will require an Admin PIN to make it work) and/or map the AMC to the Admin Role (only Admins will see the button).

Create a Rule to handle the Automation Command.


#Use a Custom Menu button (Method 3b)

First, you would remove the Menu Item from the Category/Menu …

Add a Custom Button to the Category/Menu, then Edit Product Properties to set the Automation Command property to GC Add Order

Finally, we use the same Rule as Method 3a to handle the AMC and fire the GC Add Order Action, but in this case we Constrain the Rule, Constrain the Action, and/or map the Rule to the Admin Role. Or if you created the Automation Command as in 3a and only used Admin PIN Confirmation as a constraint, then you might not want to Constrain this Rule at all and rely solely on Admin PIN Confirmation …

You could also remove gc item from menu and build simple automation to add the gift certificate order for you and check the ask admin pin option for the automation command. This enables the ability for other users to add a gift certifcate with the admins permission.

Or even just hide the button non admin users.

I have been thinking about giving free gift certifcates also.

The problem I see with this, in terms of accounting is that because you have not tendered any money for the GC, your sales report will be incorrect.

I plan to create a separate gift voucher, which will apply the payment as a discount.
I have the voucher generating, I just need to work out how to constrain a user overdrawing their credit using calculation types.

Am i right in my thinking on this. For example if you have a voucher (or a gift certificate that has not been paid for) for €5 off something it should be thought of as a discount and reduce ticket total, not the remaining balance as it does now.

4 posts were merged into an existing topic: Loyalty Card Credit as Discount vs Tender

Yes apologies I thought it was sort of relevant when I seen that he wants to give free vouchers but I guess I should have kept it in the other thread.

Good idea as well - I think I like that method best! :wink: I will add “Method 3” to my previous post using an Automation Command button instead of a Menu Item button.

EDIT: added 2 similar methods, 3a and 3b

This is a perfect Tutorial, Many thanks For you and silentbob. you saved me a lot of work I hope i could do anything to help you but my knowledge here is very limited. On the other hand I am a pharmacist so anything regarding medicine I will be a good help but it will be outside this as it will not be any relevant :wink:

1 Like

Sorry again can we add the Account Details botton

Do you mean the Can display Account property in the Widget?

WOOOW, That is it Thank you very much, this is perfect now