Virtual Agent, when to use vaVars or vaInputs.Description<!-- div.margin { padding: 10px 40px 40px 30px; } table.tocTable { border: 1px solid; border-color: #e0e0e0; background-color: #fff; } .title { color: #d1232b; font-weight: normal; font-size: 28px; } h1 { color: #d1232b; font-weight: normal; font-size: 21px; margin-bottom: 5px; border-bottom-width: 2px; border-bottom-style: solid; border-bottom-color: #cccccc; } h2 { color: #646464; font-weight: bold; font-size: 18px; } h3 { color: #000000; font-weight: bold; font-size: 16px; } h4 { color: #666666; font-weight: bold; font-size: 15px; } h5 { color: #000000; font-weight: bold; font-size: 13px; } h6 { color: #000000; font-weight: bold; font-size:14px; } ul, ol { margin-left: 0; list-style-position: outside; } --> Overview There can be some confusion on when to use vaInputs and vaVars while referencing a variable in your script action, this may have worked differently in previous versions like London but has now been corrected in Madrid. Virtual Agent, when to use vaVars or vaInputs for referencing a variable. vaInputs is an object that contains all variables bound to Input Nodes on the canvas. So if the script action is running before the vaInputs.yourVar has been captured then it won’t exist yet, however, if you are referencing yourVar as a script variable the you would refer to it as vaVars.yourVar Overall: Use vaInputs to reference only if the script action is running after youVar has been captured. Use vaVars to reference if you yourVar is referenced as a script variable.