This example shows how to set up the MDB Payment utility to pay for prints using Breeze Kiosk with a credit card reader in authorization first/idle mode.
In this example when the user selects print in Breeze Kiosk it displays the print payment screen and waits for the user to scan their credit card and then automatically prints the photos when the payment has been authorized.
Prerequisites
To use the MDB Payment utility you need to be running Breeze Kiosk v2.1 or later.
First check that the credit card reader is running in MDB level 1 for authorization first/idle mode. If the Nayax VPOS Touch is not set to MDB level 1 you may need to contact Nayax support to request them to set it to MDB level 1.
Check that Breeze Kiosk 2.1 or later is installed on the computer. Then In Breeze Kiosk enable the print option and click on “Print settings…” to enable print payment mode. Check the “Print screen timeout” is set to 90 secs to ensure the payment screen doesn’t timeout before the user has time to make their payment.
Run the MDB Payment utility on the same PC as Breeze Kiosk. The MDB Payment utility screen should look something like this:
Step 1: Add an event to enable the card reader
Check that “Selection first/Always idle mode” is not selected and the “Mode:” dropdown list is set to “Breeze Kiosk”.
Click on the “Settings…” button to display the settings dialog:
Add an Action
Then click on the “Add action…” button to add an action:
Name the Action
Give the action a suitable name e.g. “Enable reader” and then set the trigger conditions in the section below. What we want to do is enable the card reader when Breeze Kiosk is displaying the print payment screen and the card reader is disabled.
Pattern Trigger
The “Pattern” trigger condition is set to a pattern that matches the kiosk’s state e.g. “Main:” or “Print (payment)”. If “Use regular expression” is not selected the pattern string will match any part of the kiosk status string.
We only want to enable the card reader if it is disabled (i.e. the state is INIT) and so we set the reader state in the trigger conditions to INIT.
Next we need to specify the action to take when the trigger conditions are met. In this case all we need to do is enable the card reader.
Add the INIT Action
The “Add action” dialog should look something like this:
Step 2: Request payment when the user scans their card
When the user scans their card the state changes to CREDIT and we want to request payment for the print. To do this click on “Add action…” in the settings dialog and name the action “Request payment”. In the trigger conditions section set the pattern to “Print (payment)” and the reader state to CREDIT.
In the actions to perform section set the “Request payment, amount:” to the amount, e.g. for $1 set this to 100, and set the required product number. The product number can be set to anything and is recorded in the logs that can be accessed via the Nayax web dashboard. This can be useful if you have different options at different prices and want to keep a record of which is selected.
Add the CREDIT Action
The “Add action” dialog should look something like this:
When the payment has been requested the status changes to VEND. If the payment is authorized the status will change to RESULT but if it fails it will change to IDLE.
Step 3: Payment Authorized
Define a new action named “Payment authorized” that is triggered when Breeze Kiosk is displaying the print payment screen and the reader state is RESULT. In the actions to perform section set the photo booth command to “Payment accepted”.
Add the RESULT Action
The “Add action” dialog should look something like this:
Step 4: Payment Failed
If the payment is not authorized the state changes to IDLE and we want to cancel the print and return to the main screen.
Define a new action named “Payment failed” that is triggered when Breeze Kiosk is displaying the print payment screen and the reader state is IDLE and the transaction has failed. In the actions to perform section set the photo booth command to “Payment cancelled”.
Add IDLE Action
The “Add action” dialog should look something like this:
The settings screen should show all four actions and look something like this:
Check it works
Click “OK” in the settings screen to return to the main screen. Then tap the print icon in Breeze Kiosk and when the print payment screen is displayed scan a credit card (or the Nayax technician mode card) to start a payment. Breeze Kiosk should wait for the payment to be authorized and then print the photos and return to the main screen.
The main screen should look something like this:
Refinements
After the payment has been accepted and the photos have been printed the card reader will return to IDLE mode and display the contactless payment animation. There is nothing to stop the user from scanning their credit card again before they have selected another photo to print. To prevent this we could add an action to disable the card reader when the main screen is displayed and the reader status is IDLE.
Loading Sample Actions
The actions used in this example can be loaded by clicking on the “Load…” button and loading the MDB_authorization_first_ex1.xml settings file.