Square Part 1 – Standard Setup

Make sure you are subscribed for the SynthesisVR’s Square module: Once subscribed, you need to set up a new app account on Square by heading to https://developer.squareup.com/apps and logging into your square account (if not already logged in). You need to set up a new “app” to allow SynthesisVR to connect to Square. First, you’ll need to click on the big “+” ​ Create an Application Name (like Arcade Name Square Processing or something) and then click on Save. ​ Once created, click on the Open button to get to all the data you will need: ​ You’ll then need to get the information from both the Sandbox and Production sections (within the Credentials section, which is where you start): ​ ​ As well as location information from the Locations section (again, both Sandbox and Production): You will then paste this information into your Square Settings (note that “Live” is equivalent to “Production”): ​ ​ To integrate Square into SynthesisVR for payments in your store, head to  “Administration” and click on your arcade name. You will get a popup. Locate and change the following option: If you are looking to integrate Square into any web widgets, make sure the correct payment processor is assigned in there as well: Sandbox Mode: For using Square in Sandbox mode, please add the following to “Add HTML before the BODY tag closure”: When testing the widget, use the following ZIP code: For testing different payment scenarios, please refer to the test Square data:

Understanding Your Charges

 At SynthesisVR we want our billing to be transparent and easy to follow for all our partners. Now that you have subscribed to SynthesisVR and started to license games, you can find all your charges and transaction history as follows:  How to access your transaction history and Invoices Go to Administration – Arcade Setup – BillingClick the “Invoices & Payment History”Download the invoice that you’d like to inspect    How to check your current months licensing charges Go to Administration – Billing – Games   From there you will be able to check exactly how much usage you’ve generated for a certain game and how much money it is going to cost you.

Booking Add-On – disable opening / closing hours from booking

Due to multiple reasons (as example, having a lot of foot traffic), you may want to hide periods of the day from your booking widgets. To avoid creating new experience type with different hours and extra logic that may complicate your setup, you can simply extend the booking widget with some custom code. To make it even easier for you, we already built that code and simplified it to the possible minimum.   You may want to hide times based on day of the week or based on experience type (or both together). For that purpose, you have to build your logic and few lines of javascript code. Considering the days of week are: Monday => 1 Tuesday => 2 Wednesday => 3 Thursday => 4 Friday => 5 Saturday => 6 Sunday => 7 If you want to hide options from the widgets for only Monday + Thursday + Sunday, then you’ll have to use the following combination: 1,4,7 If it is to apply for Monday to Thursday, then use: 1,2,3,4 Next, you need your experience type ID (can be found on the Experience Types management page). Let say you work with the default “Immersive” experience type => 1 Then, your rule will looks like this: 1_1,4,7 => the _ character is used as a separator between the experience type and the days of the week 1 => in this case, you don’t have any specified days, so we assume your rule apply everyday *_1,2,3,4 => applies for ALL experience types between Monday ot Thursday Note: you can’t list multiple experience types separated by comma. You have to create multiple rules instead. You can use asterisk (*) to apply the rule for all your experience types   What the actual code looks like: Default line (no changes on it): window.svr.hideTimes = new Object(); [‘hide_before’,’hide_after’].forEach(function(i){ window.svr.hideTimes[i] = new Object(); }); Your rules: window.svr.hideTimes[“hide_before”][“*_1,2,3,4”] = “13:00”; window.svr.hideTimes[“hide_before”][“1”] = “14:00”; window.svr.hideTimes[“hide_after”][“*”] = “20:00″;   All your rules have to be enclosed in a <script> tag. You also have to load the actual custom logic: <script src=”//api.synthesisvr.com/widgetPlugins/skipTimeOptions.js” crossorigin=”anonymous”></script>   Examples 1) If you don’t want to accept bookings before 1pm and after 8pm: <script> window.svr.hideTimes = new Object(); [‘hide_before’,’hide_after’].forEach(function(i){ window.svr.hideTimes[i] = new Object(); }); window.svr.hideTimes[“hide_before”][“*”] = “13:00”; window.svr.hideTimes[“hide_after”][“*”] = “20:00″; </script> <script src=”//api.synthesisvr.com/widgetPlugins/skipTimeOptions.js” crossorigin=”anonymous”></script>   Example 2) To skip late booking (after 6pm) for the Immersive experience type during the busy days (Friday to Sunday): <script> window.svr.hideTimes = new Object(); [‘hide_before’,’hide_after’].forEach(function(i){ window.svr.hideTimes[i] = new Object(); }); window.svr.hideTimes[“hide_after”][“*_5,6,7”] = “18:00″; </script> <script src=”//api.synthesisvr.com/widgetPlugins/skipTimeOptions.js” crossorigin=”anonymous”></script>   You need to append the final code to the “Add HTML before the BODY tag closure” option under the Booking Widget settings (the Edit button).  

Modules: Email Support

The “Email Support” modules unlocks multiple SynthesisVR capabilities: Sending automated emails upon widget events (customer registration, customer booking) New settings and pages: “Administration >> Advanced Settings >> Online & Email Settings >> SMTP Configuration” — configure your SMTP account “Administration >> Advanced Settings >> Online & Email Settings >> Email Templates” — you can completely change how the outgoing emails looks like. It is mandatory to edit the following templates and change the example “VR Territory” information with the one of your own location: header footer book Under the “Experience Type” settings, you are now able to link different “Booking Confirmation” templates to different attractions When on the “View Reservation” popup for an upcoming reservation that have a customer account associated with it, pay attention to the “Envelope” icon on top. It will let you manually send a “Booking Confirmation” email. You can also perform changes before sending. For assistance with any of the settings, please open us a ticket: info@synthesisvr.com

Widgets – WordPress Plugin

Getting started:You have to install the SynthesisVR WordPress Plugin in your WordPress instance. To do that: Download the SynthesisVR WordPress Plugin: https://svr.li/wp/plugin Login in your WordPress instance with administration privileges From the sidebar, navigate to Plugins >> Add New >> Upload Plugin >> select the previously downloaded ZIP file. The plugin is now installed and you have access to the SynthesisVR shortcodes. Booking shortcode: Create a new widget (full guide: https://synthesisvr.com/knowledge-base/booking-widget-setup/) On the widgets page, click the “Advanced” button and copy the public key Use the following shortcode: [synthesis type=”booking” public_key=”111111111-1111-1111-1111-111111111111″] Replace 111111111-1111-1111-1111-111111111111 with the actual public key Membership shortcode: Create membership plans with the “Digital Cards Only” option being turned ON Create a new Membership Widget and assign the desired Membership Plans Refresh the page and copy the new Public Key Use the following WordPress shortcode [synthesis type=”membership” public_key=”111111111-1111-1111-1111-111111111111″] Replace 111111111-1111-1111-1111-111111111111 with the actual public key Goods shortcode: Create new goods and make sure the “Available Only For Registered Customers” option is turned ON Create a new Goods Widget and assign the desired Goods Refresh the page and copy the new Public Key Use the following WordPress shortcode [synthesis type=”goods” public_key=”111111111-1111-1111-1111-111111111111″] Replace 111111111-1111-1111-1111-111111111111 with the actual public key Games shortcode: Follow this guide: https://synthesisvr.com/knowledge-base/add-games-info-to-your-website/ Use the following WordPress shortcode: [synthesis type=”game_categories” public_key=”111111111-1111-1111-1111-111111111111″ categories=”*” games_per_row=”3″ row-size=”100%”] Replace 111111111-1111-1111-1111-111111111111 with the actual API key generated at the first step

Games Not Launching

This is likely due to a new EULA requiring accepting. There are two ways to get past this.  Method 1: When a customer is in a session and a game doesn’t launch, go into the Access Point app, choose settings, and then check the “Disable Steam Lock” option. Have the customer navigate to the “Steam” bubble at the bottom of the menus and they should see the new EULA which they can accept. Once they accept. the game will launch. You should then uncheck the “Disable Steam Lock”.  Method 2: Open the Steam App. Click on the Steam Menu Button at the top left and choose exit (versus exiting with the X button in the top right): ​Launch Steam again and when it loads up, go to your Library and find the game in question. Launch the game through the Steam Library and you will be presented with the EULA that you can accept and the game will launch.

What Payment Processors Does SynthesisVR Support

Currently, Synthesis VR supports the following payment processors through the SynthesisVR interface: PayPal/PayPal IPN/PayPal Vault Stripe Square Omega WorldPay Paysera Pagseguro Monetico  Klarna Societe Generale PagSeguro BNP Paribus

Online Waivers

1. Create a new API rule (similarly to https://synthesisvr.com/knowledge-base/reading-leaderboard-through-api/) or edit an existing one and assign the following two permissions: Online Waiver Website Games 2. Get the key for the rule and construct an URL like this: Version 1: https://api.synthesisvr.com/waiver/<KEY> Version 2: https://api.synthesisvr.com/waiver/group/<KEY> Example: Version 1: https://api.synthesisvr.com/waiver/11111111-1111-1111-1111-111111111111 Version 2: https://api.synthesisvr.com/waiver/group/11111111-1111-1111-1111-111111111111 Version 2 OFFLINE: https://api.synthesisvr.com/waiver/offline/11111111-1111-1111-1111-111111111111 You can add custom waiver fields by going to “Administration” and click on your arcade name. Switch to the “Advanced” tab and click on “Additional Waiver Fields”.If you need deeper customization for the online waiver, you can open the URL constructed above and use the browser’s “View Source” option. Copy the source code onto your server/web site and use HTML and CSS to customize the waiver widget. The OFFLINE version is intended for use only inside your location. It allows the browser to load and process the waiver even when your device is completely offline. All signed forms will be stored inside the browser and will be synchronized to SynthesisVR within a minute of your device getting back online and the offline waiver page being reloaded.

Command Calls – Create/Execute Custom Scripts & Commands

Required version: 3.9.6 Overview: As LBVR progress through the years, we sees a good number of new VR related hardware coming to the market. Often, to ensure fast and flawless operation, the new hardware have to be integrated in Synthesis. As long as we are working toward native support for as much hardware as possible (KATVR + KAT I/O as an example), we feel there is so much more you could achieve if you have the right tools to unleash your creativity. This is what the “Command Calls” are purposed for. Working with hardware in LBVR normally comes down to 4 simple events: An extra 5th event is -> manual actionsWhat if you could write a simple code in ANY programming language and attach it to any of the 4+1 events? Idea 1) You can turn the Graphic Card color to RED when the station is occupied and back to GREEN when its free Idea 2) In a conversation with the studio behind an upcoming game title utilizing the “fear of height” (like Richie’s Plank Experience), we came up to the idea it will be great if they could send a simple UDP START message when a person is falling down and STOP when the person “reach the destination” 🙂 If the develop do this (which is pretty easy for them), we’ll develop a very tiny open source app that will let you catch the START/STOP states and convert that to turning the power on/off for one the PC USB ports. On that port, you could attach a USB powered fan and that will have a great impact to the customer immersion with a very tiny investment on your end. Idea 3) If you are running hydraulic racing simulators, you have to use SimTools. What if SimTools can be taken care of by a script or by a direct call to the SimTools executable? Idea 4) Start the Vive Wireless Adapter software along with the session and stop it once the session is over. The “Command Calls” event system makes it all possible. Setup Guide: Example: In our example, the content of the startcmd.bat file is: For test purposes, you can attach it to a session start. Then, the opposite endcmd.bat will be: As result, Notepad and the Windows Calculator will open upon start of the session and close along with the session end.

Strong Customer Authentication (SCA)

What Is SCA Strong Customer Authentication (SCA) is a mechanism to fight online fraud and, as of September 14th, 2019, is mandatory in the European Economic Area (EEA). By enabling SCA, Synthesis will pass additional information to the payment processor, which will pass that information to card issuer. The issuer may request additional information through a 3D Security process. Square https://developer.squareup.com/blog/what-you-need-to-know-about-strong-customer-authentication-sca/Setup steps: Login to your Square account: https://squareup.com/login?app=developer&return_to=https://developer.squareup.com/apps Go to your application details: Scroll down to “API Version” and click on the “Change Version” button. Select the latest version and save the change. Edit your SynthesisVR web widgets and change the “Template Version” to 6 or newer.  Important: any customer profiles created prior migrating to SCA may (or may not) require re-authentication – it is up to the card issuer. If an automated payment is failing, your customers have to access one of your booking widgets, progress to step 3 and “Edit” and save their CC information.  Stripe Details Coming Soon