<!-- https://unlockos.io/manual/line-connection -->

# LINE Integration Help

## Overview

LINE Integration connects your facility's LINE Official Account to UnlockOS. Once connected, guests can perform check-in, check-out, reservations, and other operations directly through LINE.

## Key Features

- 4-step guided setup wizard for LINE Official Account connection
- Automatic rich menu generation and configuration
- Automatic webhook URL setup
- Choose between check-in, reservation, or both services
- Receiving notifications on the admin's LINE (used together with [Notification Workflows](notification-workflow.md); for what arrives where on LINE, see [LINE Notifications](line-notifications.md))

---

## Prerequisites

The following are required before setting up LINE integration.

| Required | Description |
|----------|-------------|
| LINE Official Account | Create one via LINE Official Account Manager |
| Messaging API | Enable Messaging API on your LINE Official Account |
| Channel ID | Found in LINE Developers Console |
| Channel Secret | Found in LINE Developers Console |
| Channel Access Token | Issue from LINE Developers Console |

---

## Setup Wizard

When LINE is not yet connected, a 4-step wizard is displayed.

### Step 1: Create a LINE Official Account

If you already have a LINE Official Account, select "Yes, I have one" and proceed to Step 2.

If you don't have one, select "No, I'll create one" and follow these steps:

1. Click the "Open LINE Official Account Manager" button
2. Select "Create Account" and choose the free plan
3. Enter your facility name as the account name
4. After creating the account, click "Done, Next" to continue

### Step 2: Enable Messaging API

1. In LINE Official Account Manager, go to "Settings" → "Messaging API"
2. Click "Enable Messaging API"
3. Select a provider and agree to the terms
4. Once enabled, click "Enabled, Next" to continue

### Step 3: Copy & Paste Channel Information

1. Click "Open LINE Developers Console"
2. On the target channel's "Basic settings" tab, find the **Channel ID** and **Channel Secret**
3. On the "Messaging API" tab, issue a **Channel Access Token** (click "Issue")
4. Copy each value and paste it into the corresponding field below

| Input Field | Where to Find |
|-------------|---------------|
| Channel ID | Basic settings tab |
| Channel Secret | Basic settings tab |
| Channel Access Token | Messaging API tab (must issue first) |

> **Note**: A channel access token cannot be issued in **LINE Official Account Manager** (`manager.line.biz`). It also has a "Messaging API" page, but that page shows only the Channel ID and Channel Secret. Issue the token in **LINE Developers Console** (`developers.line.biz`).
>
> If LINE Developers Console shows no "Issue" button, or the channel does not appear in the list, the LINE account you are signed in with has no role on that provider. Ask the provider's admin to grant you the Admin role under the provider's "Roles" settings.

To verify the credentials, click the "Test Connection" button. If the Channel Access Token is correct, the LINE bot name will appear and the test will succeed.

#### LINE Login Channel ID / Secret (per-facility LIFF app)

The UnlockOS Step 3 form has two more fields below the Channel ID and the others: **"LINE Login Channel ID"** and **"Login Channel Secret"**. These provision a LIFF app (the mini-app guests open from LINE) dedicated to this facility.

**On a new setup you need both.** LINE no longer permits adding a LIFF app to a Messaging API channel, so a setup created today has nowhere to put one without a Login channel. Only facilities connected before that change can leave them blank.

These two values come from a **separate "LINE Login" channel**, not from the Messaging API channel. If you have not created one yet:

