> ## 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.

# Thiết lập và chia sẻ cửa hàng Ecommerce

> Hướng dẫn kích hoạt tính năng Ecommerce, cấu hình cài đặt chung, thanh toán, vận chuyển, luồng checkout và chia sẻ liên kết cửa hàng vào kịch bản trên ChatbotX.

**Ecommerce** trên ChatbotX giúp bạn xây dựng cửa hàng trực tuyến dạng Webview hoạt động ngay bên trong cuộc trò chuyện trên Facebook Messenger, Instagram, WhatsApp, Zalo OA, TikTok, Telegram và Webchat. Người mua có thể duyệt danh mục hàng hóa, tìm kiếm sản phẩm bằng tin nhắn, thêm món vào giỏ, áp dụng mã giảm giá và hoàn tất đặt hàng mà không cần thoát khỏi ứng dụng nhắn tin.

> [card] Cửa hàng Webview đa kênh
>
> Hiển thị danh mục sản phẩm trực quan ngay trong khung chat, tự động nhận diện phiên mua sắm của từng liên hệ.

> [card] Thanh toán linh hoạt
>
> Hỗ trợ trang thanh toán mặc định, chuyển hướng liên kết ngoài hoặc chốt đơn hội thoại qua kịch bản tự động.

> [card] Khôi phục giỏ hàng bỏ quên
>
> Tự động gửi lời nhắc hoặc kích hoạt kịch bản chăm sóc khi liên hệ thêm hàng vào giỏ nhưng chưa hoàn tất đặt đơn.

> [card] Theo dõi chuyển đổi quảng cáo
>
> Tích hợp trực tiếp Facebook Pixel để ghi nhận sự kiện xem hàng, thêm vào giỏ và mua hàng phục vụ tối ưu quảng cáo.

## Mở công cụ Ecommerce

**1. Truy cập menu Công cụ**

Từ thanh điều hướng bên trái của giao diện ChatbotX, chọn mục **Tools**.

**2. Chọn thẻ Ecommerce**

Nhấn vào thẻ **Ecommerce** để mở bảng điều khiển quản trị cửa hàng.

