# Create and configure a Virtual Front Desk in Salto IDM
> Learn how to create, configure, and test a Virtual Front Desk in Salto IDM for visitor and contractor self-registration.


## How to create and configure a Virtual Front Desk {#how-to-create-and-configure-a-virtual-front-desk}

A Virtual Front Desk (VFD) is a self-service kiosk for visitor and contractor registration in Salto IDM.
Visitors use the public VFD page to register themselves and, depending on your configuration, receive a mobile key or door access after check-in.
You manage the VFD from the admin portal, and each VFD has its own public URL.

Use this guide to create a VFD, configure its settings, and test the resulting visitor experience.

## Step 1: Create a Virtual Front Desk {#create-a-virtual-front-desk}

1. In the left navigation, under **Admin**, go to **Configuration** > **Virtual Front Desks**.
2. Select **Create Virtual Front Desk** in the top right.
3. Under **General information**, enter a **Name**.
4. Select **Save**.

The page shows "The virtual front desk has been successfully created", and the new VFD appears in the overview.

![Create a Virtual Front Desk with the required Name field](images/vfd-create-name.png)
{.zoomable-image}

![Manage virtual front desk overview with the newly created VFD](images/vfd-manage-overview.png)
{.zoomable-image}

## Step 2: Configure the Virtual Front Desk {#configure-the-virtual-front-desk}

Select the edit icon under **Actions** to open the VFD.
The editor has six tabs: **General**, **Environments**, **Customization**, **Default hosts**, **Assign Key**, and **Door Opening**.

### General {#general}

Configure the core VFD settings, split across three columns:

- **General information**—includes **Name**, **Location**, **Screen inactivity timeout (seconds)**, and **Completion screen delay (seconds)**, followed by **Registration Settings** such as **Require Host Confirmation Before Check-in**.
- **Passport/ID Settings**—**Enable Passport/ID Registration**, enforced separately for **Visitors** and **Contractors**, an option to manually enter the Document ID, **Passport scanner URL**, and **Reading mode** (for example **MRZ and Chip**).
  - Select **Instruction guides** for setup help.
- **Virtual Front Desk settings**—toggles that control what the VFD shows, including **Enable maintenance mode**, **Enable check-in**, **Enable check-out**, **Enable Self-Registration**, **Enable XS4 Face registration**, **Show Security Instructions**, **Show NDA Page**, **Show Room Selection**, **Enabled for Visitors**, **Enabled for Contractors**, and a working schedule.

{{% info-panel %}}
**Enabled for Visitors** and **Enabled for Contractors** control which visitor types can register.
When both are enabled, visitors see a type selection screen before registration.
{{% /info-panel %}}

![Virtual Front Desk General tab with registration and passport settings](images/vfd-general-tab.png)
{.zoomable-image}

### Environments {#environments}

Link the VFD to the environment or environments where it should be available.

### Customization {#customization}

Configure the visitor-facing screens for each language.

1. Select a language in the **Language** panel, for example **English**, **Nederlands**, **Deutsch**, **Français**, **Svenska**, or **Suomi**.
   Use the **Default** marking to set which language shows by default.
2. Configure each sub-tab for that language:
   - **General**—expandable sections for the **Welcome Page**, **Check in and Check out**, **Host Selection**, **Verification**, **Rooms**, **Passport**, and **Privacy** screens.
   - **Intro Page**—upload an **Intro Banner** image or video for the VFD home screen using **Choose File**, and preview it before saving.
     - Recommended format: maximum 32 MB, 1080×1920 (portrait), H.264 MP4.
     - Select **Restore to default** to reset it.
   - **Instructions**—safety and house rule instructions.
   - **Security Questions**—optional screening questions.
   - **Non-disclosure agreement**—the NDA text.

Repeat these steps for every language you want to offer.

![Customization tab with the language panel and expandable screen sections](images/vfd-customisation-general.png)
{.zoomable-image}

![Customization Intro Page tab with a banner file and live preview](images/vfd-customisation-intro-page.png)
{.zoomable-image}

### Default hosts {#default-hosts}

- **Default hosts**—add hosts visitors can select using **Add default host**.
  - Each entry shows **Name**, **Displayed Name**, **Environment**, and available actions.
- **Settings**—control host search behavior with **Add guests to room bookings**, **Enable Host Search**, and **Enable require exact match**.
  - Choose which fields (**Name**, **Phone Number**, **Email**) are used for exact matching.

![Default hosts tab with the host list and search settings](images/vfd-default-hosts.png)
{.zoomable-image}

### Assign Key {#assign-key}

- **Key Card > Encoder**—select the encoder that issues the card, for example **IDM Demo | Primary**.
- **Settings**—includes **Assign Mobile Key** and **Key Enrolment Mandatory**.

{{% info-panel %}}
To enable **Key Enrolment Mandatory**, first enable **Assign Mobile Key** or select a **Key Card** encoder.
{{% /info-panel %}}

![Assign Key tab with the encoder selection and key settings](images/vfd-assign-key.png)
{.zoomable-image}

### Door Opening {#door-opening}

Choose how the door works under **Door options**.
By default this is set to **Do not open any doors**.
Select **Show a button to open door**, then choose the correct door under **Door to open**.

![Door Opening tab with the door options](images/vfd-door-opening.png)
{.zoomable-image}

## Step 3: Save and open the Virtual Front Desk {#save-and-open-the-virtual-front-desk}

1. Select **Save** to store the configuration.
2. Select **Open Virtual Front Desk** to open the public VFD page (`.../Public/<ID>/`) in a new tab and test it.

## What visitors see {#what-visitors-see}

This is the full flow a new visitor sees on the public VFD page.
Which screens appear, and in what order, depends on your **General** and **Customization** settings.

### Welcome screen {#welcome-screen}

The VFD opens with a welcome banner and introduction text.
Visitors can select **Change Language** to switch languages, then select **Continue**.

![Welcome screen with language selection and Continue](images/vfd-visitor-welcome-screen.png)
{.zoomable-image}

### QR code or register {#qr-code-or-register}

- **Received a QR-code?**—returning or pre-invited visitors scan their QR code using the webcam, or select **Enter your Pincode** if scanning fails.
- **Register**—new visitors start self-registration here.

{{% info-panel %}}
Scanning a QR code requires camera access.
The browser prompts for permission, and the visitor or kiosk must select **Allow**.
{{% /info-panel %}}

![Intro screen with QR-code scan and Register options](images/vfd-visitor-intro-screen.png)
{.zoomable-image}

### Visitor type {#visitor-type}

If both **Enabled for Visitors** and **Enabled for Contractors** are on, visitors choose **Visitor** (**Sign in as a visitor**) or **Contractor** (**Sign in as a contractor**) before continuing.

![Visitor type selection with Visitor and Contractor options](images/vfd-visitor-type-selection.png)
{.zoomable-image}

### Security instructions {#security-instructions}

If **Show Security Instructions** is enabled, the VFD shows the house rules, for example restrictions on smoking, alcohol, drugs, and photography.
Visitors select **Continue** to accept or **Reject** to decline.

![Security instructions screen with Reject and Continue options](images/vfd-visitor-security-instructions.png)
{.zoomable-image}

### Host selection {#host-selection}

On the registration screen, visitors search for their host:

1. Enter part of the host's name in **Enter the name from the host**.
2. Select **Select** next to the correct result.
   If none match, **No results found, try adjusting your search** appears.

![Host selection screen with search results](images/vfd-visitor-host-selection.png)
{.zoomable-image}

### Registration details {#registration-details}

Visitors fill in the registration form:

- **First name**, **Last name**, and **Email address** (required)
- **Phone Number**, with a country code
- **Company** and **License Plate**
- A required privacy consent checkbox

Selecting **Save** submits the form.

![Registration form with visitor details and the privacy consent checkbox](images/vfd-visitor-registration-form.png)
{.zoomable-image}

### Choose an access method {#choose-an-access-method}

After registration, visitors choose how they get access:

- **I don't need an identifier**—continue without an access credential.
- **Activate identifier**—assign a physical card through the encoder.
- **Assign Mobile Key**—send a mobile key to the visitor's device.

{{% info-panel %}}
Activating an identifier can prompt the browser for permission to access other apps and services on the device, needed for the encoder.
Select **Allow** to continue.
If activation fails, the VFD shows **To try again.**
{{% /info-panel %}}

![Access method selection with identifier and mobile key options](images/vfd-visitor-identifier-choice.png)
{.zoomable-image}

### Finish and print a name tag {#finish-and-print-a-name-tag}

Visitors select **Continue**, or optionally select **Print name tag** to print a name label.

![Continue and Print name tag options](images/vfd-visitor-continue-nametag.png)
{.zoomable-image}

### Door opening {#the-door-opens}

If **Door Opening** is set to **Show a button to open door**, the VFD shows **Tap here to open the door**.
After the visitor taps it, the VFD shows **The door is open**, and the configured door unlocks.

![The door is open confirmation screen](images/vfd-visitor-door-open.png)
{.zoomable-image}

### Registration complete {#registration-complete}

The VFD shows a confirmation message:

**Your registration is complete.**
**Thank you for visiting.**

Selecting **Back to homescreen** returns to the welcome screen, ready for the next visitor.

![Registration complete screen with Back to homescreen](images/vfd-visitor-flow-complete.png)
{.zoomable-image}

## Common error messages {#common-error-messages}

| Message | What to do |
| :--- | :--- |
| "No results found, try adjusting your search" | The host isn't in the system, or the name doesn't match. Check the spelling, add the host under **Default hosts**, or review **Enable require exact match** in **Default hosts > Settings**. |
| "One Moment Please" (stays on this screen) | The connection to the back end is still processing. Wait a moment. If it persists, refresh the public page and try again. |
| "To try again." | Shown after selecting **Activate identifier** when the encoder didn't respond. Check that an encoder is selected under **Assign Key** and confirm the browser allowed access to other apps and services. |
| Browser prompt to use the camera | Required for QR scanning. Select **Allow while visiting the site** or **Allow this time**. |
| Browser prompt to access other apps and services | Required for encoder communication when activating an identifier. Select **Allow**. |
| QR code doesn't work | Use **Enter your Pincode**, or register again using **Register**. |
| Wrong language on the kiosk | Configure the required languages under **Customization > Language** and fill in the text for each one. |