1. Open [LINE Developers Console](https://developers.line.biz/console/) and select the **same provider** as your Messaging API channel (the one created in Step 2)
2. Click "Create a new channel" and choose "**LINE Login**"
3. Fill in the form and create the channel
   - Channel name: e.g. the facility name (guests see it when they sign in)
   - Channel description: anything
   - App types: check **Web app**
   - Email address: a contact address
4. On the new LINE Login channel's "Basic settings" tab, copy the **Channel ID** and **Channel secret**
5. Paste them into UnlockOS as "LINE Login Channel ID" and "Login Channel Secret"
6. If the status at the top of the LINE Login channel says "**Developing**", switch it to "**Published**"

> **Important**: While the channel is "Developing", only its admins and testers can open the LIFF app. It works on your own phone but not for guests. Always publish it.

| UnlockOS field | Where it comes from |
|--------|------|
| Channel ID / Channel Secret / Channel Access Token | The **Messaging API** channel (table above) |
| LINE Login Channel ID / Login Channel Secret | The **LINE Login** channel's "Basic settings" tab |

| Field | Purpose |
|-------|---------|
| LINE Login Channel ID | The Login channel your LIFF app lives on. It's the same digits as the part of the LIFF ID before the "-". Must belong to the same provider as the Messaging API channel. Blank falls back to the Channel ID (the Messaging API channel), which only works for a grandfathered setup |
| Login Channel Secret | Lets UnlockOS **automatically create** this facility's own LIFF app during provisioning — no need to configure LIFF manually in LINE Developers Console. Not shown again after it is saved |
| LIFF ID (optional) | The ID of this facility's own LIFF app (e.g. `2011108569-AbCdEfGh`). It is **filled in automatically** when you connect with a Login Channel Secret, so you can normally leave it blank. Paste one here only if you created the LIFF app yourself |

Leaving them blank does not fail loudly. Provisioning still reports success, but no facility-specific LIFF app is created and the facility falls back to the platform's shared LIFF app — so every rich menu item opens an ordinary web page, guests leave the LINE app, and they are not signed in automatically. In that case, register the LIFF app yourself using "If automatic creation does not work (manual registration)" below.

#### Creating the LIFF app (automatic by default)

**Normally there is nothing to do.** When you connect with a Login Channel ID and Login Channel Secret, UnlockOS creates the LIFF app, sets its endpoint URL and saves the LIFF ID for you. You do not need to create a LIFF app in LINE Developers Console.

After connecting, you are done once **"LIFF Deep Links" shows "Configured"** under "Connected State". If it stays "Not configured", use the manual registration below.

#### If automatic creation does not work (manual registration)

Create the LIFF app yourself and register its LIFF ID in UnlockOS.

**1. Create the LIFF app in LINE Developers Console**

On the LINE Login channel (not the Messaging API channel), open the "**LIFF**" tab, click "Add" and use these values.

| LINE Developers Console field | Value |
|------|------|
| LIFF app name | Anything (e.g. `UnlockOS`) |
| Size | Full |
| Endpoint URL | `https://line.unlockos.io/{facility slug}` (e.g. for the slug `hotel-sunrise`: `https://line.unlockos.io/hotel-sunrise`) |
| Scopes | `openid`, `profile` |
| Other fields | Leave the defaults |

- Find the **facility slug** under "App URL (Facility Slug)" in [Base Settings](base-settings.md). Do not append anything after the slug (such as `/checkin`)
- The Callback URL on the "LINE Login" tab is not used by LIFF, so it can stay empty

**2. Copy the LIFF ID**

The new app shows a **LIFF ID** (e.g. `2011727947-AbCdEfGh`). Check that the digits before the "-" are **the same as the LINE Login Channel ID** you entered in UnlockOS. If they differ, you created the app on a different channel.

**3. Save the LIFF ID in UnlockOS**

In "Channel credentials" on the LINE connection screen, paste it into "**LIFF ID (optional)**" and click "**Save credentials**". The save succeeded once "Credentials updated" appears.

- Channel Secret / Channel Access Token / Login Channel Secret **can stay blank** (blank keeps the stored value)
- **Do not clear** Channel ID / LINE Login Channel ID. They show the stored values; saving them blank deletes them

**4. Regenerate the rich menu**

Click "**Save and regenerate rich menu**" under "Rich menu display settings". Saving credentials alone does not change the rich menu. **Always do step 3 before step 4** — regenerating first reloads the screen before the LIFF ID is saved, and the field goes back to blank.

**5. Check**

Confirm "LIFF Deep Links" shows "Configured", then tap a rich menu button in LINE on your phone and check that the screen opens inside the LINE app.

> **If you registered manually**: when you change the facility slug, also update the LIFF app's endpoint URL in LINE Developers Console to the new slug. Otherwise the LIFF app keeps opening the old slug's URL.

> **Important**: the Login channel must sit under the **same provider** as the Messaging API channel. If it does not, guests appear to log in successfully but no message ever reaches them, because LINE user IDs are issued per provider.

Once all fields are filled in, click "Next" to proceed to Step 4.

### Step 4: Service Selection

Select which services this LINE Official Account will provide. At least one selection is required.

| Setting | Description |
|---------|-------------|
| Check-in Configuration | Select an existing check-in configuration from the dropdown. Enables check-in, key display, and check-out features. |
| Reservation Configuration | Select an existing reservation configuration from the dropdown. Enables reservation list and new reservation features. |

You can select either check-in, reservation, or both. Selecting "None" disables that feature.

#### Rich Menu Layout

Whether you configured a check-in setting and/or a reservation setting here determines which feature cells are auto-detected for the rich menu. A live preview is shown at the bottom of the form.

**Every rich menu ends with two fixed cells, "Contact Us" and "Facility Info," in addition to whatever features you selected.** Up to 4 feature cells are supported in total (at this step, up to 2: check-in and reservation), and the layout is chosen automatically based on how many feature cells there are.

| Feature cells | Layout |
|----------------|--------|
| 1 (check-in only, or reservation only) | Half size (3×1). 1 feature cell + Contact Us + Facility Info fill all 3 cells |
| 2 (both check-in and reservation) | Full size (3×2). 2 feature cells + Contact Us + Facility Info fill 4 of 6 cells; the remaining 2 are blank (not tappable) |

To put more features (membership, ticket books, lockers, resident portal, etc. — up to 4 total) on the rich menu, use the "Rich Menu Display Settings" section that appears after connecting (see "Connected State" below).

Review your settings and click "Connect & Auto-Setup" to complete the process. Once connected, the rich menu and the webhook **URL** are configured automatically.

> ⚠️ **After connecting, check that "Use webhook" is ON in the LINE Developers Console.**
> UnlockOS sets the webhook **URL**; the toggle that actually enables it belongs to LINE. While it is off, nothing reaches UnlockOS from LINE.
> It is under "Webhook settings" on the "Messaging API" tab.

---

## Connected State

After LINE integration is complete, the following information and settings are displayed.

### Auto-Setup Status

| Item | Description |
|------|-------------|
| Rich Menu | Status of the menu displayed on guests' LINE screens |
| Webhook URL | Status of the URL that receives notifications from LINE to UnlockOS. **This only shows the URL UnlockOS set — it does not tell you whether "Use webhook" is ON at LINE.** A row reading "configured" still receives nothing while that toggle is off (see "Show Key, check-out and facility info do not respond" below) |
| LIFF Deep Links | Whether the LIFF app's deep links are configured. If provisioning shows "Complete" but this item is not configured, every rich menu button opens as a plain web page instead of the LIFF app |

If "LIFF Deep Links" shows as not configured, a yellow warning message appears. First check that the Login Channel ID / Secret are filled in and that the LINE Login channel is "Published", then click "Save and regenerate rich menu". If it still shows not configured, register the LIFF app using "If automatic creation does not work (manual registration)" in Step 3.

### Rich Menu Display Settings

Once connected, a "Rich Menu Display Settings" section appears, letting you choose exactly which features appear on the rich menu.

- Selectable features: **Check-in, Reservation, Membership, Ticket Books, Locker, Resident Portal** (only features enabled for the facility are shown)
- You can select **up to 4**, via checkboxes. Features that need a specific configuration (check-in, reservation) also have a dropdown to pick which one
- A **live preview** based on the real cell layout is shown, updating as you change your selection
- If nothing is selected, the menu falls back to auto-detecting from whether a check-in / reservation setting exists (see "Rich Menu Layout" above)
- Regardless of your selection, the trailing **"Contact Us" and "Facility Info" cells are always shown**
- Click **"Save and Regenerate Rich Menu"** after making changes

#### Fixed Cells (Contact Us / Facility Info)

Every rich menu always ends with these two fixed cells, which cannot be turned off from the facility side.

| Cell | What happens on tap |
|------|---------------------|
| Contact Us | Does not open the LIFF app — opens the LINE chat's text input directly. Whatever the guest types goes straight into the chat with the facility's LINE Official Account (UnlockOS does not forward or store it) |
| Facility Info | Does not open the LIFF app — replies in the chat with a card showing the facility's name, address, phone number, and contact email, sourced from [Base Settings](base-settings.md) |

### Notification Settings

#### Administrator's LINE user ID

Workflows on the [Notification Workflows](notification-workflow.md) page whose recipient is "Facility owner" and whose channel is "LINE" are delivered to the LINE account registered here. They arrive in the chat with the facility's LINE Official Account (the same chat guests receive messages in).

Which notifications are sent (check-in, check-out, payment failure, new reservation, and so on) is decided on the Notification Workflows page. This screen only decides where the LINE ones go.

The ID is the letter `U` followed by 32 characters, for example `U1234567890abcdef1234567890abcdef`. To find it:

1. Sign in to the [LINE Developers Console](https://developers.line.biz/console/) with the administrator's own LINE account
2. Open this facility's **Messaging API channel** and copy "**Your user ID**" at the bottom of "Basic settings"
3. Have the administrator add the facility's LINE Official Account as a friend (messages cannot reach someone who is not a friend)

> **Note**: The `U…` in the LINE Official Account Manager chat URL (`chat.line.biz/.../chat/U…`) has the same shape but is **a different number**. Notifications will not arrive if you enter it.

An incorrectly formatted ID is rejected when you save. You can leave the field empty, but then owner workflows set to LINE fail, and the notification history shows "Admin LINE user ID not set".

#### Message language

Sets the language of the messages guests receive and of the rich menu image.
Changing it takes effect for messages sent afterwards; the rich menu image
updates the next time the menu is regenerated.

After changing settings, click "Save Notification Settings".

### Channel credentials

You can update the stored credentials here without disconnecting — use this
when you reissue a Channel Access Token, need to correct a value, or want to add
the LINE Login Channel ID to a facility that was connected before that field
existed.

| Field | Behaviour |
|-------|-----------|
| Channel ID | Pre-filled with the stored value |
| LINE Login Channel ID | Pre-filled. Clearing it falls verification back to the Channel ID |
| Channel Secret | **Blank means "keep the current value"** |
| Channel Access Token | **Blank means "keep the current value"** |
| Login Channel Secret | **Blank means "keep the current value"** |
| LIFF ID (optional) | Pre-filled with the stored value. **Saving it blank clears it** |

The three secret fields always appear empty, because UnlockOS never returns stored
secrets — not even to this screen. Type a value only when you intend to replace
it; leaving a field blank never clears it.

Channel ID, LINE Login Channel ID and LIFF ID, on the other hand, show the stored
values, and **saving one of them blank clears it**.

> **"Save credentials" does not rebuild the rich menu.** After changing the LIFF ID
> or the Login Channel ID, also click "Save and regenerate rich menu" under
> "Rich Menu Display Settings".

> **Reissuing a token invalidates the old one immediately.** In the LINE
> Developers console the button reads *Reissue* once a token exists, and messages
> stop working the moment you click it. Paste the new value here and save to
> restore service — you no longer need to disconnect and reconnect, which would
> also delete your rich menu.

After changing credentials, regenerate the menu from **Rich menu display
settings** so it is published to the updated channel.

### Friend Add QR Code

To get the QR code for guests to add your LINE Official Account as a friend, go to "Grow Friends" in LINE Official Account Manager.

### Disconnect

Clicking the "Disconnect" button will remove the LINE integration, rich menu, and webhook settings. You will need to go through the setup wizard again to reconnect.

---

## Guest LIFF App Flow

Once LINE integration is complete, guests tap buttons in the rich menu to interact with the facility. Some buttons launch the LIFF app (LINE in-app browser), while others respond directly within the LINE chat. The following flows describe what guests experience.

### Guests Opening from LINE and Member Accounts (Linking for Members)

A guest who opens the LIFF app from LINE is signed in with their LINE account. That is a **separate account** from the one they registered with by email, so members are at first treated as **non-members** (membership plans and member prices do not apply).

Members verify their email address once, and from then on they are treated as members whenever they open the app from LINE.

1. Tap **Verify email and link** on the **Members** card shown at the top of the LIFF app (booking, member and check-in screens)
2. Enter the email address they registered with and tap **Send code**
3. Enter the 6-digit code from the email and tap **Link**

The app switches to the member account immediately, and from then on opening it from LINE signs them in as a member. A notice that the account was linked to LINE is sent to that email address under the facility's name. The guest can remove the link at any time from **My Page** in the member app.

- A link applies to the combination of the facility's organization and the LINE Login channel that issued the LIFF app. At a facility in another organization the guest starts unlinked
- The **Members** card appears only when the facility has an active membership plan (not at facilities without one). Guests can close it with the **×** in its top-right corner, which hides it for that facility on that device. It still appears on **My Page** in the member app, so they can link from there later
- Staff, owner and administrator accounts cannot be linked (LINE alone would then sign someone in to an account with admin-screen access). If a linked account later becomes staff, opening from LINE falls back to the unlinked state
- Email addresses on the blacklist cannot be linked
- Notices to a linked guest go to the member account's email address

### Check-in Flow

1. Tap "Check-in" in the rich menu
2. A fee breakdown is displayed (contents vary by plan)
3. Tap "Check In" to confirm
4. After processing, a digital key (QR code or PIN code) is displayed

### Key Display

After check-in, or by tapping "Show Key" in the rich menu, the entry key is sent directly as a LINE message — no app launch required. The key information appears as a rich card in the LINE chat.

The card includes:
- QR code image (scan at the door reader)
- PIN code, if applicable (enter on the keypad next to the door)
- Room / unit name
- Check-in date and time
- Key validity period

If the guest has multiple active check-ins at the same facility, all keys are shown one after another as a carousel of cards.

| Key Type | How to Use |
|----------|-----------|
| QR Code | Hold your smartphone screen up to the reader next to the door |
| PIN Code | Enter the code on the keypad next to the door |

The key is valid only during the active stay. It becomes invalid after check-out.

**If the guest has not checked in yet**, the reply describes their reservation instead of showing a key — the key is handed over once check-in is done.

| Guest state | What "Show Key" replies with |
|---|---|
| Checked in | The key card (above) |
| Has a reservation, and check-in is open | The reservation details and a "Check in & get key" button, which opens check-in for that reservation |
| Has a reservation, but check-in has not opened | The reservation details and the time check-in becomes available |
| Neither a reservation nor a stay | "You have no active stay right now." |

Check-in opens **24 hours before the reservation starts** by default, and closes when the reservation ends.

> **Keys and reservation details are never shown in a group chat.** They must not be visible to anyone but the guest, so they appear only in a 1-on-1 chat with the facility's LINE account. Tapping "Show Key" in a group or multi-person chat replies with a note asking the guest to open the direct chat instead. Facility information and the contact prompt still work in groups.

### Check-out Flow

Check-out starts from the key message. There is no dedicated rich menu cell for it.

1. Tap "Check out" at the bottom of the key message
2. Check-in time and fee breakdown are displayed
3. Tap "Check out now" to confirm
4. A completion screen appears: "Thank you for your stay"

When several stays are active at once the keys appear as a carousel, and each
card's "Check out" button checks out **only the stay on that card**.

If a payment is still outstanding, the confirmation screen shows a payment
button (when LIFF is configured) or directs the guest to the front desk.

### Contact Us / Facility Info (Fixed Cells)

Regardless of which features are configured, the rich menu always ends with a "Contact Us" and a "Facility Info" button.

- **Contact Us**: Tapping it opens the LINE chat's text input directly so the guest can type a message to the facility's LINE Official Account (no app opens)
- **Facility Info**: Tapping it replies in the chat with a card showing the facility's name, address, phone number, and contact email (no app opens)

---

### Reservation List and New Reservation

1. Tap "My Reservations" in the rich menu to view the reservation list
2. Each reservation shows the plan name, dates, and status
3. Tap "Make a New Reservation" to open the booking site (booking.unlockos.io) in an external browser

---

## Troubleshooting

### Connection test fails

- **Verify the Channel Access Token**: Re-issue the token from the Messaging API tab in LINE Developers Console and paste it again.
- **Confirm Messaging API is enabled**: Check that it is enabled under "Settings" → "Messaging API" in LINE Official Account Manager.
- **Check for extra whitespace**: Make sure there are no leading or trailing spaces in the pasted token.

### Provisioning fails (rich menu or webhook not configured)

- **Verify the Channel Secret**: Double-check the Channel Secret from the Basic settings tab in LINE Developers Console.
- **Contact support**: Copy the error message and send it to support@unlockos.com.

### Show Key, check-out and facility info do not respond (nothing comes back)

If tapping a button or typing a keyword produces **no reply at all**, the webhook is most likely disabled at LINE.

1. Open the "Messaging API" tab for the channel in the LINE Developers Console
2. Under "Webhook settings" at the bottom, check whether **"Use webhook" is ON**
3. Turn it on if it is off (the URL does not need to be set again)

**The key notification sent at check-in arrives regardless of this setting.** That is what makes the problem look like nothing is wrong — the key shows up in the chat while the menu does nothing. Only the menu buttons and typed keywords go through the webhook, so only those stop responding.

### Rich menu is not displayed in guests' LINE

- On the connected screen, verify that "Rich Menu" shows "Configured" under Auto-Setup Status.
- The guest may not have added your LINE Official Account as a friend yet. Provide them with the QR code.
- Changes in LINE can take a few minutes to reflect.

### Admin is not receiving notifications

- On the [Notification Workflows](notification-workflow.md) page, confirm the "Facility owner" workflow is enabled and its channel is "LINE". Workflows set to "Auto" are delivered by email.
- Confirm that the "Administrator's LINE user ID" matches "Your user ID" in LINE Developers. The ID in the LINE Official Account Manager chat URL does not work.
- Confirm that the administrator's LINE account has added the LINE Official Account as a friend.

### Rich menu buttons open in a browser outside LINE (LIFF Deep Links not configured)

No LIFF app is set up, so the rich menu opens ordinary web pages.

1. Check that the LINE Login Channel ID / Login Channel Secret are filled in
2. Check that the LINE Login channel's status is "Published"
3. Click "Save and regenerate rich menu"
4. If it still shows not configured, register the LIFF app using "If automatic creation does not work (manual registration)" in Step 3

### LIFF app does not open or shows an error

- **"LIFF ID not configured" error**: This is a system configuration issue. Contact support@unlockos.com.
- **"LINE login required" error**: Make sure the guest is tapping the button from within the LINE app. This message appears when accessing the URL directly from an external browser.
- **Blank white screen**: Restart the LINE app and try again.

### Guest check-in fails

- If the guest cannot check in with a membership plan, confirm that they have linked LINE to their member account (see "Guests Opening from LINE and Member Accounts").
- Confirm that a check-in configuration is selected in the LINE integration settings (Step 4).
- Confirm that the selected check-in configuration is active and has a valid pricing plan.

### Key is not displayed

- Tapping "Show Key" sends the key as a message in the LINE chat — make sure the guest is looking in their LINE chat history, not in an app.
- **If "You have no active stay right now." appears**, the guest has not checked in yet. When the reservation is confirmed and check-in is open, they get a "Check in & get key" button instead. If they do not, confirm the reservation status is `confirmed` and that its time has not already passed.
- **If the guest is in a group chat**, neither keys nor reservations are shown. Ask them to use the 1-on-1 chat with the facility's LINE account.
- If check-in succeeded but no key message appears, the smart lock may not be connected. See [Lock Connection](lock-connection.md).
- If the key card shows but cannot be used at the door, verify the lock connection and that the key has not expired.

### Guest reservations are not displayed

- Confirm that a reservation configuration is selected in the LINE integration settings (Step 4).
- Confirm that the reservation has "confirmed" status.

---

## FAQ

### Q: Can one LINE Official Account be used for multiple facilities?
A: No. Each LINE Official Account can only be linked to one facility. If you manage multiple facilities, create a separate LINE Official Account for each.

### Q: Can I connect a LINE Official Account that already uses Messaging API?
A: Yes, but the existing webhook settings will be overwritten with UnlockOS's webhook URL. Please verify your existing webhook setup before proceeding.

### Q: Can I change the check-in or reservation configuration after LINE is connected?
A: With the current setup, you will need to disconnect and reconfigure to change service selections.

### Q: What can guests do through LINE?
A: Guests tap rich menu buttons to interact with the facility. With a check-in configuration selected, guests can check in and view their digital key (delivered as a Flex Message directly in LINE chat). With a reservation configuration selected, guests can view their reservation list and make new reservations (redirected to the booking site). Check-out is not a rich menu button — guests start it from the button at the bottom of the key message. Regardless of your selection, the rich menu always ends with "Contact Us" and "Facility Info" buttons that reply via chat or an info card.

### Q: If I run LINE integration at multiple facilities, is the guest's LINE account shared across them?
A: No. Each facility gets its own LIFF app, and a LINE user ID is scoped to the LIFF app (LINE Login channel) that issued it. So the same person is treated as a separate guest account at each facility. Stay history is not carried over between facilities.

### Q: What does a guest need to do the first time they check in via LINE?
A: Nothing special. Opening the LIFF app signs them in with their LINE account, and they can check in right away.

### Q: A member who opens the app from LINE is treated as a non-member
A: Their LINE account is not linked to their member account yet. Ask the guest to link it from the **Members** card at the top of the screen, using the email address they registered with (see "Guests Opening from LINE and Member Accounts" above). Staff and owner accounts cannot be linked.

### Q: Is the fee shown to guests before check-in?
A: Yes. The check-in confirmation screen shows a breakdown of applicable charges and the total amount before the guest confirms.

### Q: What if I need help with the setup?
A: You can request paid setup assistance using the link at the bottom of the page — it takes you to a contact form (unlockos.io/contact).

---

## Related Pages

- [Lock Connection (KEYVOX & Stripe)](lock-connection.md)
- [Check-in Configuration](checkin-config-form.md)
- [Reservation Settings](reservation.md)
- [LINE Notifications](line-notifications.md)
- [Notification Workflows](notification-workflow.md)
