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

# Pickup screen names

> Keep offensive names off the public pickup screen without ever stopping an order.

The name a customer types at the kiosk shows up on the pickup screen, the display in the restaurant where orders are called for pickup. One insult, political message or competitor's name is enough for it to sit in front of everyone in the store, and a photo of that screen on social media costs more than any order.

With **Pickup screen names** you decide which names are accepted in each country: the format, a list of blocked terms and what happens when someone insists. The kiosk checks the name before payment and the back office checks it again when the order arrives.

> [!NOTE]
>
> **The minimum you need to know**
>
> * Rules and the list are **per country**: those of the country chosen in the selector at the top right.
> * With no saved rules, or with **Filter on** turned off, the kiosk accepts any name, as before.
> * An order is never blocked: after the configured attempts, the kiosk uses a generic name such as **PEDIDO 83K** and moves on to payment.

## Before you start

* Access to the Fire back office with the **Channel - Kiosks** channel and permission for **Settings → Pickup screen names**.
* The right country in the selector at the top right. Everything you save applies to that country.

## The simple path

1. In **Channel - Kiosks**, open **Settings → Pickup screen names**.
2. Turn on **Filter on** and click **Save rules**. The default values work for most cases: 2 to 12 characters, first name only, 3 attempts and **PEDIDO \{code}** as the generic name.
3. In **Blocked terms**, click **Import list**, paste the terms (one per line) and click **Import**.
4. Type a name from the list in **Test a name** and click **Test** to confirm it is rejected.

![Pickup screen names page with the filter on, the rules, the tester and How it works](https://mintcdn.com/firepos/YzbvK9R_IBrrGFD5/images/manuals/kiosk/name-filter/01-overview.png?fit=max\&auto=format\&n=YzbvK9R_IBrrGFD5\&q=85\&s=d46c34285b533317a9141a1da97f4a89)

> [!TIP]
>
> If all you need is to block a list of words with the default rules, you're done. There is no need to update the kiosks: the list lives in the back office.

## Name rules

![Rules card with the name format, the attempts and the generic name preview](https://mintcdn.com/firepos/YzbvK9R_IBrrGFD5/images/manuals/kiosk/name-filter/02-rules.png?fit=max\&auto=format\&n=YzbvK9R_IBrrGFD5\&q=85\&s=2e1ee4668c573b2aba8a1f18fc2593f9)

* **Filter on**: turns the whole filter of the country on or off. When it is off, the kiosk accepts any name.
* **Name format**
  * **Allowed length**: minimum and maximum characters, spaces included. The kiosk does not let customers type past the maximum.
  * **First name only**: the kiosk does not accept more than one word. If an order arrives with two, the pickup screen shows only the first.
  * Only letters are ever accepted, including accents and ç. Numbers, symbols and emojis cannot be typed.
* **When a name is rejected**
  * **Attempts**: how many rejected names the kiosk accepts in one order before using the generic name (from 1 to 10).
  * **Generic name**: what is shown instead of the name. It must include `{code}`, which is replaced by the short order code: **PEDIDO \{code}** shows as **PEDIDO 83K**. Up to 30 characters. The preview below shows how it looks on the pickup screen.

Click **Save rules** to apply the changes, or **Discard** to go back to what is saved.

> [!NOTE]
>
> Rules reach the kiosks in about 5 minutes: each kiosk keeps them for a while so it doesn't look them up on every order. Terms apply within 1 minute, because they are checked every time the customer accepts a name.

## Blocked terms

![Blocked terms list with category filters, match and status](https://mintcdn.com/firepos/YzbvK9R_IBrrGFD5/images/manuals/kiosk/name-filter/03-terms.png?fit=max\&auto=format\&n=YzbvK9R_IBrrGFD5\&q=85\&s=46e290fba5da060c82691709924a5f4f)

Before comparing, the name is normalized: no accents or capitals, spaced-out letters joined back, leetspeak translated (0→O, 1→I or L, 3→E, 4→A, 5→S, 7→T, @→A, \$→S, !→I), repeated letters reduced to one and K read as C. That is why "Idiota", "I d i o t a", "1d10t4" and "Idiotaaa" are compared the same way.

To add a term, type it, choose the **Category** and the **Match**, and click **Add**.

* **Category**: Political figure, Political party, Profanity or insult, Competitor or Other. It helps you organize and filter the list; they all block the same way.
* **Match**
  * **Exact**: the name, or one of its words, is the term. From 4 letters it also finds it glued to another word: "Burro" blocks "BurroTonto", but not "Burrito".
  * **Contains**: the term appears anywhere in the name.
  * **Automatic** (only when adding): up to 5 letters, exact; from 6, contains.

On each row you can change the category and the match, turn the term off with **Active** without deleting it, or delete it with the trash icon. The category buttons and the search filter the list.

### Import a list

![Import terms dialog with three pasted terms](https://mintcdn.com/firepos/YzbvK9R_IBrrGFD5/images/manuals/kiosk/name-filter/04-import.png?fit=max\&auto=format\&n=YzbvK9R_IBrrGFD5\&q=85\&s=acafe6f41a63b56a9fc932e0784be1f7)

Paste one term per line, or separate them with commas, semicolons or tabs. If you copy from a spreadsheet, the first column is taken. The category and match you choose apply to every term in that import. Duplicates are skipped.

## Test a name

![Tester with a rejected name and the generic name the pickup screen would show](https://mintcdn.com/firepos/YzbvK9R_IBrrGFD5/images/manuals/kiosk/name-filter/05-tester.png?fit=max\&auto=format\&n=YzbvK9R_IBrrGFD5\&q=85\&s=9437fb54a87e4b923912fe8ff36bcb17)

Type any name and click **Test**. The result shows:

* **Kiosk**: whether it accepts or rejects it, the reason and which term matched.
* **Pickup screen (sample order 83K)**: what the screen would show if that name arrived with an order: unchanged, trimmed or replaced by the generic name.
* **Compared forms**: the name already normalized, as it is compared against the list.

The tester uses the saved rules and list, not unsaved changes, and saves nothing. If the filter is off, it warns you and tests anyway.

## What the customer sees at the kiosk

![Kiosk name screen in Portuguese with the first-name-only hint](https://mintcdn.com/firepos/YzbvK9R_IBrrGFD5/images/manuals/kiosk/name-filter/06-kiosk-name.png?fit=max\&auto=format\&n=YzbvK9R_IBrrGFD5\&q=85\&s=b300a947e5005f2aab743cf1ff10d3c4)

While typing, the kiosk does not let the customer enter numbers, symbols or emojis, or go past the maximum length, and shows **First name only, no numbers or symbols** (or **Letters only, no numbers or symbols** if two words are allowed). With **First name only** on, if the customer types two words the kiosk asks them to **Type your first name only** and does not let them accept.

![Kiosk in Portuguese with a rejected name and the attempts left](https://mintcdn.com/firepos/YzbvK9R_IBrrGFD5/images/manuals/kiosk/name-filter/07-kiosk-rejected.png?fit=max\&auto=format\&n=YzbvK9R_IBrrGFD5\&q=85\&s=0d8b7c6bbb0bf4c7c88cc9d30b24ce98)

When the customer taps **Accept**, the kiosk checks the list:

* If the name doesn't pass, it shows the reason and the **Attempts left**, and the customer can type another one.
* On the last attempt it shows **We will call you by your order number** and moves on to payment with the generic name.
* If the back office doesn't answer within 3 seconds, the kiosk accepts the name so the sale is not stopped. The back office checks it anyway when the order arrives.

## When the order arrives

The back office checks the name of every kiosk order again before it reaches the pickup screen, and also when the order is corrected later:

* If it contains a blocked term, it is replaced by the generic name with that order's code.
* If the format doesn't comply, it is fixed: the first word is kept if **First name only** is on, numbers and symbols are removed, and it is cut at the maximum length. "Ana Clara" becomes "Ana".
* Empty names, pager numbers (such as "07") and the generic name itself are left as they are.

This second check also covers kiosks that don't have the update yet.

## Example: how a name is compared

List with "Idiota" (Contains) and "Burro" (Exact), with **First name only** on and 2 to 12 characters:

| The customer types | Compared as | On the pickup screen |
| - | - | - |
| Idiota | idiota | PEDIDO 83K (blocked) |
| Idiotá | idiota | PEDIDO 83K (blocked) |
| I d i o t a | idiota | PEDIDO 83K (blocked) |
| 1d10t4 | idiota | PEDIDO 83K (blocked) |
| Idiotaaa | idiota | PEDIDO 83K (blocked) |
| Burro | buro | PEDIDO 83K (blocked) |
| BurroTonto | burotonto | PEDIDO 83K (blocked) |
| Burrito | burito | Burrito |
| Ana Clara | ana · clara · anaclara | Ana |

Numbers and symbols cannot be typed at the kiosk, and with **First name only** a name with spaces cannot be accepted. Rows such as "1d10t4" or "I d i o t a" show what the back office does when the order arrives.

## Recipes

> **Turn on the filter in a country**
>
> 1. Choose the country in the selector at the top right.
> 2. Open **Settings → Pickup screen names**.
> 3. Turn on **Filter on** and click **Save rules**.
> 4. Import the list of terms with **Import list**.
> 5. Confirm with **Test a name** using a term from the list.

> **Load the list the client sends**
>
> 1. Copy the column of terms from the spreadsheet.
> 2. Click **Import list** and paste.
> 3. Choose the category and leave the match on **Automatic**.
> 4. Check the term count and click **Import**.
> 5. Repeat per category if you want the list organized.

> **A real name got blocked**
>
> 1. Type that name in **Test a name** and click **Test**.
> 2. Check which term matched in the kiosk result.
> 3. Find that term in the list.
> 4. Change it to **Exact**, or turn it off with **Active**.
> 5. Test the name again.

> **Block a competitor's brand**
>
> 1. Type the brand as it is written, with spaces if it has them.
> 2. Choose the **Competitor** category.
> 3. Choose **Contains** if the name is long: that way it also blocks the brand glued to another word.
> 4. Click **Add** and test it with and without spaces.

> **Allow first and last name**
>
> 1. Turn off **First name only**.
> 2. Raise the maximum length, for example to 20.
> 3. Click **Save rules**.
> 4. Keep in mind the pickup screen will show the full text.

> **Use the generic name from the first rejection**
>
> 1. Set **Attempts** to 1.
> 2. Click **Save rules**.
> 3. From then on, the first rejected name already switches to the generic name.

## Costly mistakes

> [!WARNING]
>
> **Short terms with Contains.** "Ana" with Contains also blocks "Mariana" and "Juliana". Customers can't use their own name and the line slows down. For terms of 5 letters or fewer use **Exact**: **Automatic** already does it.

> [!WARNING]
>
> **Blocking a first name.** Since K is read as C, blocking "Nikolas" also blocks "Nicolas". Before adding a proper name, test it together with its variants in **Test a name**.

> [!WARNING]
>
> **A very short maximum length.** The kiosk doesn't let customers type past the maximum and the back office cuts longer names. With a maximum of 5, "Mariana" doesn't fit.

> [!WARNING]
>
> **Turning the filter off "to test".** With **Filter on** turned off, any name is accepted at every kiosk in the country, including the check when the order arrives. To test, use **Test a name**, which works with the filter off.

## Glossary

| Term | Meaning |
| - | - |
| Pickup screen | Public display in the restaurant where orders are called for pickup. |
| Generic name | Text that replaces a rejected name, with the order code. For example, **PEDIDO 83K**. |
| Order code | Short code the kiosk gives each order, such as **83K**. |
| Blocked term | Word on the list that cannot appear in the name. |
| Exact | The name, or one of its words, is the term. |
| Contains | The term appears anywhere in the name. |
| Compared form | The normalized name (no accents, lowercase, leetspeak translated) that is compared against the list. |
| Attempt | Each rejected name within the same order. |

## Frequently asked questions

> **Can the filter stop a sale?**
>
> No. After the configured attempts, the kiosk uses the generic name and moves on to payment. If the back office doesn't answer within 3 seconds, the kiosk accepts the name and the back office checks it when the order arrives.

> **How long does a change take to apply?**
>
> Terms, 1 minute. Rules (filter on, length, attempts, generic name), about 5 minutes.

> **Are the rules per store?**
>
> No, per country. All the stores in the country use the same rules and the same list.

> **Do the kiosks need an update to change the list?**
>
> No. The list lives in the back office and the kiosk checks it every time the customer accepts a name.

> **What about kiosks that don't have the update yet?**
>
> They don't check the name while the customer types, but the back office checks it when the order arrives: the pickup screen shows the generic name instead of a blocked term.


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