Loyalty Card Questions / Issues [PRO]

Hello Team,

I am finally setting up a loyalty card type system using some great tutorials I found in the forums. I do have two issues though:

  1. I need to prevent adding “bonus points” if they purchase was paid with a gift card
  2. I need an automatic button to discount the GC amount and leave the rest pending

I have found tutorials / solutions for both but cannot get them to work. Any help would be great.

Situation #1 has been discussed here by kendash: Custom Simple Loyalty Card Features

I have followed the instructions and created a state Loyalty and made the payment processed rule check for the loyalty status yet it still adds credit even when it’s a loyalty payment. My setup is as follows:

Action:
https://s32.postimg.org/t485o40kl/step1.png

Rule:
https://s31.postimg.org/rtr008q5n/step2.png

Update Ticket State Action:
https://s32.postimg.org/5tpuy80at/step3.png


As for the automation command to automatically use the balance from the loyalty card (customer account) – I am following QMcKay’s tutorial however it relies on the “GCBalance” field assuming we have a one time use gift card but in this case we have a loyalty account (using customer account entity renamed) – so the account is ongoing. What variable would I use to pull the balance from that, it also relies on the account name starting with “GC-” but mine are random numbers for customer accounts.

Did you mean {TICKET STATE:Loyalty} ?

You can find valid printing tag values here.

This is not for printing but rather for a rule for processing 5% “credit” for every purchase. However purchases paid with credit should not get 5% so the theory is to set the “ticket state loyalty” to “true” if a card is used, the rule only applies if the state is not true.

Yes it is not for printing but what you’re using to receive values in rules are Printing Tags in SambaPOS terminology. For example you can use {TICKET NO} tag to print ticket number or use it inside rule to read ticket number in a constraint. Similarly you can use {TICKET STATE:X} to print a ticket state or read a ticket state in rules.

We don’t have {STATE:X} tag. It does not returns a value so it is always false (not true) in your case. That’s why it always works. You can use printer template reference to validate if a tag you want to use exists or not.

It is also a great idea to use “Show Message” action to see what these dynamic tags reads in a rule. After you complete your setup you can remove Show Message actions.

1 Like

@emre I understand, switching STATE to STATE LOYALTY still did not work however I added an extra constraint, payment method not equals member card balance and that seems to have handled it.

All I need to finish it the automatic usage of the card payment like in QMcKay’s tutorial.

Thanks for the help

That’s OK if you found the solution but I didn’t recommended switching state to state loyalty. I recommended using {TICKET STATE:Loyalty} tag instead of {STATE:Loyalty}. Understanding that will help you while customizing SambaPOS so it may worth experimenting different uses.