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
description: "Add locales to a flow's remote config to serve different values per language or region."
4
+
metadataTitle: "Localize a Flow with Remote Config | Flow Builder | Adapty Docs"
5
+
---
6
+
7
+
A flow's remote config can hold a separate JSON payload for each locale. At runtime, the SDK returns the payload that matches the user's locale, so you can serve translated copy, different images, or other locale-specific values without shipping a new app version.
8
+
9
+
## Add a locale
10
+
11
+
To add a locale to a flow's remote config:
12
+
13
+
1. Open the flow in Flow Builder.
14
+
2. Click the remote config icon above the screen preview.
15
+
3. Click **Add locale** above the editor.
16
+
4. Fill in the dialog:
17
+
-**Code**: The locale code, for example `en`, `fr`, or `de`.
18
+
-**Name**: The display name, for example English or French.
19
+
20
+
Adapty adds a new column to the JSON editor for the locale.
21
+
22
+
<ZoomImageid="flow-remote-config-add-locale.webp"width="300px"alt="Add locale dialog with Code and Name fields" />
23
+
24
+
## Edit values per locale
25
+
26
+
Each locale's column accepts its own JSON-formatted data. Use the same keys across columns and translate the values for each locale.
27
+
28
+
For example, the English column:
29
+
30
+
```json showLineNumbers
31
+
{
32
+
"title": "Try for free!",
33
+
"cta": "Continue",
34
+
"trial_days": 7
35
+
}
36
+
```
37
+
38
+
And the Spanish column:
39
+
40
+
```json showLineNumbers
41
+
{
42
+
"title": "¡Prueba gratis!",
43
+
"cta": "Continuar",
44
+
"trial_days": 7
45
+
}
46
+
```
47
+
48
+
Columns are independent — editing one doesn't affect the others.
49
+
50
+
## Read the matching locale in your app
51
+
52
+
The SDK exposes one `AdaptyRemoteConfig` entry per locale on `AdaptyFlow.remoteConfigs`. Pick the entry whose `locale` matches your user, then read its `dictionary` or `jsonString` to use the values at runtime.
53
+
54
+
## Back up or move locales
55
+
56
+
Use the **Import/Export** menu above the editor to back up your remote config or copy it across flows. The exported JSON file holds every locale's payload at once. See [Customize flow with remote config](customize-flow-with-remote-config) for the file format.
Copy file name to clipboardExpand all lines: src/content/docs/version-3.0/onboarding-actions.mdx
+3-7Lines changed: 3 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -36,8 +36,7 @@ To set up an interaction:
36
36
37
37
Currently, you can add the following triggers to your flow:
38
38
-**On tap**: Starts an action when a user taps an element. The most common trigger; used primarily for navigation between screens.
39
-
-**On appear**: Starts an action as soon as an element becomes visible. Use it to trigger an animation or log an impression when a screen loads.
40
-
-**On submit**: Applies to input elements only. Mostly used for saving user input as variables.
39
+
-**On screen appear**: Starts an action as soon as a screen loads. Use it to trigger an animation or log an impression when a screen loads.
41
40
42
41
## Action types
43
42
@@ -89,8 +88,6 @@ For alerts, you must set up their **Title** and **Message**. In both, you can us
89
88
90
89
Updates the value of a variable in the flow. Before adding this action, create variables in the **Variables** panel on the left (see [Variables](onboarding-variables)).
91
90
92
-
Use it for remembering quiz answers and inputs, so you can customize the flow.
93
-
94
91
Click **Add variable** and set as many variables and their values as you need.
@@ -100,8 +97,8 @@ Click **Add variable** and set as many variables and their values as you need.
100
97
Triggers a purchase flow directly from a button or interaction in your onboarding. Use this to let users subscribe or buy a product without leaving the flow.
101
98
102
99
You can configure two behaviors for this action:
103
-
-**Purchase a product**: Initiates a native purchase for a product defined in the [Product block](paywall-product-block.md). You can select a product from the current screen or from a different screen in the flow.
104
-
-**Navigate to web paywall**: Sends the user to a [web paywall](web-paywall.md) instead of triggering a native purchase. Use this when you want to handle the transaction outside the app, such as for web-based subscription offers.
100
+
-**In-app store**: Initiates a native purchase. Set **Product** to a specific product, or to `products.selectedProduct` for the user's current selection on the screen.
101
+
-**Web payment**: Sends the user to a [web paywall](web-paywall.md) instead of triggering a native purchase. Use this when you want to handle the transaction outside the app, such as for web-based subscription offers.
105
102
106
103
<ZoomImageid="onboarding-purchase-action.webp"width="500px"alt="Purchase action configuration in the Edit action window" />
107
104
@@ -147,4 +144,3 @@ The flow executes only one rule — the first one it matches. If you need to exe
147
144
To learn how to make elements selectable and organize them into groups for use in conditions, see [Selectable elements and groups](flow-selectable-elements).
0 commit comments