![Ecommerce Tools Menu](https://mintcdn.com/chatbotx/4-2V2Q5Oj9gz9vtE/images/ecommerce_tools_menu.png?fit=max\&auto=format\&n=4-2V2Q5Oj9gz9vtE\&q=85\&s=4358ca44e48b66269a1f527611acfe40)

**3. Chọn khu vực quản trị**

Thanh điều hướng trên cùng của Ecommerce bao gồm 7 khu vực chức năng:

* **Products**: Quản lý sản phẩm, giá bán, tồn kho, biến thể và đồng bộ Meta Catalog.
* **Orders**: Tra cứu, duyệt đơn, in phiếu giao hàng và cập nhật trạng thái xử lý.
* **Coupons**: Thiết lập mã giảm giá theo phần trăm, số tiền cố định hoặc miễn phí vận chuyển.
* **Vendors**: Quản lý thương hiệu hoặc nhà cung cấp hàng hóa.
* **Categories**: Tổ chức cây danh mục ngành hàng và danh mục con.
* **Settings**: Cấu hình quy tắc vận hành, tiền tệ, phí giao hàng và luồng thanh toán.
* **Analytics**: Theo dõi báo cáo doanh thu, lượng đơn hàng và bảng xếp hạng sản phẩm bán chạy.

## Cài đặt chung

Chuyển sang tab **Settings** và chọn mục **General** ở menu bên trái để thiết lập các thông số hiển thị và vận hành cốt lõi của cửa hàng.

![Ecommerce Settings General Part 1](https://mintcdn.com/chatbotx/4-2V2Q5Oj9gz9vtE/images/ecommerce_settings_general_part1.png?fit=max\&auto=format\&n=4-2V2Q5Oj9gz9vtE\&q=85\&s=f3f4b63f255aaf3ba61c4246a93750b5)

Bảng dưới đây giải thích các thiết lập ở phần đầu của mục **General**:

| Thiết lập | Chức năng |
| - | - |
| **Ordering is Available** | Công tắc bật hoặc tắt khả năng tiếp nhận đơn hàng của toàn cửa hàng. Bạn có thể gạt tắt khi tạm nghỉ lễ hoặc bảo trì kho mà không làm thay đổi cấu hình giờ mở cửa cố định. |
| **Web shop product view** | Chọn kiểu bố cục hiển thị sản phẩm trên giao diện cửa hàng Webview như dạng thẻ vuông (`Card square`), dạng danh sách (`List`) hoặc dạng lưới ảnh. |
| **Open hours** | Giới hạn khung giờ cửa hàng nhận đơn trong tuần. Nếu để trống, cửa hàng mở cửa tiếp nhận đơn 24/7. |
| **Search Products** | Cho phép liên hệ gõ từ khóa tìm kiếm sản phẩm trực tiếp bằng tin nhắn trong cuộc trò chuyện và chọn kiểu thẻ kết quả trả về. |
| **Facebook Pixel** | Nhập mã Pixel ID để tự động ghi nhận 4 sự kiện chuyển đổi trên Webview gồm: xem sản phẩm (`VIEW_CONTENT`), thêm vào giỏ (`ADD_TO_CART`), bắt đầu thanh toán (`INITIATE_CHECKOUT`) và hoàn tất đơn hàng (`PURCHASE`). |

Cuộn xuống phần dưới của mục **General** để cấu hình tính năng khôi phục giỏ hàng và thông báo tự động:

![Ecommerce Settings General Part 2](https://mintcdn.com/chatbotx/4-2V2Q5Oj9gz9vtE/images/ecommerce_settings_general_part2.png?fit=max\&auto=format\&n=4-2V2Q5Oj9gz9vtE\&q=85\&s=94484de4503cdff002719c98cf44b697)

| Thiết lập | Chức năng |
| - | - |
| **Abandoned cart message** | Chọn khoảng thời gian chờ kể từ lúc liên hệ rời cửa hàng khi vẫn còn sản phẩm trong giỏ để hệ thống kích hoạt nhắc nhở, hoặc chọn tắt nếu không sử dụng. |
| **Abandoned cart flow** | Chọn kịch bản tự động sẽ chạy để gửi tin nhắn nhắc nhở và ưu đãi thúc đẩy liên hệ hoàn tất giỏ hàng bị bỏ quên. |
| **Buttons in Products** | Tùy chọn các nút thao tác hiển thị dưới mỗi thẻ sản phẩm khi gửi trong khung chat gồm: thêm vào giỏ (`Add to cart`), chia sẻ (`Share`), xem sản phẩm tương tự (`Similar products`) và lưu (`Save`). |
| **Image size of Products** | Chọn tỷ lệ và kích thước khung ảnh sản phẩm hiển thị trong tin nhắn bot. |
| **Allow to rate orders** | Cho phép người mua chấm điểm sao và gửi nhận xét đánh giá sau khi đơn hàng chuyển sang trạng thái hoàn tất. Đánh giá này hiển thị nội bộ cho quản trị viên. |
| **Send notification when change cart status** | Tự động gửi tin nhắn thông báo cho người mua trong cuộc trò chuyện mỗi khi quản trị viên cập nhật trạng thái xử lý đơn hàng. |

## Cài đặt thanh toán và tiền tệ

Tại tab **Settings**, chọn mục **Payments** ở cột bên trái để thiết lập phương thức thanh toán và định dạng tiền tệ cho cửa hàng.

![Ecommerce Settings Payments](https://mintcdn.com/chatbotx/4-2V2Q5Oj9gz9vtE/images/ecommerce_settings_payments.png?fit=max\&auto=format\&n=4-2V2Q5Oj9gz9vtE\&q=85\&s=f7d8ad7f96db360e4fd4759d1569071d)

* **Payment methods**: Chọn các phương thức thanh toán hiển thị trên trang đặt hàng:
  * **Cash on Delivery**: Thanh toán tiền mặt khi nhận hàng (COD).
  * **PayPal**: Nhận thanh toán trực tuyến qua tài khoản hoặc thẻ liên kết ví PayPal.
  * **Card (Stripe)**: Nhận thanh toán trực tuyến qua thẻ tín dụng và thẻ ghi nợ quốc tế bảo mật bởi Stripe.
    *(Phương thức nằm đầu tiên trong danh sách lựa chọn sẽ được chọn mặc định trên giao diện thanh toán Webview).*
* **Currency**: Chọn đơn vị tiền tệ chuẩn dùng để niêm yết giá và tính tổng đơn hàng.
* **Currency position**: Chọn vị trí đặt ký hiệu tiền tệ nằm bên trái (`Left`) hoặc bên phải (`Right`) con số giá tiền.
* **Symbol of money**: Nhập ký hiệu tiền tệ hiển thị kèm theo giá sản phẩm. Bạn có thể thêm khoảng trắng vào trước hoặc sau ký hiệu để tách biệt rõ với số tiền.
* **Other Fees / Services Fees**: Nhập tỷ lệ phần trăm phụ phí hoặc phí dịch vụ cộng thêm vào đơn hàng (từ `0%` đến `100%`).

> [card] [Tích hợp thanh toán PayPal](https://chatbotx.io/docs/vi/tools/ecommerce/paypal-payment.md)
>
> Hướng dẫn lấy Client ID/Secret từ PayPal Developer, kích hoạt thanh toán ví điện tử và theo dõi trạng thái đơn hàng.

> [card] [Tích hợp thanh toán Stripe](https://chatbotx.io/docs/vi/tools/ecommerce/stripe-payment.md)
>
> Hướng dẫn kết nối Secret Key từ Stripe Dashboard, nhận thanh toán thẻ quốc tế và tự động hóa biên lai giao dịch.

## Cài đặt vận chuyển và giao nhận

Chọn mục **Shipping** trong menu **Settings** để cấu hình hình thức giao nhận, phạm vi quốc gia hỗ trợ và chi phí vận chuyển.

![Ecommerce Settings Shipping](https://mintcdn.com/chatbotx/4-2V2Q5Oj9gz9vtE/images/ecommerce_settings_shipping.png?fit=max\&auto=format\&n=4-2V2Q5Oj9gz9vtE\&q=85\&s=fb20cb70e583f1b78513a58295662612)

* **Shipping type**: Chọn hình thức giao nhận hàng hỗ trợ khi thanh toán. Bạn có thể bật giao hàng tận nơi (`Deliver to customer`), nhận trực tiếp tại cửa hàng (`Pickup in Store`) hoặc kích hoạt đồng thời cả hai tùy chọn để người mua tự chọn.
* **Store address**: Nhập địa chỉ cửa hàng hoặc kho thực tế. Địa chỉ này sẽ hiển thị trên trang thanh toán khi người mua chọn hình thức đến nhận tại cửa hàng.
* **Shipping countries**: Chọn danh sách các quốc gia mà cửa hàng hỗ trợ giao hàng.
* **Default Shipping country**: Chọn quốc gia được điền sẵn mặc định trên biểu mẫu địa chỉ thanh toán.
* **Delivery cost**: Nhập mức phí vận chuyển cố định cộng vào đơn hàng khi người mua chọn giao hàng tận nơi.

> [!NOTE]
>
> Nếu muốn miễn phí vận chuyển cho các đơn hàng đạt giá trị nhất định, bạn có thể tạo một mã giảm giá loại miễn phí giao hàng trong tab **Coupons** và bật chế độ tự động áp dụng vào giỏ hàng.

## Cài đặt luồng thanh toán và xác nhận đơn hàng

Chọn mục **Checkout** trong menu **Settings** để kiểm soát cách người mua hoàn tất đơn hàng và các thông tin bắt buộc cần thu thập.

![Ecommerce Settings Checkout Part 1](https://mintcdn.com/chatbotx/4-2V2Q5Oj9gz9vtE/images/ecommerce_settings_checkout_part1.png?fit=max\&auto=format\&n=4-2V2Q5Oj9gz9vtE\&q=85\&s=4f15a59e85d24eafb7c23ace0d22f0f4)

### Chế độ thanh toán

Trường **Checkout** cung cấp 4 chế độ hoàn tất đơn hàng tùy theo mô hình bán hàng của doanh nghiệp:

| Chế độ | Cơ chế hoạt động | Khi nào nên dùng |
| - | - | - |
| **Default checkout page** | Mở biểu mẫu thanh toán tiêu chuẩn ngay trên giao diện Webview của ChatbotX để người mua điền thông tin nhận hàng và đặt đơn. | Phù hợp với hầu hết cửa hàng bán lẻ có giỏ hàng nhiều sản phẩm. |
| **Flow** | Đóng giao diện Webview khi khách nhấn thanh toán và kích hoạt kịch bản được chọn tại mục **Checkout Flow** để thu thập thông tin qua hội thoại. | Khi muốn dẫn dắt quy trình hỏi thông tin giao hàng và chốt đơn trực tiếp bằng tin nhắn chat. |
| **Custom External checkout page** | Chuyển hướng người mua sang một đường dẫn trang thanh toán riêng của doanh nghiệp. | Khi sử dụng cổng thanh toán hoặc hệ thống ERP bên ngoài. |
| **Visit the external product page** | Chuyển hướng người mua truy cập thẳng vào đường dẫn `Product URL` gắn trên từng sản phẩm. | Khi dùng chatbot làm kênh giới thiệu sản phẩm tiếp thị liên kết hoặc dẫn khách sang sàn thương mại điện tử. |

### Chế độ tin nhắn xác nhận đơn hàng

Trường **Order confirmation message** quyết định phản hồi tự động gửi vào cuộc trò chuyện ngay khi đơn hàng được đặt thành công:

* **Default message**: Hệ thống tự động gửi tin nhắn xác nhận tiêu chuẩn theo ngôn ngữ của Workspace, liệt kê chi tiết mã đơn hàng, thông tin người nhận, danh sách sản phẩm và tổng tiền thanh toán.
* **Run a flow**: Thay thế tin nhắn mặc định bằng kịch bản tùy chỉnh được chọn tại trường **Order confirmation flow**.
* **Don't send anything**: Không gửi tin nhắn tự động sau khi đặt hàng.

Tại trường **Minimum order value**, bạn có thể nhập giá trị tối thiểu mà đơn hàng phải đạt được (tính sau khi đã trừ mọi khoản chiết khấu và mã giảm giá) để người mua được phép đặt đơn.

### Trường thông tin bắt buộc khi thanh toán

Cuộn xuống phần dưới của mục **Checkout** để bật hoặc tắt các thông tin bắt buộc người mua phải cung cấp trên biểu mẫu thanh toán mặc định:

![Ecommerce Settings Checkout Part 2](https://mintcdn.com/chatbotx/4-2V2Q5Oj9gz9vtE/images/ecommerce_settings_checkout_part2.png?fit=max\&auto=format\&n=4-2V2Q5Oj9gz9vtE\&q=85\&s=8713c200305b3c7af6d8ee8757064fcb)

* **Require email address**: Bắt buộc người mua nhập địa chỉ Email.
* **Require phone number**: Bắt buộc người mua nhập số điện thoại liên hệ nhận hàng.
* **Require state/province**: Bắt buộc chọn hoặc nhập Tỉnh/Thành phố giao hàng.
* **Require zip code**: Bắt buộc nhập mã bưu chính (có thể tắt đối với hoạt động giao hàng nội địa không dùng mã ZIP).

Sau khi hoàn tất mọi thiết lập trong tab **Settings**, nhấn nút **Save** ở góc dưới bên phải để lưu cấu hình.

### Thiết lập kịch bản thanh toán qua hội thoại

Khi bạn chọn chế độ **Checkout** là **Flow**, kịch bản được gắn tại trường **Checkout Flow** sẽ đảm nhận nhiệm vụ thu thập thông tin giao hàng từ liên hệ và tạo đơn hàng. Bạn thiết kế kịch bản này theo trình tự sau:

**1. Thu thập họ tên người nhận**

Thêm khối **Get User Data** đầu tiên để hỏi họ tên người nhận và lưu câu trả lời vào thuộc tính tùy chỉnh lưu tên.

**2. Thu thập số điện thoại và email**

Thêm các khối **Get User Data** tiếp theo với định dạng kiểm tra dữ liệu tương ứng là số điện thoại và email, sau đó lưu vào các thuộc tính tùy chỉnh tương ứng.

**3. Thu thập địa chỉ giao hàng**

Thêm khối **Get User Data** để yêu cầu liên hệ nhập địa chỉ nhận hàng chi tiết và lưu vào thuộc tính tùy chỉnh địa chỉ.

**4. Hiển thị tóm tắt và nút xác nhận đặt hàng**

Thêm một khối văn bản hiển thị lại các thuộc tính vừa thu thập để người mua kiểm tra, kèm nút bấm xác nhận đặt hàng dẫn sang bước thông báo hoàn tất đơn.

## Chia sẻ liên kết cửa hàng và thuộc tính hệ thống

Ở góc dưới bên phải của các màn hình quản lý **Products**, **Categories** và **Vendors**, ChatbotX cung cấp thanh công cụ gồm hai nút:

* **Preview**: Mở cửa hàng thử nghiệm trên trình duyệt để kiểm tra bố cục hiển thị. Liên kết xem trước chỉ dùng để duyệt giao diện và không thể đặt hàng.
* **Get link**: Sao chép đường dẫn cửa hàng có gắn sẵn thuộc tính hệ thống `{{shop_token}}` ở cuối liên kết.

### Gắn liên kết cửa hàng vào nút bấm trong kịch bản

Thuộc tính hệ thống `{{shop_token}}` là mã định danh phiên mua sắm cá nhân hóa được ChatbotX tự động sinh riêng cho từng liên hệ. Khi liên hệ nhấn vào nút chứa liên kết này, hệ thống tự động nhận diện người mua, đồng bộ giỏ hàng của đúng liên hệ đó và gửi thông báo đơn hàng trực tiếp vào cuộc trò chuyện tương ứng.

> [!WARNING]
>
> Luôn gắn đường dẫn cửa hàng chứa `{{shop_token}}` vào nút bấm loại **Open Website** trong kịch bản, tin nhắn hàng loạt hoặc tin nhắn chăm sóc. Không dán trực tiếp đường dẫn thô dạng văn bản vào nội dung tin nhắn để đảm bảo liên kết được ký xác thực chính xác cho từng người nhận.

Bạn có thể lấy các loại đường dẫn chuyên biệt để điều hướng người mua đến đúng khu vực mong muốn:

| Loại liên kết | Nơi lấy liên kết | Trải nghiệm khi người mua nhấn nút |
| - | - | - |
| **Liên kết trang chủ cửa hàng** | Nút **Get link** ở góc dưới màn hình **Products** | Mở trang chủ Webview hiển thị toàn bộ danh mục và sản phẩm của cửa hàng. |
| **Liên kết danh mục ngành hàng** | Menu **Actions (...)** của một danh mục > chọn **Get link** | Mở thẳng vào danh sách các sản phẩm thuộc danh mục đó. |
| **Liên kết thương hiệu / nhà cung cấp** | Menu **Actions (...)** của một Vendor > chọn **Get link** | Mở thẳng vào gian hàng gồm các sản phẩm của nhà cung cấp đó. |
| **Liên kết chi tiết sản phẩm** | Trường **Public URL** trong màn hình chỉnh sửa sản phẩm | Mở trực tiếp trang chi tiết của sản phẩm để khách chọn biến thể và thêm vào giỏ. |

### Sử dụng thuộc tính trong kịch bản Ecommerce

Trong các kịch bản thanh toán và xác nhận đơn hàng, khối văn bản hỗ trợ chèn các thuộc tính của liên hệ (System Fields và Custom Fields):

| Nhóm thuộc tính | Tên thuộc tính | Công dụng trong kịch bản |
| - | - | - |
| **Định danh cửa hàng** | `{{shop_token}}` | Tự động gắn vào cuối đường dẫn Webview để định danh giỏ hàng và đơn hàng của liên hệ. |
| **Thuộc tính hệ thống của liên hệ** | `{{first_name}}`, `{{full_name}}`, `{{phone}}`, `{{email}}`, `{{user_country}}` | Chào hỏi cá nhân hóa theo tên và hiển thị thông tin hồ sơ mặc định của liên hệ. |
| **Thuộc tính tùy chỉnh thu thập khi Checkout** | Các thuộc tính tùy chỉnh lưu tên người nhận, số điện thoại, địa chỉ nhận hàng, ghi chú | Lưu trữ thông tin giao hàng thu thập từ khối **Get User Data** trong Checkout Flow và hiển thị đồng nhất ở kịch bản xác nhận đơn hàng. |

> [!NOTE]
>
> Nếu muốn gửi biên lai liệt kê tự động mã đơn hàng, danh sách từng mặt hàng kèm đơn giá và tổng thanh toán, hãy chọn chế độ **Order confirmation message** là **Default message**. Nếu dùng chế độ **Run a flow**, hãy chèn các thuộc tính tùy chỉnh đã thu thập ở kịch bản thanh toán để thông tin người nhận luôn khớp hoàn toàn. Xem chi tiết hướng dẫn nhúng liên kết vào nút bấm và hành trình đặt hàng thực tế tại bài [Tạo kịch bản bán hàng và quy trình mua hàng từ A đến Z](https://chatbotx.io/docs/vi/tools/ecommerce/shopping-flow.md).


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