Question Block

YouTube video (embedding unavailable)

2026-08-12

Set quick replies

Quick replies are convenient: the user clicks instead of typing. When setting the quick reply:

The "Answer Text" is shown to the user, and the "Answer Value" is saved to the variable.

Note
You can set quick replies on every channel. But some channels display the quick replies as buttons — Facebook, for example — and others do not, such as SMS. In that second case, you can still set quick replies, but you will need to explain to the user how to trigger them.

How do you give the instruction and set quick replies?

In the question box, for example, write "reply 1 for service A, reply 2 for service B", etc. Then, in the quick reply, set the "Answer Text" to "1", "2", etc. for matching, and the "Answer Value" to "service A", "service B", etc. to save the user’s option.

Channel
How to provide quick replies
Facebook
quick replies will be displayed as buttons
Telegram
quick replies will be displayed as buttons
WeChat
use buttons instead of quick replies, or give the instruction
WhatsApp
quick replies will be displayed in "Select Option"
SMS
give the instruction
Voice
give the instruction and use the Speech question or the DTMF question to ask for keypad or voice input
Google
quick replies will be displayed as buttons

How does matching work in quick replies?

As soon as the user’s input contains one of the "Answer Texts", the quick reply is considered matched (not case-sensitive). The order of these quick replies also matters, because the flow checks them one by one, in order. As soon as a quick reply matches, the check stops.

Skip Button

Add the Skip Button if the question can be skipped. The button label is also editable.

Wrong Answer

"Wrong Answer" is a very practical feature, because each answer type has its own pattern. An email address, for example, has to be “xxx@xx.xx”. You can use something like "Wrong email, try again" as the retry message and go to another step if there is no match after a few attempts.

However, the "xxx@xx.xx" format only filters out wrong emails, not fake emails. To check whether an email is real, use the NicoApp with a third-party verification tool.

No Input

Similarly, "No Input" helps redirect the flow when the user’s input times out. By default, a question expires in 1 hour. Shorten this time if needed.

Ask for Image/Audio/Video/File/Recording

Warning
you will need text variables to save the URLs of these 5 answer types

When the user sends a document, what is saved in the variable is a URL pointing to the document, not the document itself, because a media file can be very large. Later, if you want to send that document in the send message step, choose "Send Media from URL" and enter the variable there.

Ask for Choice

In this question type you list a limited set of quick replies, and the user can only choose one of them. When asking for the property type, for example, list only house, townhouse and apartment as quick replies. That way, if the user does not click one of these three, the retry message appears.

Ask for Date/DateTime

Warning
Apart from Facebook Messenger and Google My Business, the other channels do not have a date picker when the user enters Date/DateTime. So you must instruct the user: "Enter the date/datetime in exactly this format: YYYY-MM-DD / YYYY-MM-DD hh:mm:ss". No other format will be recognized.

Ask for Phone

The basic validation of the phone number question is:

  • only these 11 characters are accepted: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, +.
  • the “+” sign is only accepted at the beginning of the phone number
  • the value must have more than 6 characters

Ask for Email

The basic validation of the email is:

  • the value must have @
  • the value must have .

Ask for Location


This is the question format exclusive to the WhatsApp channel.
For now, it only works with on‑premise WhatsApp numbers.

When this question is triggered, WhatsApp requests access to the user’s current location; if the user shares the location, the latitude and longitude are saved in the user Custom Field you have defined.

Silent Input

Silent Input is a type of question node that captures several inputs from the user over a set period and then joins everything into a single response.

One characteristic that sets Silent Input apart from the other question nodes is that you do not have to ask the user a question to capture the answers.

The input collection duration can be adjusted in “Advanced Settings”.

Question step in the Voice Bot

Note
You can always put, in the text box of a send message step or a question step, a URL pointing to your mp3 file (starting with "https://" and ending with ".mp3" or ".mav"). That way, the flow plays the audio file instead of converting the text into audio.
Note
You can put the direct link in the text box or store it in a text variable. You can also combine the audio URL with text. But do not leave the URL stuck to the text, otherwise the system does not recognize it as an audio link. See the screenshot below.

