You can try using this add-on
Hi Emre,
I need help setting the rule to recognise the tendered amount when these automation buttons are pressed?
OK. Sorry I misunderstood your question. Since we donāt have an action for custom payment amounts you wonāt be able to implement that. But it should be easy to support that feature. Iāll check that.
You wouldnāt really need to go to the payment screen. Just have a message popup with the change amount.
Yes but the missing piece is Pay Ticket
action does not support tendered amount. It just settles remaining amount so no āpayment processedā rule does not return change amount. Iāll support that on next release.
Already have a solution Please stay tuned.
Ok, here we go.
Set your automation button names like $10 Fast Payment
, set Value to 10
and map to under ticket. Repeat for all denominations.
Create Action Name - Update Program Setting
Action Type - Update Program Setting
Setting Name - [:SettingName]
Setting Value - [:SettingValue]
Update Type - Update
IsLocal - True
Create Action Name - Fast Payment
Action Type - Pay Ticket
Payment Type Name - Cash
Create Action Name - Display Message
Action Type - Show Message
Message - [:Message]
Create Rule Name - Fast Payment
Event Name - Automation Command Exeucted
Custom Constraint - AutomationCommandName - Contains - Fast Payment
Actions
- Fast Payment
- Update Program Setting, SettingName = FastPayment, SettingValue = [:CommandValue]
- Close Tciket
Create Rule Name - Fast Payment Ticket Closing (make sure this rule is above Ticket Payment Check)
Event Name - Before Ticket Closing
Custom Constraint - {:FastPayment} - Is Not Null
Actions
- Display Message, Message = Change - $[=F(TN(ā{:FastPayment}ā)-TN(ā[:TotalAmount]ā))]
- Update Program Setting, SettingName = FastPayment, SettingValue = leave blank
$20 was selected.
I canāt believe this I should think one more second before saying ānot possibleā
The only problem was getting the Ticket Total, which is not available in the Automation Command Exeucted
event. Thats why the Before Ticket Closing
event is needed.
Now to get this working properly with Last Sale.
- Move the
Update Program Setting
Action to the top in theFast Payment
Rule - Add Custom Constraint
{:FastPayment} IsNull
toLast Sale
Rule - Clone
Last Sale
Rule
- Rename to
Last Sale - Fast Payment
- Change Custom Constraint to
{:FastPayment} IsNotNull
- Set LastSale to
TTL $[:ProcessedAmount] - TN ${:FastPayment} - CHG $[=F(TN('{:FastPayment}')-TN('[:ProcessedAmount]'))]
Okay John
Wow, I did not think it was so involved. Lets see how I get along with this oneā¦
Okay,
Seems to work great, but since we have integrated this into the Subtitle, maybe there is no need to have a message box which needs clicking, especially if your message box is as ugly as mine in the bottom right corner. What do you think?
Just realised when you enter the Tickets screen to display the ticket the Tendered Amount is also incorrectā¦ maybe we should wait for Emreās new release which might save us some grey hairs?
Additional click is useful for operator since he acknowledges he got the change due. You should use Show Message
action instead of Display Popup
ohh okay, and I was looking for action type: display message as John stated. Correction needed John in case anyone else follows these steps.
Just fixed it then
It is 3:50AM here after all
It will not save the tendered amount as we are not using the Payment Screen. And there is no easy way around this unless we just use Ticket Tags.
Thanks John brilliant instructions. You made something complicated very easy to follow. Appreciated.
However: Small Problem
i.e if the total bill is Ā£5.95 and the operator presses the Ā£5. It displays -0.95p but still closes the ticket although there is a balance, see:
When you enter the Tickets section and Display the Ticket it shows that the balance has been settled in full, see:
OK. Iāve implemented Tendered Amount for Pay Ticket
Action to save your hairs and let John to fall into sleep. Before loosing our motivation on this Iāll release new version in a couple of minutes.
ha ha, thanks Emre nice one.