You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/content/docs/guides/flow-builder/customize-flow-with-remote-config.mdx
+1-4Lines changed: 1 addition & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -102,10 +102,7 @@ Next, [create a placement](create-placement) and add the flow to it. Then [rende
102
102
103
103
## Add a locale
104
104
105
-
To localize your flow, click **Add locale** above the editor and fill in:
106
-
107
-
-**Code**: The locale code, for example `en`, `fr`, or `de`.
108
-
-**Name**: The display name, for example English or French.
105
+
To localize your flow, click **Add locale** above the editor and select locales.
109
106
110
107
Adapty adds a new column to the editor for that locale. Edit each column independently — at runtime, the SDK returns the `AdaptyRemoteConfig` entry whose `locale` matches the user's selection.
Copy file name to clipboardExpand all lines: src/content/docs/version-3.0/add-paywall-locale-in-adapty-paywall-builder.mdx
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,7 +12,7 @@ Finish setting up your flow in the default locale before adding other languages.
12
12
13
13
## Add and set up localization
14
14
15
-
1. In the left panel, click <Inlineid="localizations.svg"alt="Localizations" />. Then, click **Add locale**. Enter the locale code (e.g., `fr`) and name (e.g., `French`), then confirm. Repeat for each locale you want to add.
15
+
1. In the left panel, click <Inlineid="localizations.svg"alt="Localizations" />. Then, click **Add locale**. Select the languages to add.
Copy file name to clipboardExpand all lines: src/content/docs/version-3.0/app-store-offers.mdx
+1-3Lines changed: 1 addition & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -111,6 +111,4 @@ Adapty automatically applies win-back offers if users are eligible. Set up your
111
111
After you've added offers, continue the setup:
112
112
- If you also have **Google Play apps**, set up [Google Play offers](google-play-offers).
113
113
- If you have **promotional or win-back offers**, [add them to Adapty](create-offer).
114
-
- If you only have **introductory offers** and no promotional or win-back offers, you're all set. These sections may still be useful:
115
-
-[Working with offers in the Adapty Paywall Builder](create-offer#paywall-builder)
116
-
-[How Adapty works with offers](create-offer#how-adapty-works-with-offers)
114
+
- If you only have **introductory offers** and no promotional or win-back offers, you're all set. The [How Adapty works with offers](create-offer#how-adapty-works-with-offers) section may still be useful.
Copy file name to clipboardExpand all lines: src/content/docs/version-3.0/create-offer.mdx
+18-18Lines changed: 18 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,7 +13,7 @@ Adapty allows you to offer trials or discounts to new, existing, or churned subs
13
13
After you have set them up in App Store Connect or Google Play Console, you need to add them to Adapty in two steps:
14
14
15
15
1.[Add offers to products in Adapty using the offer IDs from stores.](#1-create-offer)
16
-
2.[Add offers to paywalls so they can be applied.](#2-add-offer-to-paywall)
16
+
2.[Display the offer in a flow or paywall.](#2-display-offer)
17
17
18
18
:::warning
19
19
Introductory offers (App Store) are applied automatically if the user is eligible. Do not add them to products in Adapty.
@@ -63,34 +63,34 @@ If the **App Store Offer ID** or **Play Store Offer ID** field is not active, sw
63
63
6. (optional) Add more offers if needed by clicking **Add offer**.
64
64
7. Click **Save** to add the offers to the product.
65
65
66
-
## 2. Add offer to paywall
66
+
## 2. Display offer
67
67
68
-
:::info
69
-
You can't add offers to paywalls in the **live** status. If you want to add an offer to an existing paywall, [duplicate](duplicate-paywalls) it and configure products in a new paywall.
70
-
:::
68
+
Once an offer is attached to a product, surface it where users see that product — in a flow or in a paywall.
71
69
72
-
To make an offer visible and selectable within a [paywall](paywalls) for your app's users, follow these steps:
70
+
### Add offer to flow
73
71
74
-
1. When creating or editing a paywall, in the **General** tab, add a product to which you've just added the offer.
75
-
2. Choose an offer you [created earlier](create-offer) for this product from the **Offer** list. The list is available only for the products that have offers.
76
-
3. If needed, add more products and offers, but you can add only one offer for each product.
72
+
In the [Flow Builder](adapty-flow-builder), an offer is attached to a product on a Products element. First add the product element and assign products to it — see [Set up purchases](paywall-product-block).
77
73
78
-
<ZoomImageid="offer-paywall.webp" />
74
+
To attach an offer:
75
+
76
+
1. On the canvas, select the product card that should show the offer.
77
+
2. In the right panel, under **Product**, select the product, then pick the offer from the **Select offer (optional)** dropdown.
79
78
80
-
### Paywall builder
79
+
<ZoomImageid="offer-flow.webp"width="500px" />
80
+
81
+
### Add offer to paywall
81
82
82
83
:::info
83
-
Paywalls created with the Adapty Paywall Builder will display only the first phase of a [multi-phase Google subscription offer](https://support.google.com/googleplay/android-developer/answer/12154973). However, rest assured that when a user purchases the product, all offer phases will be applied as configured in Google Play.
84
+
You can't add offers to paywalls in the **live** status. If you want to add an offer to an existing paywall, [duplicate](duplicate-paywalls) it and configure products in a new paywall.
84
85
:::
85
86
86
-
When you create a paywall in the Adapty Paywall Builder, you have some more customization options for trials:
87
-
-**Toggle**: In **Products**, set **Product grouping** to **Toggle** and add product-offer combinations for each toggle state. The most common use case is to include a product without an offer (e.g., direct purchase without a free trial) and a different product with an offer attached.
88
-
89
-
<ZoomImageid="trial-toggle.webp" />
87
+
To make an offer visible and selectable within a [paywall](paywalls) for your app's users, follow these steps:
90
88
91
-
-**Dynamic text**: You can make the purchase button text change depending on the offer available to the user seeing the paywall. You can set different texts for **Default**, **Free trial**, **Pay as you go**, and **Pay up front**.
89
+
1. When creating or editing a paywall, in the **General** tab, add a product to which you've just added the offer.
90
+
2. Choose an offer you created earlier for this product from the **Offer** list. The list is available only for the products that have offers.
91
+
3. If needed, add more products and offers, but you can add only one offer for each product.
Copy file name to clipboardExpand all lines: src/content/docs/version-3.0/offers.mdx
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -19,7 +19,7 @@ To process offers, Adapty needs the following setup:
19
19
-[App Store](app-store-offers)
20
20
-[Google Play](google-play-offers)
21
21
2. For App Store: [upload your In-App Purchase Key from App Store Connect to Adapty](app-store-connection-configuration#step-4-for-trials-and-special-offers--set-up-promotional-offers).
22
-
3.[Add the offers to Adapty and assign them to a paywall](create-offer).
22
+
3.[Add the offers to Adapty and display them in a flow or paywall](create-offer).
23
23
24
24
:::note
25
25
Introductory offers on iOS are applied automatically if the user is eligible. Do not add them to Adapty.
In Adapty, **paywalls are the only way to show and sell products in your app**. This way, you can easily track how different product sets perform for different user groups and control how each product is displayed.
17
+
In Adapty, a **paywall** is a remotely configured set of products you sell in your app. Managing products through a paywall lets you track how different product sets perform for different user groups and control how each product is displayed.
18
18
19
-
Adapty offers you two main ways to design a paywall:
20
-
-**Use the Adapty Paywall Builder**: You [create a complete, purchase-ready paywall in the no-code builder](quickstart-paywalls). Adapty automatically renders it and handles all the complex purchase flow, receipt validation, and subscription management behind the scenes.
21
-
-**Design your paywall manually**: When designing a paywall manually, you have the following options:
22
-
-[Use a remote config](customize-paywall-with-remote-config): Instead of hardcoding values in your app code, you can manage your paywall elements (like text and media) dynamically from the dashboard without redeploying your app.
23
-
- <InlineTooltiptooltip="Delegate handling purchases to Adapty">[iOS](making-purchases), [Android](android-making-purchases), [React Native](react-native-making-purchases), [Flutter](flutter-making-purchases), and [Unity](unity-making-purchases)</InlineTooltip>: Integrating with the store APIs on your own is very time-consuming. Instead of doing it, you can use just one method in the Adapty SDK that handles all the complicated purchase logic.
19
+
You render a paywall in your own app code. Adapty provides two features to help:
20
+
-**Remote config**: [Manage paywall elements](customize-paywall-with-remote-config) like text and media dynamically from the dashboard, without redeploying your app.
21
+
-**SDK purchase methods**: Instead of integrating with store APIs yourself, use one Adapty SDK method that handles the purchase logic — see <InlineTooltiptooltip="Delegate handling purchases to Adapty">[iOS](making-purchases), [Android](android-making-purchases), [React Native](react-native-making-purchases), [Flutter](flutter-making-purchases), and [Unity](unity-making-purchases)</InlineTooltip>.
To proceed with this guide, make sure you've completed the [store integration](integrate-payments) and created at least one product as described in the previous [guide on adding products](quickstart-products).
17
17
:::
18
18
19
-
Now that you have products, you need a way to show them to users. Adapty gives you two options:
19
+
Now that you have products, you need a way to show them to users. Adapty gives you three options:
20
20
21
21
-**Flow Builder (recommended)**: No-code visual editor for the full purchase journey. The Adapty SDK renders the result natively, so there's no UI code to write.
22
22
-**Manual paywall**: You create a paywall, attach products to it, and render the UI yourself in app code.
Both options end the same way: you attach what you built to a [placement](placements). The placement is what your app calls at runtime to fetch the right content for the right user.
25
26
26
27
<TabsgroupId="purchase-setup"queryString>
27
28
<TabItemvalue="flow-builder"label="Use the Flow Builder"default>
28
29
30
+
:::important
31
+
The Flow Builder currently supports iOS SDK v4 and later only. Support for other platforms is coming soon.
32
+
:::
33
+
29
34
A flow is one or more screens with products embedded directly. You design it in the [Flow Builder](adapty-flow-builder) — no code required.
30
35
31
36
The Adapty SDK renders flows natively on each platform. Your app calls `getFlow`, and the SDK presents the screens, handles purchases, and reports events. No separate UI code, no paywall to maintain alongside.
@@ -155,6 +160,41 @@ In your app code you hardcode only the placement IDs. Everything else — which
155
160
Adapty lets you show different paywalls to various user groups and analyze performance. Learn more about [audiences](audience) and [A/B tests](ab-tests).
A paywall built in the [Paywall Builder](adapty-paywall-builder) is a no-code screen with products embedded directly. The Adapty SDK renders it natively, so there's no UI code to write.
167
+
168
+
:::warning
169
+
The Paywall Builder is fully functional, but Adapty is no longer adding features or shipping updates for it. For new projects, use the [Flow Builder](adapty-flow-builder) instead.
170
+
:::
171
+
172
+
### 1. Build the paywall
173
+
174
+
1. Go to [**Paywalls**](https://app.adapty.io/paywalls) in the Adapty main menu.
175
+
2. Click **Create paywall**.
176
+
3. Enter a **Paywall name**. This is an internal identifier in the Adapty Dashboard.
177
+
4. Click **Add product** and pick the products to display on the paywall.
178
+
5. Open the **Builder & Generator** tab. Create a paywall from a template or generate it using AI.
179
+
6. Switch on the **Show on device** toggle so the SDK can render it.
180
+
181
+
<ZoomImageid="design-paywall.gif" />
182
+
183
+
### 2. Add the paywall to a placement
184
+
185
+
Create a <InlineTooltiptooltip="placement">A placement is a specific point in your app where you show a flow, paywall, onboarding, or A/B test. Placements let you target specific [audiences](audience) with your content. Learn more about [placements](placements).</InlineTooltip> so your app can request the paywall at runtime.
186
+
187
+
1. Go to [**Placements**](https://app.adapty.io/placements) in the Adapty main menu and switch to the **Paywalls** tab.
188
+
2. Click **Create placement**.
189
+
3. Enter a **Placement name** (e.g., `main` or `onboarding`). This is an internal identifier in the Adapty Dashboard.
190
+
4. Enter a **Placement ID**. You'll use this ID in the Adapty SDK to load the placement's paywall.
191
+
5. Click **Run paywall** and choose the paywall you built.
192
+
6. Click **Save & publish**.
193
+
194
+
<ZoomImageid="add-placement.gif" />
195
+
196
+
In your app code you hardcode only the placement IDs. Everything else — which paywall runs, which products it sells, how it looks — is configured in the Adapty Dashboard and can be changed anytime without an app update.
0 commit comments