Voice Bot - Ask for Speech

Speech is usually used to get short answers. When the flow asks for a speech input, it listens to what the user says and converts the speech into text, with a confidence score. The score is between 0 and 1. The closer to 1, the more reliable the speech analysis was.

Note
You may want to add a Condition step to discard conversions with low confidence. For example, when the confidence score is lower than 0.7, ask for the answer again.

Use the "Advanced Settings" to improve the conversion:

Select the matching speech model and language. The "Numbers and Commands" speech mode helps improve the recognition rate when the answer is a string of numbers, for example. Note that Twilio charges for the use of this mode. And, most importantly, give the flow some hints: keywords that may appear in the speech (separated by commas and with no space).

Voice Bot - Ask for DTMF (keypad)

DTMF is the input from the phone keypad: the numbers 0 to 9, * and #. It is normally used to build the main menu of your Voice Bot, like those messages you have already heard: "Hello, press 1 for xxx, press 2 for xxx, ..."

"Number of Digits" is the number of digits you expect to receive. A credit card number, for example, has 14 or 16 digits, while a postal code has 4 or 6.

The "Stop Key" is "#" by default, but it is also editable. You will need the "Stop Key" when you do not know how many digits to expect. Do not forget to mention the “Stop Key” in the question box. 🤖🤖

Note
The "No Input" timeout in the voice question is important. It is often set to a few seconds, while on the other channels the default is 1 hour.

Voice Bot - Ask for Recording

Just as when asking for an image, audio, video or file, here you also need a text variable to save the URL of the recording file. See the Advanced Settings for more details, such as "Stop Key" and "Max Recording Duration".

You can access the recording file through the URL or manually, in the "Recordings" section shown below:

Here you see all the recordings from "Record Question" and "Transfer", with a "Play" button to listen to the audio.

Voice Bot - Ask for Transfer

Transfer works more like an action than a question. Since the actions of the Action step are shared by all channels, we placed transfers in the Question steps.

Note
The transfer number must be in E.164 format. For example: +553188887777

You can record the conversation after the transfer, for training, for example. The recording is also kept in the "Recordings" section, in the left sidebar.

Hang up calls

Worth mentioning: if your clients need to come back to the flow after the transferred conversation, there are 2 ways to do this:

  • the transferred party hangs up first
  • your clients press the star key (the option must be enabled in the Advanced Settings)

Either way, do not forget to warn your clients before the transfer.

Add an extension to the phone number

Add an extension to a phone number using the "#" sign. For example: +553188887777#wwww1234. Each "w" waits half a second.

Say I have a Voice Bot on the number +553188887777 and I have placed a DTMF question right after the start point of the main flow. The extension "1234" will be considered the input of that DTMF question. This is how you route calls automatically.

Transfer to multiple numbers

You can put several numbers in the "Transfer To Phone Number" field, separated ONLY by commas. For example: +553188887777,+553188887778#wwww1234,+553188887779

The flow calls these 3 numbers at the same time; the first person to answer receives the transfer, and the other numbers stop ringing. Your telephony provider charges for a single call, because only one number was transferred successfully.

Voice Bot - Ask for Payment

Payment works more like an action than a question.

PCI Mode (Twilio)

If you use Twilio, you will need to enable PCI mode in your Twilio account to capture a payment, both in test mode and in production.

Search for "Voice Settings" in your account,

click the "Enable" button:

Edit Prompts

All prompts come already set in English. Feel free to change them if you need to — to switch language, for example. There are 4 pieces of information to collect from a card.

  • Credit card number
  • expiration date
  • CVV
  • postal code (if needed, enable the option in the Advanced Settings).

Each piece of information has 3 speeches to configure: the question, the timeout and the invalid value:

Payment Connector

To get a "Payment Connector", which is a "Unique connector ID", you need to access your phone number provider and your payment service provider. With Twilio and Stripe, for example, go to twilio.com and follow steps 1 to 4 in the 2 images below: