Loyalty System: Discount Per Visit

The reset is so that a customer does not come at their own time and get a discount and its not limited to a number of months but will be running all year round.

Yer, got that, your missing what I’m saying…
So discount is valid if last visit month is this month and visit >2.
Each visit the values are checked, if this month vksit increased by one.
If visit not this month month set to this month and visit reset to 1.

Hey, might you have a sample string with this type of expression?

Have rece tly changed our discount/loyalty system to a frequency based setup.
I leg last 6 dates they made purchase, if 6 is less 28 days treated as more than once a week and get 15%, if 4 is less that 28 they get 10% as average once a week.
Less than that they get 5% base on the members system.

Did you by chance prep a tutorial on how to build this?

Hey, JTRTech managed to find a solution I wanted with the help of @markjw via this link Clear a certain field for all entities - #7 by GreatShakesBar. Just edited the script to match my fields. Thanks for the help guys

Hi, im following your loyalty system setup
, but cant seem to find the LP_Ask Question Eligible Discount Action…what action type did you use? im editing the LP_Ask Question Eligibility Discount rule but i cant seem to add that action to the rule
Screenshot_1

I used the “Ask Question” action type and forwarded the parameters so they I can edit them in the rule.

Then within the rule i click on " Select Action," and then insert that action and insert the parameters.

thanks, your explanation on the setup is very clear…

What Parameters did you edit here…i dont get you when u say u forwaded the parametersScreenshot1 because on the rule im not getting enough parameters to insert
Screenshot

You can forward the parameters values into the rule like shown in my screen shot, by inserting [:xx] where X can equal the name of the field.

For example.

For the field “Question” if you type [:Question]

And save it, then when you go to insert the action into the rule the “Question” field will show up.

By doing this, I can change the variable/value directly from the rule instead of editing the field in the actions page.

It is also easier to see what values are in the action within the rule instead of opening the action from the action page.

ok now i get it, thanks…i learned something new

Hi, can someone help me with my loyalty card setup per visit…1point per visit ,every 10th visit a customer gets a 30% Discount but the problem is the 10th visit when it asks that the customer is eligible for a 30% discount i press apply and then when i settle the bill it resets the visit counter and it adds the +1visit that will be shown on their next visit instead of resetting the visit counter so that its 0 when they come on their next visit but it will be 1visit instead of 0visits …and i want it also when customers dont claim and its more than 10 for an example 12visits…and then when they claim its adds the remaining 2points to the next visit or show there is 2points left so when they come next time it shows on their ticket and adds another point when the ticket is settled to make it 3points.
i will upload the database tool for my loyalty card setup to check
Loyalty Card Per Visit.zip (1.9 KB)

Try adding this constraint to the LP_Increase Customer Visits When Payment Processed rule
{TICKET STATE:Loyalty Discount} Is Null

txSCPu0hmb

I haven’t tested this. Test it out and we can make any tweaks as necessary.

1 Like

ohhh it worked thank you so much

1 Like

It really worked??? Wow, I’m surprised! Usually it takes me a few tries.

Here is what is going on:
When a Loyalty Points discount is applied, it is applying a Ticket State Name Loyalty Discount value to Applied.

50gxWoT5VH

When a discount is not added to the ticket, there is Loyalty Discount Ticket State added to the ticket…it is not there or more accurately it is Null. And since we only need if the ticket state is present or not we use a report tag of {TICKET STATE:Loyalty Discount} is Null.

The report tag of {TICKET STATE:Loyalty Discount} Equals Applied would also work in the constraint.

—Edit—
It should be:
{TICKET STATE:Loyalty Discount} Not Equals Applied

2 Likes

do you know how i can fix this,when it asks me that the customer is eligible for a discount i press yes then it applies the discount but it doesnt show the discount but it already calculated it…when i go back and close the ticket and open it the discount is showing, the same applies to the Cancel Loyal discount when i press it when its applied to both Ticket&Payment it doesnt cancel but when i press it under ticket it cancels but on payment screen it doesnt cancel…


discount calculated but not showing


when i close ticket reopen it then the discount calculation is showing

You just need to do a screen refresh for the 2 rules.

Rule name: LP_Apply Discount:

Add Display Payment Screen action to the list.

Here is what the action looks like if it does not already exist

VId9dQCKgG

BaqqyaXHrQ

Rule name: LP_show Cancel Loyalty Discount button:

Add DF Display Loaded Ticket action to the bottom of the list.

If DF Display Loaded Ticket action is not present

We will create an action to display to ticket.

  • Add a new action.
  • Search for Display Ticket in Action Type.
  • Enter [:Ticket ID] in the field.
  • Save.
    9IpDIDrIL0

sZvRjjb42z

I think that should show the calculation discount. Let us know if it does not.

i tried the first one it seems it worked to show the calculation but , when i press the cancel loyalty discount button it sill shows the calculation but if i close the ticket and open its not showing…the second one of the DF Display Loaded Ticket i dont have that action, do i need to create one?

Expand the :arrow_forward: If DF Display Loaded Ticket action is not present from above.

In the Rule, just leave the Ticket ID field blank.