> ## Documentation Index
> Fetch the complete documentation index at: https://docs.flexoworks.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Set up a new floor terminal

> Pair a production device with your organization and give workers secure four-digit PIN access.

A floor terminal is a dedicated browser paired with your Flexoworks
organization. The device keeps its own terminal connection, while each worker
uses a personal four-digit PIN. Pairing does not create a shared employee
account, and it does not change anyone's email, Google, or password login.

<Note>
  A team member with the **Org admin** role must approve a new terminal.
  Pairing starts on the physical production device, not in
  Organization settings.
</Note>

## Before you start

Prepare the following:

* A production device with internet access and a persistent browser profile.
* An administrator's phone with a camera.
* An active Flexoworks account with the **Org admin** role.
* At least one location in **Organization → Locations & equipment**.
* Equipment at that location if workers need to complete production lines.
  The default equipment selection itself is optional.

Use a dedicated browser profile that keeps cookies and site data. Avoid private
or incognito mode, kiosk settings that clear data on exit, and browser cleanup
tools. Restarting the browser or device does not normally disconnect the
terminal, but clearing site data does.

## 1. Open the floor app on the production device

In the full Flexoworks application, open **Organization → Floor terminals**.
The setup card contains the floor app address. Select **Copy address**, then
open that exact address on the production device.

<Frame caption="Organization administrators can copy the floor app address from the Floor terminals tab.">
  <img src="https://mintcdn.com/flexoworks/pXK9IAjYBe1kaAVA/images/floor-terminal-setup/admin-floor-address.png?fit=max&auto=format&n=pXK9IAjYBe1kaAVA&q=85&s=fc0d55c44bdd8e53460592e4b32e4656" alt="Floor terminals settings showing the floor app address and Copy address button" width="1440" height="900" data-path="images/floor-terminal-setup/admin-floor-address.png" />
</Frame>

The first unpaired screen offers English and Ukrainian. Choose the language
before generating the pairing code. Flexoworks stores this choice for the
terminal browser.

<Frame caption="Choose the terminal language before starting pairing.">
  <img src="https://mintcdn.com/flexoworks/pXK9IAjYBe1kaAVA/images/floor-terminal-setup/unpaired-language.png?fit=max&auto=format&n=pXK9IAjYBe1kaAVA&q=85&s=0b9638d5bc7c1ab21528122c18a12db8" alt="Unpaired floor terminal setup screen with English and Ukrainian language options" width="1440" height="900" data-path="images/floor-terminal-setup/unpaired-language.png" />
</Frame>

<Warning>
  The language selector appears only on the initial unpaired screen. It is not
  shown after a pairing code is generated or while workers use the terminal.
</Warning>

## 2. Generate the one-time pairing code

Select **Generate pairing code**. The terminal shows:

* A one-time QR code for the administrator's phone.
* A six-digit comparison code.
* A waiting indicator while the terminal checks for approval.

<Frame caption="The terminal displays a QR code and a separate six-digit comparison code.">
  <img src="https://mintcdn.com/flexoworks/pXK9IAjYBe1kaAVA/images/floor-terminal-setup/pairing-qr.png?fit=max&auto=format&n=pXK9IAjYBe1kaAVA&q=85&s=3de476429052794c87b0576c1af04bbc" alt="Floor terminal pairing screen with a QR code, six-digit comparison code, and waiting status" width="1440" height="900" data-path="images/floor-terminal-setup/pairing-qr.png" />
</Frame>

The pairing code expires after **10 minutes**. If it expires, select
**Generate new code** and scan the new QR code.

## 3. Scan and confirm on the administrator's phone

Open the phone's camera and scan the QR code. If the administrator is not
already signed in, Flexoworks opens the normal login screen and returns to the
approval page after login.

Only a user with the **Org admin** role can approve the request. On the approval
page, enter the six-digit code exactly as it appears on the production device.
This comparison prevents a different terminal from being approved by mistake.

<Frame caption="Enter the six-digit code shown on the physical terminal.">
  <img src="https://mintcdn.com/flexoworks/pXK9IAjYBe1kaAVA/images/floor-terminal-setup/approval-form.png?fit=max&auto=format&n=pXK9IAjYBe1kaAVA&q=85&s=37ed59ab5c4c0328484baaf5a864a7d1" alt="Administrator phone showing the floor terminal approval form and comparison-code field" width="430" height="932" data-path="images/floor-terminal-setup/approval-form.png" />
</Frame>

Next, configure the terminal:

1. Enter a short, recognizable terminal name, such as **CDI station 1**.
   Names can contain up to 80 characters and must be unique among terminals
   that have not been revoked.
2. Choose the location where the device will be used.
3. Optionally choose default equipment at that location.

The current work area is **CDI imaging**. It cannot be changed. Default
equipment is preselected for the operator, but the operator can still choose
any equipment configured at the terminal's location.

<Frame caption="Choose the terminal location and optional default equipment.">
  <img src="https://mintcdn.com/flexoworks/pXK9IAjYBe1kaAVA/images/floor-terminal-setup/approval-location-equipment.png?fit=max&auto=format&n=pXK9IAjYBe1kaAVA&q=85&s=0becce1a01a530862de54793529103f1" alt="Floor terminal approval form with terminal name, location, and default equipment selections" width="430" height="932" data-path="images/floor-terminal-setup/approval-location-equipment.png" />
