---
title: "Flow và paywall"
description: "So sánh hai cách bán hàng trong ứng dụng với Adapty: flow & paywall được xây dựng trong Flow & Paywall Builder, hoặc paywall tùy chỉnh do bạn tự render trong code."
---

> **AI agents**: to search Adapty docs faster and with fewer tokens, install the Adapty skills: `npx adapty skills install --yes`

Màn hình paywall hiển thị các sản phẩm của bạn và cho phép người dùng mua chúng. Adapty cung cấp cho bạn hai cách để xây dựng:

- **Flows & paywalls**: Bạn thiết kế màn hình trong [Flow & Paywall Builder](adapty-flow-builder), và Adapty SDK sẽ render chúng trực tiếp trong ứng dụng của bạn. Có thể xây dựng một paywall đơn lẻ, hoặc toàn bộ onboarding kết thúc bằng một paywall.
- **Custom paywall**: Bạn tự xây dựng màn hình trong code ứng dụng và lưu các sản phẩm cần bán trong Adapty dưới dạng [custom paywall](paywalls). Adapty xử lý việc mua hàng.

## So sánh flow & paywall với paywall tùy chỉnh \{#compare-flows--paywalls-with-custom-paywalls\}

| | Flows & paywalls | Custom paywalls |
|---|---|---|
| **Ai xây dựng giao diện** | Bạn, trong trình chỉnh sửa trực quan không cần code. SDK render giao diện trực tiếp, không qua web view. | Đội ngũ lập trình của bạn, trong code ứng dụng. |
| **Bắt đầu như thế nào** | Một [mẫu](paywall-builder-templates), canvas trống, hoặc [import từ Figma](import-from-figma). | Màn hình và design system hiện có của bạn. |
| **Xây dựng bằng AI trên dashboard** | [AI Editor](flow-ai-editor) có thể thay đổi phong cách, viết lại, hoặc sắp xếp lại màn hình từ một yêu cầu bằng ngôn ngữ thông thường hoặc ảnh chụp màn hình tham chiếu. | Không khả dụng. |
| **Xây dựng bằng công cụ AI coding của bạn** | [Skill flow-generator](flow-generator-skill) xây dựng một flow hoặc paywall từ mô tả hoặc ảnh chụp màn hình, và chỉnh sửa nội dung, ngôn ngữ, và màn hình. [Skill flow-audit](flow-audit-skill) kiểm tra các vấn đề trước khi bạn xuất bản. | [Skill SDK integration](adapty-sdk-integration-skill) tạo custom paywall thông qua [Developer CLI](developer-cli-reference#adapty-paywalls-create) và viết code mua hàng trong ứng dụng của bạn. |
| **Thay đổi mà không cần phát hành app** | Thiết kế, nội dung, màn hình, logic và sản phẩm. | Các giá trị [Remote Config](customize-paywall-with-remote-config) mà code của bạn đọc. Thay đổi layout cần phát hành app. |
| **Thiết kế khác nhau theo đối tượng** | Bất kỳ flow nào bạn xây dựng, được gán cho một đối tượng trên placement. | Chỉ các thiết kế được tích hợp sẵn trong phiên bản app mà người dùng đang chạy. |
| **Hành trình nhiều màn hình** | Màn hình onboarding, [quiz](onboarding-quizzes), và [phân nhánh](onboarding-navigation-branching) trước paywall, với câu trả lời của người dùng được [truyền vào app](ios-flow-input). | Tùy thuộc vào những gì code của bạn xây dựng. |
| **Bản địa hóa** | [Ngôn ngữ](add-paywall-locale-in-adapty-paywall-builder) theo từng màn hình trong builder. | [Remote Config](add-remote-config-locale) theo từng ngôn ngữ, với dịch thuật AI trên dashboard. |
| **A/B test** | Giữa các flow hoặc paywall trên một flow placement. | Giữa các custom paywall trên một paywall placement. |
| **Phân tích** | [Chỉ số flow](flow-metrics), với doanh thu được gán cho từng màn hình. Lượt xem được theo dõi tự động. | [Chỉ số custom paywall](paywall-metrics). Code của bạn báo cáo từng lượt xem cho Adapty. |
| **Mua hàng trên web** | Có, với [web paywall](web-paywall). | Có, với [web paywall](web-paywall). |
| **Kích thước app** | Màn hình và hình ảnh tải từ Adapty khi app của bạn fetch flow, vì vậy một paywall mới không làm tăng kích thước app bundle. | Mọi màn hình, hình ảnh và chuỗi ký tự đều được đóng gói trong app bundle. |
| **Loại placement** | [Flow placement](create-placement). | [Paywall placement](create-placement). |
| **SDK Adapty** | v4.0 trở lên. | Bất kỳ phiên bản nào. |

Paywall từ Flow & Paywall Builder và paywall tùy chỉnh không thể dùng chung một A/B test, vì mỗi loại cần một loại placement riêng. Để so sánh chúng, hãy [triển khai dần dần paywall builder](flow-gradual-rollout) trên placement riêng của nó.

## Nên chọn loại nào \{#which-one-to-choose\}

- **Chọn flow và paywall** khi bạn muốn thiết kế, thử nghiệm và thay đổi màn hình mua hàng mà không cần viết code UI hay phát hành phiên bản mới, hoặc khi paywall là một phần của onboarding.
- **Chọn custom paywall** khi bạn muốn tự xây dựng màn hình bằng code của mình — ví dụ, để tái sử dụng các component có sẵn trong ứng dụng.

Khi ứng dụng của bạn hiển thị màn hình, custom paywall trong Adapty là tập hợp sản phẩm cố định mà màn hình đó bán, chẳng hạn như gói tuần và gói tháng. Adapty báo cáo tỷ lệ chuyển đổi và doanh thu cho từng paywall, giúp bạn so sánh xem tập hợp sản phẩm nào bán tốt hơn. Bạn có thể hiển thị các paywall khác nhau cho các đối tượng khác nhau trên cùng một placement, và A/B test chúng với nhau. Để bán các sản phẩm khác, chỉ cần thay thế paywall trên placement trong dashboard — không cần phát hành lại ứng dụng.

Cả hai đều nằm trong **Flows & Paywalls** ở menu chính của Adapty: flows & paywalls ở tab **Flow & Paywall builder**, custom paywalls ở tab **Custom Paywalls**.

Paywall được tạo trong [Paywall Builder cũ](adapty-paywall-builder) vẫn có thể chỉnh sửa trên tab **Custom Paywalls & Legacy**, nhưng bạn không thể tạo mới tại đó. Để chuyển đổi một paywall được tạo cho Adapty SDK 3.x thành một flow nháp trong khi bản gốc vẫn hoạt động, hãy dùng thao tác **Move to new builder** — xem [Chuyển paywall thành flow](convert-paywall-to-flow). Để migration đầy đủ, bao gồm cả placement và nâng cấp SDK, xem [Migrate sang flows](migrate-to-flows).

<CustomDocCardList ids={['adapty-flow-builder', 'paywalls']} />