On-Reader Tipping

On-Reader Tipping makes it easy for your merchants to collect tips from their guests. At the start of each transaction, the guest can be asked if they want to add a tip and then can enter the tip amount right on the card reader. Two tipping strategies are supported by the .Net solution:
  • Ask for Tip Amount: Only the tip amount decided by the customer is entered.
  • Ask for Total Amount: The total amount of the sales transaction is entered.
To ask for a tip, create
TransactionProcessParameters
and pass them in addition to the
TransactionParameters
when starting a transaction.
The
Ask for Tip Amount
strategy looks like:
ProcessStepParameters step = new TippingProcessStepParameters.Builder() .AskForTipAmount() .SuggestedAmount(1) //suggested amount (
optional
) .MaxTipAmount(2) // maximum amount (
optional
) .ShowAddTipConfirmationScreen(true|false) // activates/deactivates add tip confirmation screen (
is optional with default on true
) .ShowTotalAmountConfirmationScreen(true|false) // activates/deactivates total amount confirmation screen (
is optional with default on false
) .Build(); TransactionProcessParameters processParameters = new TransactionProcessParameters.Builder() .AddStep(step) .Build();
The
Ask for Total Amount
strategy looks like:
ProcessStepParameters step = new TippingProcessStepParameters.Builder() .AskForTotalAmount() .SuggestedAmount(1) // suggested amount (
optional
) .MaxTipAmount(2) // maximum tip amount (
optional
) .ShowAddTipConfirmationScreen(true|false) // activates/deactivates add tip confirmation screen (
is optional with default on true
) .ShowTotalAmountConfirmationScreen(true|false) // activates/deactivates total amount confirmation screen (
is optional with default on false
) .Build(); TransactionProcessParameters processParameters = new TransactionProcessParameters.Builder() .AddStep(step) .Build();
Both
AskForTipAmount()
and
AskForTotalAmount()
tipping strategies benefit from reader screen configuration when performing the transaction. While
ShowAddTipConfirmationScreen()
is used for the first Confirmation screen that displays,
ShowTotalAmountConfirmationScreen()
is managing the second Confirmation screen that displays when confirming the total amount of the transaction. The Confirmation screen configuration properties are optional . By default the Add Tip configuration screen is enabled and the Total Amount Tip configuration screen is disabled. You have the option to set a maximum amount for tipping, using
MaxTipAmount()
. The tip amount added to the transaction cannot be higher than the value set using
MaxTipAmount()
.
In the
TransactionCompleted
callback, you can then access the
IncludedTipAmount
:
(transaction, transactionProcessDetails, error) => { //... if(transaction.Status == TransactionStatus.APPROVED) { Console.WriteLine("APPROVED: " + transaction.Identifier); Console.WriteLine("Tip Amount: " + transaction.Details.IncludedTipAmount); //.... } else { //.... } });
The former method of providing tipping was deprecated, but is still supported.
var transactionProcessParameters = new TransactionProcessParameters.Builder() .AddAskForTipStep() .Build();