Screenshots use the English dashboard and a synthetic local test. The conversation appears under the signed-in test contact; the neighborhood and budget are fictional demonstration values. Use your own business scope and test contact when following along.
1. Create the action
Open Configuration → Actions and select the Collect data card. Give the action a specific name:
2. Define the three fields
Select Add field for each row below. Keep Required checked on all three.
Field names are stable identifiers for saved values. Use lowercase letters, numbers, and underscores, starting with a letter. Field descriptions guide the agent; they are more useful than a label alone.
Use these descriptions:
neighborhood

Within 6 months option. Do not silently force an answer outside those choices into the nearest option.

900000 as a number, not the formatted string $900,000. The USD convention comes from your field name and instructions. A number type alone does not explain the currency to the customer.
“Required” means a value must be supplied before submission. Confirmation before saving is part of this action’s instructions; the checkbox alone does not add a confirmation step.
3. Leave the destination empty
For this example, keep HTTPS destination and Bearer token empty. The submission stays in Visito.
For a controlled Webchat test, reopen the action, choose Active, and select Save changes. Use synthetic preferences. In this local demonstration, the planner was temporarily disabled to test the response layer’s action flow; production routing was not verified.

4. Test a natural conversation
Start a new Webchat conversation. Do not tell the agent an internal tool name: test the customer’s normal intent.- Customer: “Hi! I’m looking to buy a home in New York City. Can I share what I’m looking for?”
- The agent asks for neighborhood, maximum budget in USD, and timeframe.
- Customer: “Park Slope in Brooklyn, with a maximum budget of $900,000 USD.”
- The agent asks for the missing timeframe instead of saving an incomplete record.

- Customer: “Within the next six months.”
- The agent repeats all three preferences and asks whether they are correct.

- Customer: “Yes, that is correct. Please save those preferences.”
- The action runs, Webchat shows Request saved, and the agent confirms the saved preferences.

5. Inspect Actions history
Open Actions → History, select the action in the Action filter, and open the relevant execution. Refresh if the newest execution has not appeared. The demonstration shows Completed → Information saved, environment Live, the three parameters, and a response containingstatus: submitted and a submissionId. “Live” describes the channel mode; the screenshot is from a local test environment.

6. Inspect the conversation and saved record
Select Open conversation in the execution detail. Expand NYC homebuyer preferences · Completed in the transcript. It shows Outcome: Saved, the submitted fields and their types, and the action version used.

Reuse and troubleshoot
- The agent cannot use it: check mode, business scope, saved changes, and whether routing handed the conversation to a person before the action could run.
- No record in CRM after a Playground test: expected. Playground submissions are isolated from live CRM records.
- A required answer is missing: the agent should ask for it. Do not fill gaps with invented values.
- The customer gives a different timeframe: ask them to choose a supported option, or intentionally edit the action’s choices for your business.
- The customer corrects a value: confirm the revised preferences before submission. Do not assume a new invocation edits the earlier record.
- The answer says saved: verify the receipt and submission; the natural-language answer alone is not sufficient evidence.