---
title: "Access Control System"
description: "Set up access control with Wiegand card readers, PIN codes, and weekly schedules. Manage access cards, virtual cards, and access logs in TapHome."
url: "https://taphome.com/en/docs/access-control/"
language: en
lastmod: 2026-10-10
generator: hugo
ai:
  topics: ["access-control","card-readers","pin-code","wiegand-gateway","weekly-plans","access-cards"]
  questions: ["How do I set up an access card reader in TapHome?","How to add an access card by reading the card code?","What is a virtual card and why is PIN-only access not recommended?","How long are access logs stored in TapHome?","How do I mark a card as lost in TapHome?","Where do I find the Wiegand Gateway service settings?","How do I configure weekly access schedules for users?"]
---

# Access Control System

Last updated: 2026-10-10

The TapHome system supports access control through various devices:

  - **Card readers**
  - **PIN code entry keyboards**
  - **Combined card readers and PIN code entry keyboards**

The **Wiegand Gateway 2W/2DI/2DO** supports up to two Wiegand interfaces.

### Setup Guide

1. Enable the reader
   - Navigate to **Devices** and search for the Wiegand Gateway device named `W2DI2DO2`.
   - In the **Wiegands** section, enable the reader.

2. Add an access card
   - Navigate to **Settings → Access** and tap **Add access card**.
   - Select the reader.
   - Add the card.

   ![Access menu](https://taphome.com/documentation/access-control/accessmenu.png)

### Adding Cards

![Add card page](https://taphome.com/documentation/access-control/addcardpage.png)

#### Editing Access Card Validity

When setting up an access card, you can **adjust its future validity** before saving. Additionally, you can change the validity **later** in the card details.

**Validity Options**
You can define **specific dates** for:

  - **From** – the start date when the card becomes active.
  - **To** – the expiration date when the card is no longer usable.

![Edit date](https://taphome.com/documentation/access-control/editdate.png)

It is also possible to set the card's validity to unlimited by clicking **Unlimited**. This ensures the card remains permanently active without an expiration date.

![Unlimited validity](https://taphome.com/documentation/access-control/unlimitedvalidity.png)

If you want to set a specific time for a card that previously had unlimited validity, select **Custom** and adjust the **To** date to the desired expiration date.

After setting the validity, there are three ways to add a card to the system:

#### Create a Virtual Card

A virtual card can be defined for a reader with a keyboard. A virtual card is simply a **PIN code**.
The system ensures that the same PIN code is not already defined and prevents duplicate cards.
⚠️ Access through PIN code only provides the **lowest level of security** and is **not recommended**.

#### Direct Entry of Card Code

Some card codes are printed directly on the card or listed in the delivery note.
In such cases, it is possible to add the card **without placing it on the reader** – however, this is **not recommended**, as manually entering long numbers increases the risk of errors.

#### Adding a Card by Reading the Card Code

This is the **most recommended method**.
After clicking add card, a **To add a new card, attach the card to the device "{0}"** opens.
Placing a card on the reader that is **not yet in the system** will trigger a confirmation dialog.

![Read card](https://taphome.com/documentation/access-control/readcard.png)

Placing an already added card on the reader will display an **error message**.

After adding a card (or multiple cards), click **Cancel** to return from the card addition page to the card list.
Cards are listed in the order they were added, but **best practice** is to select a user for each card **immediately after adding it**.

**Access card properties**

Clicking on a card in the card list opens the **access card properties**.

![Access card properties](https://taphome.com/documentation/access-control/accesscardproperties.png)

On this page, you can **assign a user to the card** or **change the assigned user**.
Access logs are created **based on the user**, not the card, so all previous access attempts with a card assigned to different users will be correctly recorded in the system.

A card **cannot be removed from the system**.
If a card is **lost** or **should no longer be used**, click **Set the card as lost**.
This will **deactivate access using the card** and you can also define **special actions** when access is detected using a lost card.

A lost card can be reactivated at any time by clicking **Enable lost card**.

![Lost card](https://taphome.com/documentation/access-control/lostcard.png)

It is possible to define a **PIN code** for a card.
When a PIN code is set, access is granted **only** when the card is placed on the reader **and** the PIN code is entered.

Entering an **empty string** for the PIN code will **remove** the PIN code from the card.
⚠️ It is **not permitted** to remove the PIN code from a **virtual card**.

![Enter PIN code](https://taphome.com/documentation/access-control/enterpincode.png)

It is also possible to redefine the card's validity. This is very useful for temporarily assigned cards, for example.

## Wiegand Device

#### Wiegand device service settings include the following parameters:

![Wiegand parameters](https://taphome.com/documentation/access-control/wiegandparameters.png)

  - **Use # as Enter** – If enabled for readers with a keyboard, the `#` character will **complete** PIN code entry.

  - **Use * as ESC** – If enabled for readers with a keyboard, this setting allows the user to **cancel** PIN code entry and start over from the beginning.

  - **Use PIN code length** – If set, the **PIN code length** is used to automatically complete PIN code entry.

  - **PIN code length** – Parameter used when the previous setting is enabled as the PIN code length.

  - **Maximum time between key presses when entering PIN code** – Limits the time for entering the complete PIN code from the first entered number.

      - If the entire PIN code is **not entered within the defined time**, all previously entered numbers are cleared and PIN code entry starts over.

  - **Minimum time between entries with the same card** – Limits **repeated access** using the same card.

  - **Maximum time from card attachment to PIN code entry** – Defines the time from placing the card (with PIN code enabled) to entering the complete PIN code on the keyboard.


#### **Wiegand Access Definition**

It is possible to **define a user access list** for **weekly plans** directly from the Wiegand service parameters.

Additionally, you can **edit access card parameters**, including:

  - **User assignment** to the card
  - **Changing validity settings**
  - **Adding a card** as described in previous chapters

![Wiegand buttons](https://taphome.com/documentation/access-control/wiegandbuttons.png)

For each reader, you need to **define times and dates (weekly plans)** during which listed users have permission to access the device.
To perform this step, click **Edit weekly plans and users**.

1. Click **Add a weekly plan**.

2. Select from predefined weekly plans.

   ![Add weekly plan](https://taphome.com/documentation/access-control/addweeklyplan.png)

   The **Default weekly plan** is set to allow access **anytime and on any date**.

After adding a **weekly plan** for the reader, it will appear in the list.
Clicking on the plan opens the **user management page**, where you can **add** or **remove** users.

![Weekly plans no user](https://taphome.com/documentation/access-control/weeklypansnouser.png)

![Default plan](https://taphome.com/documentation/access-control/defaultplan.png)

Clicking **Add new user** opens a **user selection dialog**, where you can select **one or more users** who will have permission to access through the device with the selected **weekly plan**.

![Select users](https://taphome.com/documentation/access-control/selectusers.png)

Click **Done** to complete the selection – the user list will update:

![User list](https://taphome.com/documentation/access-control/userlist.png)

To remove a user, click on them and **confirm** or **cancel** your selection:

![Remove user](https://taphome.com/documentation/access-control/removeuser.png)

After completing **user selection** and returning to the **weekly plan list**, the **number of users** in the list will **update**:

![Weekly plans with user](https://taphome.com/documentation/access-control/weeklypanswithuser.png)

Now users can gain access to this device using a **card** or **PIN code** during times defined in the **weekly plans** where they are listed.

### Access Trigger

For card readers, it is recommended to use the **Access Smart Rule trigger**.

![Access trigger](https://taphome.com/documentation/access-control/accesstriger.png)

The access trigger can define different actions for:

  - **Access with any card**
  - **Access with expired card actions**
  - **Access with lost card actions**
  - **Access in too short time actions**


For example, when **granted access** should be used to **open a door** for a limited time, the action can be defined as an **impulse** with the following parameters:

![Impulse param 1](https://taphome.com/documentation/access-control/impulseparam1.png)
![Impulse param 2](https://taphome.com/documentation/access-control/impulseparam2.png)
![Impulse param 3](https://taphome.com/documentation/access-control/impulseparam3.png)

This will **open the door for 5 seconds** after access is granted.

Clicking **Display access log** displays the **access log** for all card readers as expected.

![User management log](https://taphome.com/documentation/access-control/usermanagementlog.png)

The log can be **filtered by date**.

When accessing from a **specific card reader**, only access records from that device are displayed.

The log is **stored in the database for 30 days**.

## How to Add a New PIN Code for a Keyboard Reader

1. Create a virtual card
   - Go to **Settings → Access → Add access card**.
   - Tap on the **Wiegand Gateway** where you want to enable the PIN.
   - Select **PIN code only**.
   - Enter your **PIN code** (default minimum **4 characters**, can be adjusted later).
   - Tap **To** and select a **future date**.
   - Go back. The card is now **created** and appears at the end of the **Access cards** list.

   > [!NOTE]
   > No user is assigned yet.

2. Assign a user to the PIN code
   - Tap on the **new card**.
   - Tap **Assign user**.
   - Select your **TapHome account**.
   - At the bottom, tap **Unlimited**.
   - Tap **Back**.

3. Configure weekly plans for PIN
   - Scroll up and tap on the **Wiegand Gateway** for which you are configuring the PIN.
   - Tap **Service settings**.
   - On the next screen, tap **Edit weekly plans and users**.
   - Tap **Add a weekly plan** or select an **existing weekly plan**.
   - Tap **Default weekly plan**.
   - Tap **Add new user**.
   - Select the **account**.
   - Tap **Back** multiple times.

4. Test the new PIN
   - Test your **new PIN**!

**See also** — [Users and permissions](https://taphome.com/en/docs/configuration/users-permissions/), [Alarm](https://taphome.com/en/docs/functional-areas/alarm/), [SIP Video Doorbell](https://taphome.com/en/docs/integration/sip-doorbell/).

