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

# Tạo và quản lý Coupons

> Tạo và quản lý Coupons trong ChatbotX: tạo Topic Coupon, import mã, phát Coupon trong Flow và theo dõi trạng thái sử dụng.

**Coupons** giúp bạn lưu danh sách mã ưu đãi và phát một mã riêng cho từng khách hàng. Bạn có thể dùng tính năng này cho chương trình chào mừng khách mới, quà tặng hoặc khuyến mãi giới hạn.

Mỗi nhóm mã được quản lý trong một **Topic Coupon**.

## Hiểu Topic Coupon và Coupon

| Thành phần       | Chức năng                                         |
| ---------------- | ------------------------------------------------- |
| **Topic Coupon** | Nhóm các mã thuộc cùng một chương trình ưu đãi.   |
| **Coupon**       | Mã cụ thể được import và phát cho một khách hàng. |
| **Status**       | Cho biết Coupon đã được phát hay chưa.            |
| **Usage**        | Cho biết Coupon đã được sử dụng hay chưa.         |

Bạn tạo Topic Coupon trước, sau đó import các mã vào Topic đó. Action **Set up Coupon** phát một mã thuộc Topic và lưu mã vào thông tin của khách hàng.

## Mở Coupons và tạo Topic Coupon

<Steps>
  <Step title="Mở Tools">
    Từ menu bên trái, chọn **Tools**.
  </Step>

  <Step title="Chọn Coupons">
    Nhấn vào thẻ **Coupons** để mở trang quản lý.

    <Frame>
      <img src="https://mintcdn.com/chatbotx/kLzzUd5lS5P09tks/images/coupon_tool_location.png?fit=max&auto=format&n=kLzzUd5lS5P09tks&q=85&s=eb5e7d9e87082ccd156a6b0414a8d509" alt="Open Coupons from the Tools page" width="3058" height="1886" data-path="images/coupon_tool_location.png" />
    </Frame>
  </Step>

  <Step title="Mở Topic Coupon">
    Chọn tab **Topic Coupon**. Trang **List Topic** hiển thị tên Topic, số Coupon, thời gian hiệu lực và menu Actions.

    <Frame>
      <img src="https://mintcdn.com/chatbotx/kLzzUd5lS5P09tks/images/topic_coupon_list.png?fit=max&auto=format&n=kLzzUd5lS5P09tks&q=85&s=edd5d21be0aca4190fb2ff6c9ab4db31" alt="View the Topic Coupon list and actions" width="2477" height="1001" data-path="images/topic_coupon_list.png" />
    </Frame>
  </Step>

  <Step title="Nhấn Create New">
    Nhấn **+ Create New** để mở hộp thoại tạo Topic Coupon.
  </Step>

  <Step title="Điền thông tin Topic">
    Nhập **Name**, chọn **Validity period** nếu chương trình có ngày hết hạn và thêm **Description** khi cần.

    <Frame>
      <img src="https://mintcdn.com/chatbotx/kLzzUd5lS5P09tks/images/create_topic_coupon.png?fit=max&auto=format&n=kLzzUd5lS5P09tks&q=85&s=43478ec76ac0bbbc75a968d2d2fdccda" alt="Create a new Topic Coupon" width="2482" height="1873" data-path="images/create_topic_coupon.png" />
    </Frame>
  </Step>

  <Step title="Nhấn Create">
    Nhấn **Create** để lưu Topic Coupon.
  </Step>
</Steps>

Nếu bạn không chọn **Validity period**, cột thời gian hiệu lực hiển thị **Unlimited**.

### Chỉnh sửa hoặc lưu trữ Topic Coupon

Mở menu dấu ba chấm trong cột **Actions** để chọn:

* **Edit**: Thay đổi tên, thời gian hiệu lực hoặc mô tả.
* **Archive**: Chuyển Topic Coupon sang tab Archive.

Topic Coupon trong **Archive** không thể dùng để phát Coupon. Bạn có thể mở tab **Archive** để quản lý, khôi phục hoặc xóa Topic không còn sử dụng.

## Import và quản lý Coupon

### Chuẩn bị file import

Tải file mẫu từ liên kết **Download import template** trong hộp thoại **Import coupons**. File CSV sử dụng một cột có tên `coupon`:

```csv theme={null}
coupon
WELCOME10001
WELCOME10002
WELCOME10003
```

Mỗi dòng chứa một mã riêng. Kiểm tra mã trùng và xóa các dòng trống trước khi import.

### Import và tải danh sách Coupon

<Steps>
  <Step title="Mở tab Coupon">
    Trên trang **Coupons**, chọn tab **Coupon**.

    Trang này có bộ lọc Topic, Status, Usage, ô **Search code** và danh sách Coupon.

    <Frame>
      <img src="https://mintcdn.com/chatbotx/ZE5hZwCgRQEpn81n/images/coupon_list_and_statuses.png?fit=max&auto=format&n=ZE5hZwCgRQEpn81n&q=85&s=7e0a55a0599ff71fef5f11ceb51b42c6" alt="Coupon List And Statuses" width="2439" height="1622" data-path="images/coupon_list_and_statuses.png" />
    </Frame>
  </Step>

  <Step title="Nhấn Import coupons">
    Nhấn **Import coupons** để mở hộp thoại import.
  </Step>

  <Step title="Chọn Topic">
    Trong trường **Topic**, chọn Topic Coupon sẽ nhận các mã mới.
  </Step>

  <Step title="Tải file CSV lên">
    Chọn file CSV đã chuẩn bị. Tên file xuất hiện trong vùng tải lên khi hệ thống nhận file.
  </Step>

  <Step title="Nhấn Confirm">
    Nhấn **Confirm** để import các mã vào Topic Coupon đã chọn.
  </Step>
</Steps>

Sau khi import, bảng Coupon hiển thị các cột **Topic**, **Code**, **Status**, **Usage** và **Created At**.

Bạn có thể kết hợp các công cụ sau để tìm Coupon:

* **All topics**: Lọc theo Topic Coupon.
* **All statuses**: Lọc theo trạng thái phát.
* **All usage**: Lọc theo trạng thái sử dụng.
* **Search code**: Tìm một mã cụ thể.

Nhấn **Download Coupon List** để tải danh sách Coupon kèm trạng thái hiện tại.

<Frame>
  <img src="https://mintcdn.com/chatbotx/kLzzUd5lS5P09tks/images/import_and_download_coupon_list.png?fit=max&auto=format&n=kLzzUd5lS5P09tks&q=85&s=f99fdc28c26a47e7465911ff8b981cf1" alt="Import coupons and download the Coupon list" width="2489" height="1879" data-path="images/import_and_download_coupon_list.png" />
</Frame>

## Phát Coupon trong Flow

### Thêm Topic Coupon Action

<Steps>
  <Step title="Mở Send Message">
    Trong Flow Builder, tạo hoặc mở một block **Send Message**.
  </Step>

  <Step title="Mở Actions">
    Nhấn **Create**, sau đó chọn **Actions**.
  </Step>

  <Step title="Chọn Topic Coupon">
    Mở nhóm **Tools** và chọn **Topic Coupon**.

    <Frame>
      <img src="https://mintcdn.com/chatbotx/ZE5hZwCgRQEpn81n/images/select_topic_coupon_action.png?fit=max&auto=format&n=ZE5hZwCgRQEpn81n&q=85&s=029993c1d2134ef89347796cb130d220" alt="Select Topic Coupon Action" width="3055" height="1887" data-path="images/select_topic_coupon_action.png" />
    </Frame>
  </Step>

  <Step title="Chọn Type">
    Trong trường **Type**, chọn **Set up Coupon** hoặc **Mark Coupon used**.

    <Frame>
      <img src="https://mintcdn.com/chatbotx/ZE5hZwCgRQEpn81n/images/configure_topic_coupon_action.png?fit=max&auto=format&n=ZE5hZwCgRQEpn81n&q=85&s=ba5438c030826ff3f76983f78b12f10d" alt="Configure Topic Coupon Action" width="3054" height="1886" data-path="images/configure_topic_coupon_action.png" />
    </Frame>
  </Step>

  <Step title="Chọn Topic">
    Trong trường **Topic**, chọn Topic Coupon mà Flow sẽ sử dụng.
  </Step>

  <Step title="Nhấn Continue">
    Nhấn **Continue** để thêm Action vào block **Send Message**. Nhấn **Update** khi bạn cần mở lại phần thiết lập.
  </Step>
</Steps>

Topic Coupon Action có hai thiết lập:

| Thiết lập            | Chức năng                                        |
| -------------------- | ------------------------------------------------ |
| **Set up Coupon**    | Phát một Coupon từ Topic đã chọn cho khách hàng. |
| **Mark Coupon used** | Đánh dấu Coupon của khách hàng là đã sử dụng.    |

### Kiểm tra Coupon bằng Condition