</Frame>

Select **Approve and pair terminal**.

## 4. Let the terminal activate

Keep the floor page open and online. The terminal checks for approval
automatically and activates without a camera or a full employee login on the
production device.

<Frame caption="The administrator can close the phone page after approval.">
  <img src="https://mintcdn.com/flexoworks/pXK9IAjYBe1kaAVA/images/floor-terminal-setup/approval-complete.png?fit=max&auto=format&n=pXK9IAjYBe1kaAVA&q=85&s=97409bb6b31f63de2f64a1dc7dc4474b" alt="Administrator approval page confirming that the floor terminal was approved" width="430" height="932" data-path="images/floor-terminal-setup/approval-complete.png" />
</Frame>

After approval, the device has another **10 minutes** to complete activation.
When activation succeeds, the terminal opens its PIN screen.

<Frame caption="A paired terminal is ready for a worker's personal PIN.">
  <img src="https://mintcdn.com/flexoworks/pXK9IAjYBe1kaAVA/images/floor-terminal-setup/paired-pin-screen.png?fit=max&auto=format&n=pXK9IAjYBe1kaAVA&q=85&s=65bf4d49c8d71f8c3935a95a7deeb213" alt="Paired CDI floor terminal showing its name, location, and four-digit PIN keypad" width="1440" height="900" data-path="images/floor-terminal-setup/paired-pin-screen.png" />
</Frame>

The terminal remains paired through browser restarts, device restarts,
short-session renewal, and ordinary network outages. It needs to be paired
again only after an administrator revokes it, the browser profile or site data
is removed, the device is reimaged, or the Flexoworks app address changes.

## 5. Enable a worker's PIN

PIN access belongs to a person, not to one terminal. Any active team member
with floor access enabled can unlock any paired terminal in the same
organization.

Open **Organization → Users**. The **Floor access** column shows whether each
team member's access is enabled.

<Frame caption="The Users tab shows floor-access status for every team member.">
  <img src="https://mintcdn.com/flexoworks/pXK9IAjYBe1kaAVA/images/floor-terminal-setup/users-floor-access.png?fit=max&auto=format&n=pXK9IAjYBe1kaAVA&q=85&s=a38c1e84ae911d1069e064995919f047" alt="Organization Users table with a Floor access status column" width="1440" height="900" data-path="images/floor-terminal-setup/users-floor-access.png" />
</Frame>

Open the team member's action menu and select **Manage floor access**.

<Frame caption="Manage floor access is available from the user's action menu.">
  <img src="https://mintcdn.com/flexoworks/pXK9IAjYBe1kaAVA/images/floor-terminal-setup/manage-floor-access-menu.png?fit=max&auto=format&n=pXK9IAjYBe1kaAVA&q=85&s=c88f6480c117f0fe5fffd082ac5763a0" alt="User action menu with Manage floor access selected" width="1440" height="900" data-path="images/floor-terminal-setup/manage-floor-access-menu.png" />
</Frame>

Enter and confirm a personal four-digit PIN, then select **Enable floor
access**.

<Frame caption="Set and confirm a unique four-digit PIN for the worker.">
  <img src="https://mintcdn.com/flexoworks/pXK9IAjYBe1kaAVA/images/floor-terminal-setup/floor-pin-setup.png?fit=max&auto=format&n=pXK9IAjYBe1kaAVA&q=85&s=850de9f437754057e83391072e02b1b7" alt="Floor access dialog with PIN and confirmation fields" width="1440" height="900" data-path="images/floor-terminal-setup/floor-pin-setup.png" />
</Frame>

<Warning>
  A PIN must contain exactly four digits and must be unique within the
  organization. Flexoworks never displays an existing PIN. If it is forgotten,
  an administrator resets it. Do not share one person's PIN with another
  worker because floor actions are attributed to the person who entered it.
</Warning>

The worker can now enter the PIN on the paired terminal. Their normal
Flexoworks sign-in by email, Google, password, or email code is unchanged.

## Troubleshoot pairing

### The QR code expired

Return to the production device and select **Generate new code**. Scan and
approve the replacement within 10 minutes.

### The comparison code does not match

Read the six digits directly from the physical device. After repeated failed
comparisons, generate a fresh pairing instead of continuing to guess.

### The administrator approved the request, but the device did not activate

Reconnect the device and leave the floor page open. If the 10-minute activation
window has passed, open **Organization → Floor terminals**, revoke the
**Pending activation** entry, and start again with a new QR code.

### The terminal returned to the unpaired screen

Check whether the browser uses a private profile, clears data on exit, or
opened a different Flexoworks hostname. Use the exact floor address shown in
Organization settings and pair the persistent browser profile again.

## Next steps

* Read the [floor terminal overview](/guides/floor-terminal-overview) to learn
  what workers can do on the CDI floor screen.
* Read [Manage floor terminals and employee PIN access](/guides/floor-terminal-management)
  for monitoring, editing, suspension, revocation, and PIN recovery.
