Photo booth authorization first example 1 |
Top Previous Next |
This example shows how to set up the MDB Payment utility to start a photo booth with a credit card reader in authorization first/idle mode. The photo booth app in this example is DSLR Remote Pro.
To use the MDB Payment utility you need to be running DSLR Remote Pro v3.16 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.
Create a simple photo booth event in DSLR Remote Pro and select the "Auto standby" option so that the photo booth returns to standby mode after each session. Edit the welcome.jpg screen to display a message showing the price of the session and inviting the user to scan their credit card. Edit the ready.jpg screen to display a message saying "Authorizing payment...". Run DSLR Remote Pro in photo booth mode and run the MDB Payment utility. 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 "DSLR Remote Pro". Click on the "Settings..." button to display the settings dialog:
Then click on the "Add action..." button to add an 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 the photo booth is displaying the welcome.jpg screen and the card reader is disabled.
The "Pattern" trigger condition is set to a pattern that matches the photo booth screen e.g. welcome.jpg. If "Use regular expression" is not selected the pattern string will match any part of the photo booth screen path. In the screenshot above the screen path is shown as: "C:\Users\chris\Documents\PhotoboothImages\copies2\welcome.jpg" which can be matched by setting the pattern to "welcome.jpg". More complex pattern matches can be defined by selecting "Use regular expression" and entering a regular expression such as .*welcome\.jpg for the pattern.
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.
The "Add action" dialog should look something like this:
Click OK to save the action and the settings dialog should look something like this:
Click OK and the action should be triggered if the photo booth is displaying the welcome.jpg screen and the reader is disabled. The status log should show the action triggering, the reader's screen change to the contactless payment animation and the state should change to IDLE:
Step 2: Wake up the photo booth when the user scans their card
When the user scans their card the state changes to CREDIT and we want to switch the photo booth from standby to ready and to request payment. 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 welcome.jpg and the reader state to CREDIT. Note: the amount is in cents for USD or Euros and pence for GBP. This is because the scale factor is 1 and the decimal places is 2 in the MDB status shown in the main screen.
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 the photo booth is displaying the ready.jpg screen and the reader state is RESULT. In the actions to perform section set the photo booth command to "Start photobooth".
The "Add action" dialog should look something like this:
Note: defining an action that is triggered by the RESULT state automatically sends a confirmation message to the reader which will display a "Thank you" screen and then switch to the IDLE state.
Step 4: Payment Failed
If the payment is not authorized the state changes to IDLE and we want to switch to standby mode to display the welcome.jpg screen.
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 scan a credit card (or the Nayax technician mode card) to start a payment. The photo booth should switch to the ready screen, wait for the payment to be authorized and then start the countdown. At the end of the session it should return to the welcome.jpg screen.
Refinements
After the payment has been accepted and the photo booth has started taking photos 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 even though the photo booth is not ready for the next session. To prevent this we could add an action to disable the card reader when the 1.jpg countdown screen is displayed and the reader status is IDLE.
The example described on this page is a very simple single payment photo booth which starts automatically after the users scans their card and the payment has been authorized. More complicated sessions which allow the user to choose different options with different prices can be created by using profiles to build a menu of options.
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. |