Bạn có thể dùng node **Condition** để tách nhánh Flow theo Coupon của từng khách hàng.

<Steps>
  <Step title="Mở Add Condition">
    Trong node **Condition**, nhấn **Add Condition** để mở phần thiết lập bộ lọc.
  </Step>

  <Step title="Chọn Topic Coupon">
    Mở danh sách trường. Trong nhóm **Topic coupon**, chọn Topic cần kiểm tra.

    <Frame>
      <img src="https://mintcdn.com/chatbotx/ZE5hZwCgRQEpn81n/images/topic_coupon_condition_field.png?fit=max&auto=format&n=ZE5hZwCgRQEpn81n&q=85&s=87eb26e53fad608f7123205c9db0bc13" alt="Topic Coupon Condition Field" width="3054" height="1880" data-path="images/topic_coupon_condition_field.png" />
    </Frame>
  </Step>

  <Step title="Chọn toán tử">
    Chọn **Has any value**, **Used** hoặc **Is** theo điều kiện bạn muốn kiểm tra.

    <Frame>
      <img src="https://mintcdn.com/chatbotx/ZE5hZwCgRQEpn81n/images/topic_coupon_condition_operators.png?fit=max&auto=format&n=ZE5hZwCgRQEpn81n&q=85&s=2204d8a1adefb4fd8bde8a3a25c53509" alt="Topic Coupon Condition Operators" width="2229" height="503" data-path="images/topic_coupon_condition_operators.png" />
    </Frame>
  </Step>

  <Step title="Chọn giá trị so sánh">
    Khi dùng **Is**, chọn giá trị cần so sánh trong trường thứ ba.

    <Frame>
      <img src="https://mintcdn.com/chatbotx/ZE5hZwCgRQEpn81n/images/topic_coupon_condition_value.png?fit=max&auto=format&n=ZE5hZwCgRQEpn81n&q=85&s=834b773363c6e1ae904284380fd47dfe" alt="Topic Coupon Condition Value" width="2408" height="790" data-path="images/topic_coupon_condition_value.png" />
    </Frame>
  </Step>

  <Step title="Nhấn Save">
    Nhấn **Save** để thêm điều kiện vào Case hiện tại.
  </Step>
</Steps>

| Toán tử           | Điều kiện kiểm tra                                         |
| ----------------- | ---------------------------------------------------------- |
| **Has any value** | Khách hàng có một Coupon thuộc Topic đã chọn.              |
| **Used**          | Coupon thuộc Topic đã chọn đã được đánh dấu là đã sử dụng. |
| **Is**            | Coupon bằng giá trị được chọn trong trường so sánh.        |

### Gửi mã Coupon trong tin nhắn

<Steps>
  <Step title="Thêm Send Text">
    Trong block **Send Message**, thêm hoặc mở một nội dung **Send Text**.
  </Step>

  <Step title="Nhập nội dung tin nhắn">
    Nhập phần nội dung cố định, ví dụ `Your Coupon:`.
  </Step>

  <Step title="Chèn thuộc tính Coupon">
    Nhấn biểu tượng `</>` trong trình soạn thảo. Trong nhóm **Coupons**, chọn Topic Coupon cần chèn.

    <Frame>
      <img src="https://mintcdn.com/chatbotx/ZE5hZwCgRQEpn81n/images/insert_coupon_system_field.png?fit=max&auto=format&n=ZE5hZwCgRQEpn81n&q=85&s=c39b7502de98e451862b96091fc5147b" alt="Insert Coupon System Field" width="3056" height="1887" data-path="images/insert_coupon_system_field.png" />
    </Frame>
  </Step>
</Steps>

Khi Flow chạy, ChatbotX thay thuộc tính này bằng mã Coupon đã phát cho khách hàng trong Topic được chọn.

<Note>
  Chạy **Set up Coupon** trước khi gửi trường Coupon. Điều này giúp khách hàng có mã để ChatbotX chèn vào tin nhắn.
</Note>

## Theo dõi Coupon theo khách hàng

### Lọc khách hàng trong Contacts

Bộ lọc Coupon giúp bạn tìm khách đã nhận một mã cụ thể hoặc đã sử dụng mã thuộc Topic.

<Steps>
  <Step title="Mở Contacts">
    Từ menu bên trái, chọn **Contacts**.
  </Step>

  <Step title="Thêm điều kiện lọc">
    Mở phần bộ lọc và chọn **Add Condition**.
  </Step>

  <Step title="Chọn Topic Coupon">
    Trong trường đầu tiên, chọn Topic Coupon cần lọc.
  </Step>

  <Step title="Chọn toán tử">
    Chọn **Has any value**, **Used** hoặc **Is** theo danh sách khách bạn cần tìm.

    <Frame>
      <img src="https://mintcdn.com/chatbotx/ZE5hZwCgRQEpn81n/images/filter_contacts_by_coupon.png?fit=max&auto=format&n=ZE5hZwCgRQEpn81n&q=85&s=92ce3cc6b107b967279fdad502746d76" alt="Filter Contacts By Coupon" width="3055" height="1883" data-path="images/filter_contacts_by_coupon.png" />
    </Frame>
  </Step>

  <Step title="Nhấn Save">
    Nếu bạn chọn **Is**, hãy chọn thêm giá trị so sánh. Sau đó nhấn **Save** để áp dụng bộ lọc.
  </Step>
</Steps>

Bộ lọc chỉ thay đổi danh sách đang hiển thị. Bạn có thể dùng kết quả để kiểm tra hoặc xử lý nhóm khách phù hợp.

### Xem Coupon trong Inbox

<Steps>
  <Step title="Mở Inbox">
    Từ menu bên trái, chọn **Inbox**.
  </Step>

  <Step title="Chọn cuộc trò chuyện">
    Chọn khách hàng cần kiểm tra trong danh sách hội thoại.
  </Step>

  <Step title="Mở Coupons">
    Trong hồ sơ liên hệ bên phải, mở mục **Coupons**.

    <Frame>
      <img src="https://mintcdn.com/chatbotx/ZE5hZwCgRQEpn81n/images/coupon_in_contact_profile.png?fit=max&auto=format&n=ZE5hZwCgRQEpn81n&q=85&s=7503594fdc24685556c4794a81269143" alt="Coupon In Contact Profile" width="3056" height="1884" data-path="images/coupon_in_contact_profile.png" />
    </Frame>
  </Step>
</Steps>

Mỗi thẻ Coupon hiển thị tên Topic, mã đã phát và trạng thái sử dụng. Trạng thái **Not used yet** cho biết mã chưa được đánh dấu là đã sử dụng.

## Ví dụ phát mã chào mừng khách mới

Bạn có Topic `New Customer Welcome - 10% Off` và đã import 30 mã từ `WELCOME10001` đến `WELCOME10030`.

Flow bắt đầu bằng một tin nhắn giới thiệu ưu đãi và nút **Get Coupon**. Khi khách nhấn nút, Flow xử lý theo trình tự sau:

<Steps>
  <Step title="Nhận yêu cầu lấy Coupon">
    Khách nhấn **Get Coupon** trong tin nhắn giới thiệu ưu đãi.
  </Step>

  <Step title="Kiểm tra Coupon của khách">
    Node **Condition** dùng **Has any value** để kiểm tra khách đã có Coupon thuộc Topic hay chưa.
  </Step>

  <Step title="Gửi lại Coupon hiện có">
    Nếu điều kiện đúng, Flow gửi lại mã Coupon đã được lưu của khách.
  </Step>

  <Step title="Phát Coupon mới">
    Nếu điều kiện không đúng, Flow chạy **Set up Coupon** để phát một mã thuộc Topic.
  </Step>

  <Step title="Gửi Coupon vừa phát">
    Flow gửi tin nhắn có thuộc tính **Coupons > New Customer Welcome - 10% Off**.
  </Step>
</Steps>

<Frame>
  <img src="https://mintcdn.com/chatbotx/ZE5hZwCgRQEpn81n/images/coupon_welcome_offer_flow_example.png?fit=max&auto=format&n=ZE5hZwCgRQEpn81n&q=85&s=5d60276bd234d74997a709335f5434c7" alt="Coupon Welcome Offer Flow Example" width="3051" height="1883" data-path="images/coupon_welcome_offer_flow_example.png" />
</Frame>

Kịch bản này kiểm tra Coupon trước khi chạy **Set up Coupon**. Nhánh khách đã có mã không phát thêm Coupon mới.

<Warning>
  Topic Coupon trong Archive không thể phát mã mới. Kiểm tra Topic vẫn hoạt động trước khi dùng trong Flow.
</Warning>

Kiểm tra số lượng Coupon trong Topic trước khi bắt đầu chiến dịch.

<Note>
  Chuẩn bị đủ mã cho số khách dự kiến và kiểm tra file CSV không có dòng trống hoặc mã trùng.
</Note>
