Tayon Help

Reuse an answer later in the flow

Name an answer with an identifier, then print it back on a later screen, put it in an email, or test it in a condition.

Every answer is stored under a name you choose. Write that name with a $ in front of it and Tayon replaces it with the answer.

Ask What is your name? with the identifier NAME, and a later screen that says Thanks $NAME, here is what we found shows Thanks Maya, here is what we found.

#Name the answer

The name is the Identifier (Variable Name) on a screen’s Interaction tab.

  1. Open the screen that asks the question.
  2. On the Interaction tab, set Identifier (Variable Name).
  3. Use it later as $ plus that name.

Rules of thumb:

  • Uppercase, no spacesNAME, EMAIL, COMPANY_SIZE.
  • Short. You will type it a lot.
  • Descriptive. Q4 tells nobody anything six months from now.
  • Unique per flow. Two questions sharing an identifier means the second answer overwrites the first.

#Where you can use them

Place Example
Screen text Thanks $NAME
Email subject and body New enquiry from $NAME at $COMPANY
SMS and WhatsApp messages Hi $NAME, your quote is ready
Split conditions $BUDGET > 5000
Redirect URLs https://example.com/thanks?name=$NAME
Webhook parameters email=$EMAIL
Dataset filters and updates STATUS=Confirmed

Anywhere a variable is accepted, the field usually says so — the message boxes carry the reminder Use $IDENTIFIER to include collected data.

#Variables you get for free

You do not have to collect these; they are always available.

#The session

Variable What it holds
$FLOWPOINTS The running score from the options this visitor picked.
$FLOWPARAMETER A custom value passed in the link.
$FLOWSESSION An identifier for this visit.

#Where they came from

$UTM_SOURCE, $UTM_MEDIUM, $UTM_CAMPAIGN, $UTM_TERM and $UTM_CONTENT hold whatever campaign tags were on the link that brought them.

That means a single site can greet ad traffic and newsletter traffic differently, and pass the campaign name straight through to your CRM.

#Your own account

$ACCOUNTNAME, $ACCOUNTFIRSTNAME, $ACCOUNTLASTNAME, $ACCOUNTEMAIL and $ACCOUNTPHONE hold the account owner’s details. Useful in a closing screen — If you have questions, reply to $ACCOUNTEMAIL.

#The contact, if you already know them

When the visitor is an existing contact, $CRMDATA. variables read from their record: $CRMDATA.NAME, $CRMDATA.EMAIL, $CRMDATA.PHONE, $CRMDATA.BUSINESS, $CRMDATA.CITY, $CRMDATA.STAGE, $CRMDATA.QUALITY, $CRMDATA.TAGS and more.

#The person handling them

$FLOWASSIGNED.FNAME, $FLOWASSIGNED.LNAME, $FLOWASSIGNED.EMAIL and $FLOWASSIGNED.PHONE hold the details of the team member the lead is assigned to — so a confirmation screen can name the person who will call.

#A booking they just made

After a calendar step, $FLOWCALENDAR.NAME, $FLOWCALENDAR.INFO, $FLOWCALENDAR.PLACE and $FLOWCALENDAR.ADDRESS describe what they booked.

#Doing arithmetic and formatting

A small set of formulas works inside any content:

Formula What it does
FLOW.CALCULATE(expression, decimals) Works out a sum. FLOW.CALCULATE($PRICE * 12, 2).
FLOW.FORMATDATE(date, format) Formats a date as DATE, TIME or DATETIME.
FLOW.FORMATNUMBER(number, format) Formats a number — including currency and percentages.
FLOW.SUBSTRING(text, start, end) Takes part of a value.
FLOW.REPLACE(text, find, replace) Swaps text out.

So a quote screen can read:

Your annual total is FLOW.FORMATNUMBER(FLOW.CALCULATE($MONTHLY * 12, 2), CURRENCYUS)

#Pulling a value out of a JSON reply

When a webhook stores its reply under an identifier, JSON() reaches inside it:

JSON($WEBHOOK_RESPONSE.customer.name)

Paths can index into lists too — JSON($DATA.results[0].name).

#When a variable prints as nothing

Almost always one of these:

  1. The question comes later than the screen using it. Variables only hold what has already been answered.
  2. The identifier does not match. A typo produces an empty value silently — there is no error.
  3. The visitor skipped it. An optional question that was left blank has nothing to print.

Updated: