> For the complete documentation index, see [llms.txt](https://docs.omnichat.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.omnichat.ai/features/xing-xiao/you-hui-quan-jia-gou-gong-neng/you-hui-quan-yu-fang-dao-ling-lan-yong-ji-zhi-otp.md).

# 優惠券預防盜領濫用機制 (OTP)

為避免優惠券遭受盜領，可自行決定該張優惠券是否啟用身份驗證機制

## 功能簡介

### 為什麼需要身份驗證？

過去，顧客只要打開優惠券連結就能直接看到兌換碼，如果連結被轉傳、截圖或外流，任何拿到連結的人都能直接兌換。

若您發送的是 LINE Points、超商禮金等第三方序號，因為您無法從自家 POS 查到實際兌換人，風險更高。

### 開啟後有什麼效果？

啟用「身份驗證」後，顧客打開優惠券時**不會直接看到兌換碼**，必須先完成驗證：

1. 系統把一組 OTP 驗證碼傳到「當初收到這張優惠券的那位顧客」的 LINE 或 WhatsApp 對話中
2. 顧客輸入 OTP 驗證碼，驗證成功後才會顯示兌換碼

因此，即使連結被轉傳給別人，對方也收不到 OTP 驗證碼，**就無法看到兌換碼**。

### OTP 驗證碼「不是」寄到手機簡訊

一般提到 OTP，大家常想到的是「寄到手機號碼的簡訊」。本功能的 OTP 驗證碼**不會以簡訊發送**，而是傳到顧客當初領取這張優惠券的那個 LINE／WhatsApp 對話中。

> **舉例**\
> 顧客小美是在品牌「ABC Shop」的 WhatsApp 對話中收到優惠券。\
> 當小美打開優惠券索取 OTP 驗證碼時，驗證碼會傳到**小美與「ABC Shop」的 WhatsApp 對話**裡，而不是小美的手機簡訊，也不會傳到其他品牌帳號的對話。
>
> LINE 也是一樣：在哪個 LINE 官方帳號領到券，OTP 驗證碼就會傳到與該官方帳號的對話中。

{% hint style="info" %}
建議您在發送優惠券時，可以一併提醒顧客：「查看優惠券時，請回到本對話查看 OTP 驗證碼」，減少顧客找不到驗證碼的情況。
{% endhint %}

## 哪些優惠券會需要驗證？

您開啟「身份驗證」後，優惠券須**同時符合以下所有條件**，顧客打開時才會要求驗證：

| 條件         | 說明                                       |
| ---------- | ---------------------------------------- |
| ✅ 已派發給特定顧客 | 這張優惠券已發送給某位顧客                            |
| ✅ 尚未兌換     | 系統紀錄中這張優惠券還沒被使用                          |
| ✅ 在使用期間內   | 目前仍在可兌換的期間                               |
| ✅ 來自指定平台   | 顧客透過 **LINE**，或您**指定的 WhatsApp 渠道**收到優惠券 |

若不符合上述條件的任一項情況，就會維持原本「打開即可查看」的規則。\
例如：

* 透過 Facebook Messenger、Instagram 收到的優惠券
* 透過**未指定**的 WhatsApp 渠道收到的優惠券
* 已兌換或已過期的優惠券

## 後台設定步驟

### 步驟 1：開啟身份驗證

1. 進入優惠券的編輯頁面
2. 找到「**身份驗證設定**」區塊
3. 開啟「**啟用身份驗證**」

<figure><img src="https://2493459343-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LaFmilpuDQ-f7VKjHCH%2Fuploads%2FGBxCPXnZqrCUg25wTlPB%2Fimage.png?alt=media&amp;token=365d68ba-1592-4267-8797-394644d681bf" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
開啟後，LINE 渠道會自動套用驗證，不需額外設定。

OTP 驗證碼訊息的語言會跟隨「設定 > 語系（顧客端）」。
{% endhint %}

### 步驟 2：指定 WhatsApp 渠道（使用 WhatsApp 才需要）

若您也希望 WhatsApp 的顧客需要驗證，請新增要套用驗證的 WhatsApp 渠道：

1. 在「身份驗證設定」中新增 WhatsApp 渠道
2. 為每個渠道選擇「**OTP 驗證碼訊息語系**」
3. 可新增多個 WhatsApp 渠道，每個渠道可設定各自的語系

**WhatsApp OTP 驗證碼可選語系：**

* English
* 繁體中文
* 简体中文
* Français
* Deutsch

{% hint style="info" %}
**語系小提醒**\
WhatsApp OTP 驗證碼訊息會**固定使用您在這裡選擇的語系**發送，不會跟著顧客端語系切換。\
例如：渠道語系設定為英文，而顧客端語系為繁體中文 → OTP 驗證碼訊息以英文發送，其餘系統訊息仍以繁體中文發送。
{% endhint %}

<figure><img src="https://2493459343-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LaFmilpuDQ-f7VKjHCH%2Fuploads%2FHMzQ4AKqAzKO43vHDRK7%2Fimage.png?alt=media&amp;token=326eaca0-af6f-4d40-ad86-5c823216ea34" alt=""><figcaption></figcaption></figure>

### 步驟 3：發佈或儲存優惠券

若畫面出現以下提示：

「該語系的驗證碼模板尚未建立或審核完成，請於發佈優惠券後至少等待 2 小時再進行發送。」

代表這個 WhatsApp 渠道第一次使用該語系，系統會在您發佈／儲存後**自動建立 OTP 驗證碼訊息範本並送交 WhatsApp 審核**。

請在發佈後**至少等待 2 小時**再開始派發優惠券，以確保顧客能順利收到 OTP 驗證碼。

同一渠道、同一語系的範本建立一次後，其他優惠券就能共用，之後不會再出現此提示。

<figure><img src="https://2493459343-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LaFmilpuDQ-f7VKjHCH%2Fuploads%2Ft5EdhhXeew6rxfQDl2dC%2Fimage.png?alt=media&amp;token=740a3c2d-29ff-4fdd-afde-331a985c27e9" alt=""><figcaption></figcaption></figure>

#### 關於系統自動建立的 WhatsApp 範本

* 範本會出現在後台「**WhatsApp 訊息範本**」頁面，適用對象為「**系統通知**」
* 顧客收到的訊息內容大致如下（以繁體中文為例）：

  <mark style="color:$primary;">「您的參考編號為</mark> <mark style="color:$primary;"></mark><mark style="color:$primary;">**123456**</mark><mark style="color:$primary;">，此為您近期資產查詢的對應編號」</mark>

  其中的「參考編號」即為 OTP 驗證碼。
* ⚠️ **請勿編輯、停用或刪除此範本**，否則 WhatsApp OTP 驗證碼將無法正常發送，顧客會無法查看優惠券。

#### 為什麼文案不直接寫「驗證碼」？

WhatsApp（Meta）原本提供專門發送驗證碼的「**驗證（Authentication）範本**」，但依 Meta 目前的限制，這類範本**無法發送給以 BSUID 識別的 WhatsApp 用戶**（BSUID 是 WhatsApp 用來識別「未提供手機號碼」用戶的專屬 ID，例如使用 WhatsApp 用戶名稱的顧客）。

為了讓**所有** WhatsApp 顧客都能收到 OTP 驗證碼，系統改以「**公用程式（Utility）範本**」發送。目前的文案是經過實際測試、確認能通過 Meta 審核的 Utility 範本內容，因此措辭會以「參考編號」呈現，而不是直接寫「驗證碼」。

{% hint style="danger" %}
**請勿從「WhatsApp 訊息範本」頁面修改此範本的文案**\
修改後範本需重新送審，若新文案未通過 Meta 審核或被判定不符規範，OTP 驗證碼可能**無法發送**，導致顧客無法查看優惠券。
{% endhint %}

#### 費用說明

OTP 驗證碼會以訊息形式傳送到顧客的 LINE 或 WhatsApp 對話中，將依各平台的計費方式產生訊息費用。

## 顧客端體驗流程

### 正常流程

1. **打開優惠券**\
   顧客可從優惠券訊息，或會員卡的優惠券夾打開優惠券。此時看得到優惠券資訊，但**兌換碼、條碼、複製序號按鈕、兌換按鈕都會先隱藏**。
2. **點擊發送 OTP 驗證碼**\
   顧客在優惠券頁面上點擊按鈕索取 OTP 驗證碼。
3. **收到 OTP 驗證碼**\
   OTP 驗證碼會傳到顧客**當初領取優惠券的那個 LINE／WhatsApp 對話**中（不是手機簡訊）。例如在「ABC Shop」的 WhatsApp 領到券，就會在與「ABC Shop」的 WhatsApp 對話中收到 OTP 驗證碼。
4. **輸入 OTP 驗證碼**\
   顧客回到優惠券頁面輸入 OTP 驗證碼。
5. **查看兌換碼**\
   驗證成功後，即可看到完整的優惠券內容與兌換碼。

<div><figure><img src="https://2493459343-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LaFmilpuDQ-f7VKjHCH%2Fuploads%2FTev6uXR2rk5Gbi6mcMcO%2Fimage.png?alt=media&amp;token=9ef1d4f0-e268-435e-b8b7-5b69c6a5a658" alt="" width="188"><figcaption><p><strong>點擊發送 OTP 驗證碼</strong></p></figcaption></figure> <figure><img src="https://2493459343-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LaFmilpuDQ-f7VKjHCH%2Fuploads%2FiblleOazqAUOTK8VDhVZ%2Fimage.png?alt=media&amp;token=77728009-d27a-4369-95c9-aa9d5d60a10b" alt="" width="188"><figcaption><p><strong>輸入 OTP 驗證碼</strong></p></figcaption></figure> <figure><img src="https://2493459343-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LaFmilpuDQ-f7VKjHCH%2Fuploads%2FvAN6aWze40EOEGLfNGya%2Fimage.png?alt=media&amp;token=bef25e9d-4b94-4923-aeb6-a4a9c81f285d" alt="" width="188"><figcaption><p><strong>查看兌換碼</strong></p></figcaption></figure></div>

### 如果連結被轉傳給其他人

其他人打開連結時，同樣會看到需要驗證的畫面，**但 OTP 驗證碼只會傳送給原本收到優惠券的顧客**，因此其他人無法取得兌換碼。

即使是已經驗證過的連結，轉傳出去後對方仍需重新驗證。

### 搭配「倒數計時」優惠券

若優惠券有設定「點擊確認後開始倒數」：

* **尚未開始倒數**：先完成驗證 → 看到優惠券內容 → 點擊確認 → 開始倒數
* **已倒數結束**：先完成驗證 → 顯示倒數已結束

## OTP 驗證碼使用規則

| 項目     | 規則                               |
| ------ | -------------------------------- |
| 有效時間   | 每組 OTP 驗證碼 **10 分鐘**內有效          |
| 重新索取   | 重新索取後，舊的 OTP 驗證碼會立即失效            |
| 使用次數   | 每組 OTP 驗證碼驗證成功一次後即失效             |
| 輸入錯誤   | 每組 OTP 驗證碼最多可輸入 **5 次**，超過需重新索取  |
| 重新發送間隔 | 每次索取後需等待 **60 秒**才能再次索取（畫面會顯示倒數） |
| 每小時上限  | 同一位顧客的同一張優惠券，**每小時最多索取 20 次**    |
| 每次開啟   | 每次重新打開優惠券都需要重新驗證                 |

{% hint style="info" %}
「60 秒間隔」與「每小時上限」是以同一位顧客的同一張優惠券計算，**不論在哪台裝置操作都會一起計算。**
{% endhint %}

### 多裝置使用

* 顧客可以在任何裝置上完成驗證，只要輸入正確的 OTP 驗證碼即可
* 各裝置的驗證狀態彼此獨立：在手機 A 驗證成功，不會讓手機 B 也變成已驗證；手機 B 驗證時也不會讓手機 A 被登出

## 對數據報表的影響：「開封」的認定

啟用身份驗證後，「開封」的認定方式會改變：

| 優惠券類型         | 何時算「開封」            |
| ------------- | ------------------ |
| **需要驗證的優惠券**  | 顧客**第一次驗證成功**時才算開封 |
| **不需要驗證的優惠券** | 與原本相同，打開優惠券即算開封    |

領取紀錄中的「開封時間」，即為顧客第一次驗證成功的時間。

{% hint style="info" %}
由於只有完成驗證才算開封，啟用後的開封率可能會比過去略低，這代表數據更精準地反映了「真正由本人查看」的次數。
{% endhint %}

## 常見問題

#### **Q1：顧客說收不到 OTP 驗證碼怎麼辦？**

**請先確認：**

* 顧客是否在查看**手機簡訊**？OTP 驗證碼不會以簡訊發送，請引導顧客回到**當初領取優惠券的 LINE／WhatsApp 對話**中查看
* 顧客是否仍有追蹤／未封鎖您的 LINE 官方帳號或 WhatsApp
* 若為 WhatsApp，該渠道與語系的範本是否已審核通過（新設定後請等待至少 2 小時）
* 「WhatsApp 訊息範本」中系統通知範本是否被修改或刪除

若仍無法收到，您可以先從優惠券的**領取紀錄**查詢該顧客的序號，直接提供給顧客使用。

#### **Q2：顧客畫面一直顯示倒數，無法再次索取 OTP 驗證碼？**

這是為了防止濫用的頻率限制。每次索取後需等 60 秒；若一小時內已索取 20 次，需等到最早那次超過一小時後才能再索取。倒數結束後按鈕會自動恢復。

#### **Q3：Messenger、Instagram 的優惠券也會要求驗證嗎？**

目前不會。身份驗證僅適用於 LINE 與您指定的 WhatsApp 渠道，其他平台維持打開即可查看。

#### **Q4：WhatsApp 為什麼沒有日文選項？**

目前 WhatsApp OTP 驗證碼暫不支援日文，可先選擇其他語系。

LINE OTP 驗證碼則會跟隨顧客端語系設定。

#### **Q5：顧客驗證成功後截圖兌換碼分享給別人，系統能防止嗎？**

身份驗證機制保障的是「查看兌換碼前確認為本人」。顧客驗證成功並取得兌換碼後，若自行截圖或抄寫轉給他人，則不在系統可控範圍內。

#### **Q6：可以只讓部分優惠券啟用驗證嗎？**

可以，但是開啟之後只要是同一組優惠券都需要身份驗證。

建議高價值或第三方序號（如點數、禮金）的優惠券優先開啟。

### 注意事項

* 身份驗證保障的是**查看兌換碼的階段**；顧客完成驗證後的使用或轉傳行為，不在 Omnichat 保障範圍內
* 草稿階段的優惠券不在本功能保護範圍內
* OTP 驗證碼訊息會產生平台訊息費用
* 請勿修改或刪除系統自動建立的 WhatsApp OTP 驗證碼範本
* 若遇到 OTP 驗證碼大範圍無法發送的狀況，可暫時關閉該優惠券的身份驗證，並聯繫 Omnichat 客服協助處理
