Variables ({{...}}) and language in a flow

Last updated: 22 October 2026 · 5 min read

A flow's texts can use the customer's earlier answers and the data the app sent. For languages there is the “Language” step and separate paths.

Steps

  1. 1

    Variables

    • {{order_no}}: the “Save answer as” name of a “Question”, or a “Form” field's key.
    • {{vars.order_no}}: the same, in the mobile app.
    • {{vars.lang}}: the language chosen in “Language” (az, en, ru), in the mobile app.
    • {{data.order_id}}: the app event's data (startFlow's second argument). A nested field is {{data.order.id}}.

    “Insert a variable” under the text box lists the names this flow saves and the event's data fields.

  2. 2

    If a variable comes out empty

    • The name differs from the one the “Question” saved (case and _ included).
    • The answer has not been given yet: the text is in a step before the question.
    • The app did not send that data field.
    • The contact's name, email and attributes are not variables in text. A “Condition” step checks them.
    • In the mobile preview {{…}} stays as written: there is no user. That is expected.
  3. 3

    Several languages

    A flow's texts go out in the language they are written in. For several languages:

    • add a “Language” step and build each language's path in that language, or
    • make a “Reusable” flow per language and move to it with “Start another flow” after “Language”.
  4. 4

    The flow's languages

    Choose the languages a flow is written in under “Settings” › “Languages”: “Azerbaijani”, “English”, “Russian”. A new flow has Azerbaijani and English; at least one stays. The change is saved with the draft.

    • “Check” warns at a step that sends customers to a flow without their language: “"X" does not have RU among its languages.” If X is written in Russian, tick “Russian” under its “Languages”.
    • In the mobile app, if the customer's language is one of the flow's languages, the flow starts in it (words like “← Back” are in that language).

    In the mobile app the chosen language is kept on the contact: in the next conversation the language question is skipped and the flow takes that language's path. The same when the app set the language with Clomni.updateUser(language = "en").

  5. 5

    The messenger's own language

    The messenger's buttons and words (“Write a message…”, “Start a new conversation”) do not depend on the flow. They come from the inbox's “Appearance” › “Languages” and the app's setLanguage. The “AZ | EN | RU” switch in the mobile preview changes this language.

Document