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

# Using the Scanner

> The screen your staff use all day: scan a card, then add stamps, points, a discount, or a top-up.

The **Scanner** is where your staff serve customers at the counter, and it is the single most-used screen in VEXiON cards. You scan a customer's loyalty card, and then, depending on the card, add stamps, add points, apply a discount, top up a gift card, redeem a coupon, or check a member in.

Open it from **Scanner** in the sidebar. For till-only staff (the [Scanner role](https://vexioncards.mintlify.site/knowledge-base/team-and-roles.md)) they land here. The only other things they can open are **Settings → General** (scan mode, language) and their location under **Settings → Locations**.

![The idle Scanner screen: 'Waiting for the scan of a loyalty card', the search box to find a customer by name, email, or phone, and the New customer button.](https://mintcdn.com/vexioncards/jyoFo5IjMFdGfJql/images/scanner-idle.png?fit=max\&auto=format\&n=jyoFo5IjMFdGfJql\&q=85\&s=6e200327b6dce32bc0b69d83767a862e)

The scanner, waiting for a card

## Before you start: your location

Every scan is recorded with **who** made it and **where** (a **location**, your store or branch), so your reports are attributed to the right place, each staff member's activity adds up, and the till only offers the cards that belong there. How the active location is set depends on the person:

* **Scanner staff and anyone with a single location**: it is set **automatically** to their assigned location. They never have to think about it.
* **Admins or managers who work at more than one location**: the first time they scan on a device (or when the saved location is no longer valid), a **"Select your location"** screen appears. Pick where you are working, and the scan you just made replays automatically. The choice is remembered on that device.

![The Scanner location prompt: when you have more than one location, pick which store the scanner is operating at before you can scan cards.](https://mintcdn.com/vexioncards/jyoFo5IjMFdGfJql/images/scanner-location-prompt.png?fit=max\&auto=format\&n=jyoFo5IjMFdGfJql\&q=85\&s=53c9a8b17f4f579787ba302e2663ee19)

The location prompt for multi-location staff

> [!NOTE]
>
> You can change the active location at any time: on **desktop** use the location switcher at the top of the sidebar; on **phone** use the **More** menu in the bottom bar. The current one is shown at the top of the sidebar on desktop (labelled **Scanner location** when you are on the scanner) and under **More** on a phone. Scanner staff and single-location users see it as a read-only label.

> [!TIP]
>
> Who can work at which location is set when you **invite a team member**: managers to the locations you assign them, scanner staff to their one location. See the Team and roles guide for that. Getting this right up front means every transaction lands in the right place automatically.

### When the card belongs to a different location

**For Admins and Managers**, if the card you scan is not enabled at your active location, VEXiON checks the other locations you have access to before refusing anything:

* **Enabled at exactly one other location you can access**: the transaction books to that location automatically, and a toast confirms **"Booked to \[location]"**. Your active location does not change, only this one transaction is affected.
* **Enabled at several of your locations**: a dialog asks **"Which location is this for?"**, explaining "This card is enabled at more than one of your locations. Choose which one this transaction is for." Pick one, your choice applies only to this transaction, and your active location stays the same for the next scan.
* **Enabled only at a location you do not have access to** (managers only): the scan is refused with **"This card is not enabled at your location."** Admins have access to every location, so this refusal does not apply to them.
* **Not enabled at any location at all**: this is not an error, the transaction simply books to your active location as normal.

![A green confirmation toast reading '+1 stamp added (Booked to Brew Haven Bratislava)' with an Undo button, shown after scanning a card that is enabled at exactly one other location.](https://mintcdn.com/vexioncards/qZBWSjUaj_S7xvX_/images/scanner-booked-to-toast.png?fit=max\&auto=format\&n=qZBWSjUaj_S7xvX_\&q=85\&s=663d08525c573e86ffdef2b627911dc0)

The confirmation toast when a card auto-books to another location

![A dialog titled 'Which location is this for?' explaining that this card is enabled at more than one location, with two buttons to choose from: Brew Haven Eurovea and Brew Haven Bratislava.](https://mintcdn.com/vexioncards/qZBWSjUaj_S7xvX_/images/scanner-location-ambiguity.png?fit=max\&auto=format\&n=qZBWSjUaj_S7xvX_\&q=85\&s=c275f61c8147b9185af55d9a8676b11c)

The location picker when a card is enabled at more than one of your locations

**Scanners** never see the auto-booking or the picker above, they only ever work at their one assigned location. If a customer's card is not enabled there, the scan is refused with **"This location does not use this customer's card."** And if a Scanner has no location assigned at all (for example, right after being removed from a location's team), they see **"You are not assigned to any location. Contact your admin."**

> [!TIP]
>
> This only comes up for cards with per-location toggles set up, see [which cards run at each location](https://vexioncards.mintlify.site/knowledge-base/locations.md#cards-using-this-location). If every card is enabled everywhere, you will never see anything but the normal flow.

## The screen adapts to your device

The scanner reshapes itself for the screen it runs on, so it works on a shop iPad, a phone, or a back-office desktop:

> [card] Desktop & large tablet
>
> A **two-column** layout: the customer's details and card preview on the left, the actions on the right. The sidebar stays visible.

> [card] Tablet (portrait)
>
> A single **stacked** column: customer details on top, actions below, scrolling if needed.

> [card] Phone
>
> A single stacked column with a **bottom navigation bar** instead of the sidebar. The tabs depend on the role. Scanner staff see **Scanner** and **More**.

## Two ways to scan

There are two scan modes. Which is the default depends on the device, and you can switch between them in **Settings → General → Scanner Mode** (Device Camera or Bluetooth Scanner). The choice is saved per device.

### Hardware / Bluetooth scanner

The default on **desktops and tablets**. A USB or Bluetooth barcode/QR scanner behaves like a keyboard: when it reads a code it "types" the characters and presses Enter. The scanner screen **listens for that in the background**, so you do not need to click into any field, just point the scanner at the customer's QR code and it opens their card instantly.

> [!NOTE]
>
> Because it listens globally, a hardware scan works from anywhere on the scanner screen. It ignores scans while you are typing in a box (for example the search field) or entering an amount on the keypad, so your typing is never mistaken for a scan. Finish or clear the amount first.

> [!TIP]
>
> The scanner and the computer do not need the same keyboard language. A scanner set to Slovak on an English Windows (or the other way round) still opens the right customer. Only when a code cannot be read at all do you see **"The scanner sent a code that cannot be read. Set the scanner and this computer to the same keyboard language."** Then set both to the same language: in Windows, keep one keyboard language in the language bar, or scan the "keyboard country" barcode from your scanner's manual.

### Camera

The default on **phones**. Tap **Scan QR Code** to open the full-screen camera and point it at the customer's QR code. It uses the device's rear camera, and works on both Android/Chrome (fast built-in detection) and iPhone/Safari. iPads have good rear cameras and can switch to camera mode too.

> [!NOTE]
>
> The customer's QR code is the one on their **wallet pass** (Apple Wallet or Google Wallet), or a **printed card** if you issued one. If you set a [custom card number](https://vexioncards.mintlify.site/knowledge-base/adding-a-customer.md) when creating the customer, scanning that number opens the same card.

## Finding someone without scanning

If a customer cannot show their code (they forgot their phone, or the QR will not scan), use the **search box** (or press <kbd>Cmd/Ctrl</kbd> + <kbd>K</kbd>). Search by **name, email, or phone**, then pick them from the results to open their card, exactly as if you had scanned it.

**New customer** offers only the cards used at this location.

The search finds **every customer whose card is used at this location**, wherever they signed up or shopped before. If one card runs at all your stores, its customers can be found at all of them. Customers of a card that is switched off at this location do not appear here (see [which cards run at each location](https://vexioncards.mintlify.site/knowledge-base/locations.md#cards-using-this-location)). If a scanned code belongs to nobody, you see **"Customer not found. Please ask them to register."**

## Enrolling a customer on the spot

Tap **New customer** (top right) to enrol someone and send them a card without leaving the till. See [Adding a Customer](https://vexioncards.mintlify.site/knowledge-base/adding-a-customer.md) for that flow.

## When a card is scanned

The customer's card opens in the customer view. It has two parts:

* **Customer details**: their name and email, a **customer #ID** with a copy button on desktop (staff can paste this onto a POS receipt to match a loyalty scan to a sale), and their key stats for this card. The name lights up on the customer's **name day**, and their date of birth on their **birthday**, so staff can wish them well.
* **Actions**: the controls for that card type (add stamps, add points, apply a discount, and so on).

Press **Back to scanner** (or, on a phone, tap the **Scanner** tab again) to clear the screen for the next customer.

### What you see on phone vs desktop

The customer's stats are the same underneath, but how many are shown depends on the screen:

* **Desktop / large tablet**: the full picture, a **card preview** plus every stat listed as rows (for example last visit, progress to the reward, and member since).
* **Phone / tablet portrait**: space is tighter, so you get a **coloured tile** with the one number that matters most (stamps, points, or balance) plus the **two** most useful stats. On very short screens only the tile is shown. The card preview and a couple of secondary stats (such as member since) are only shown on the wider screens.

Each card type's page below lists exactly which stats it shows.

### Reversing a transaction

After most actions a confirmation appears with an **Undo** button, so if you tap the wrong thing you can reverse it on the spot. This covers adding or removing stamps, adding, subtracting, or redeeming points, applying a discount, and recording a membership entry.

> [!WARNING]
>
> A few actions are **final and cannot be undone**: topping up or deducting a **gift card**, redeeming a **coupon**, and **activating** a membership. The screen makes these clear before you confirm.

> [!NOTE]
>
> Every transaction also updates the customer's pass and usually sends them a push notification. See [the customer's wallet pass](https://vexioncards.mintlify.site/knowledge-base/wallet-pass.md) for what they receive.

## Large amounts

When you enter a big amount, the scanner asks **Large amount**: "You are about to book 1,250.00 €. Is this correct?" Tap **Yes, book it** to continue. The question appears above about 1,000 EUR worth, in your currency:

| Currency | Question appears above |
| - | - |
| EUR | 1,000 |
| CZK | 25,000 |
| HUF | 400,000 |
| PLN | 4,500 |
| RON | 5,000 |
| GBP | 900 |
| CHF | 1,000 |
| USD | 1,100 |

![Scanner with the Large amount dialog asking to confirm a 1,500 EUR bill, with Cancel and Yes, book it.](https://mintcdn.com/vexioncards/qjEUYS7WBY21lQhU/images/scanner-large-amount-confirm.png?fit=max\&auto=format\&n=qjEUYS7WBY21lQhU\&q=85\&s=d835130fac7246a75e08ec1ab34f2b24)

Confirm question for a large bill

> [!NOTE]
>
> A single purchase above about 10,000 EUR worth (250,000 CZK, 4,000,000 HUF) is refused. You can set a lower limit in [Settings, General](https://vexioncards.mintlify.site/knowledge-base/general-settings.md#maximum-transaction-amount).

## Actions by card type

What appears in the actions area depends on the card the customer holds. There is a page for each card type and variant, matching the [Card Types](https://vexioncards.mintlify.site/knowledge-base/card-types.md) list:

> [card] [Stamp cards](https://vexioncards.mintlify.site/knowledge-base/scanner-stamp.md)
>
> Add stamps and redeem the reward. [Stamp cards paid in advance](https://vexioncards.mintlify.site/knowledge-base/scanner-prepaid-stamp.md) deduct and recharge instead.

> [card] [Reward & cashback cards](https://vexioncards.mintlify.site/knowledge-base/scanner-cashback.md)
>
> Earn points from purchases, then redeem for [cashback](https://vexioncards.mintlify.site/knowledge-base/scanner-cashback.md), [products](https://vexioncards.mintlify.site/knowledge-base/scanner-reward.md), or with cashback [levels](https://vexioncards.mintlify.site/knowledge-base/scanner-cashback.md).

> [card] [Discount cards](https://vexioncards.mintlify.site/knowledge-base/scanner-discount.md)
>
> Apply the customer's discount to a purchase. [Employee cards](https://vexioncards.mintlify.site/knowledge-base/scanner-employee-discount.md) use a monthly limit.

> [card] [Gift cards](https://vexioncards.mintlify.site/knowledge-base/scanner-gift.md)
>
> Top up a balance or deduct a payment.

> [card] [Coupon cards](https://vexioncards.mintlify.site/knowledge-base/scanner-coupon.md)
>
> Redeem the coupon.

> [card] [Membership cards](https://vexioncards.mintlify.site/knowledge-base/scanner-membership.md)
>
> Activate a membership or check a member in.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.