How to make fast cash buttons work similar to Settle screen

Alright I’m not sure If I missed any particular topic that goes over this thing however I will try and make it as easy to understand as possible.

Firstly in many tutorials and questions within the foums I am seeing the fast cash $5,$10,$20,$50 buttons. I’ve tried to implement this with little success but I that’s sort of off topic at the moment.

After reading almost all I could find on fast cash buttons, I realised one particular thing may have not been mentioned(or I may have missed this). I will put this in a scenario case so it’s easy to understand what I’m trying to say.

Scenario 1.

  • Total order equal $50
  • Customer first gives $20 note to pay by cash.
  • User presses $20 fast cash
  • after pressing that button, the total amount is reduced by 20 and now showing only $30 left to pay
  • Customer pays the rest by card
  • User able to press a fast CC payment on order screen to complete the rest of the order.

Scenario 2

  • Total Order $ 30
  • Customer decides to pay $20 by card and $10 cash
  • User able to press Fast CC payment for amount of $20
  • After payment order is updated with remaining amount
  • Customer decides to pay the rest by cash
  • User can then just press the $10 Fast Cash payment and closes the ticket.

All of this I know can be done in the settle screen, but what if it was possible (Usually done in fast food places in AUS) to do the same thing on the order screen using fast cash buttons?

So far I’ve seen fast cash showing change and tendered amount for amounts less than or equal to fast cash button amount, but nothing relating something like shown in the scenario.

I have a feeling it’s really a easy setup, but until I can personally fix my own fast cash button issues, I just thought whilst I’m fixing it, why not see if I can modify it to fit this type of scenario.

This should be easily doable, payments can be put to a ticket like that.

My fast CASH button (no tendered value) is setup to do one of the two following;
A - if numberpad is empty cash is tendered to the ticket total
B - if numberpad has a value cash is tencered to the amount entered in the numberpad…

I think that would work perfectly for this client I’m setting up a machine for. Do you have a tutorial I could follow?

Don’t have a tutorial, its a relatively easy one;

CASH (automation command - button)

Pay Ticket Action - Fast Cash Payment

  • Payment type = Cash
  • Tendered = [:Tendered]

Rule for that automation command name (CASH) with two actions

  • Fast Cash Payment
    — Constraint = ‘{:NUMBERPAD}’ != ‘’
    — Tendered = {:NUMBERPAD}

  • Fast Cash Payment
    — Constraint = ‘{:NUMBERPAD}’ == ‘’
    — Tendered = {TICKET TOTAL}

I do have a couple of other rules on payment processed action;
No Change
– Remaining Amount = 0
– Change Amount = 0
– Ticket Total =greater than 0
->Close Ticket
->Lougout User

Change Due
– Remaining Amount = 0
– Change Amount != (not equals) 0
– Ticket Total =greater than 0
->Ask Question – message = Tendered: £{TENDERED TOTAL}\rChange Due: £{CHANGE TOTAL}
->Close Ticket
->Lougout User

Ahh. That last rule I don’t have ask question action to do that. hmm

The ask question is optional and only happens if there is change due.

Either way (after the ask question is 'OK’ed if change due) the ticket is closed and user logged out.

The logout again is setup specific if you work on a login per transaction flow.

There is one thing I noticed though. Under the custom constraints, I could not find Ticket Total. I could however type it, would this affect the rule in any way?

{TICKET TOTAL} you need to type.

Depending on the event and where it is in your flow you can use most of the ticket template tags.

ALSO do you understand the use of [:xxx] in action fields?

I think [:xxx] just adds a field with the name when you add that action into the rule. Is that correct?

Yep, just wanted to check you knew that bit, it lets you set the field value from the rule rather than fixed within action options.

Yeah after configuring it a couple of times I figured out what it does, but there is so much it can do, you sometimes just don’t know where to start.

Also I used the Fast Cash Payment button that automatically created the fast cash button for me. In the Fast Cash rule though, it has a ‘Execute Automation Command’ in actions which is linked to ‘ACM Close Settled Ticket’. Should I keep this as is or remove it?

From the configuration task?
Either adapt that or remove and start fresh, up to you.

I think If I did it fresh it would make me understand on how a few things work. However I think also if I can learn to adapt, then I can save time? In this case, I’m trying to adapt it. Lets see how it goes haha. Thanks @JTRTech

Alright I tried to implement that number pad with the fast cash button, but it still seems to be just closing it rather than opening the number pad?

You haven’t put the constraint on the fast payment rule to trigger it on the button press.

Look at another rule like the print bill automation command rule and yourll see what I mean.

Like this?

Looks good.
Is the rule from the configuration task still there?

That is the rule from the configuration task. I just removed the extra action that was there. However after putting that constraint. I press the button and it still just immediately prints and closes ticket without number pad. Weird

Its not weird at all :smile: numberpad is empty…

Have you turned of the keypad?

Unless you type something in the keypad {:NUMBERPAD} == ’ ’ so it is firing the {TICKET TOTAL} action :smile:

Hahaha Oops, I just realised I was supposed to press something on the keypad before it actually fires it just like you said. its 5am in the morning, my brain is fried haha. thanks man :smile: