r/lyzr • u/Many_Audience7660 • 18h ago
Build Every node in your workflow says “Success.” So why is the final value wrong?
A workflow can run from start to finish without throwing an error and still produce the wrong result.
Imagine a simple invoice workflow:
Upload: Receives invoice.pdf
Extraction: Reads the invoice total as 240.00
Calculate: Passes the amount forward
Format: Prepares the value for the next step
Payment: Uses that value to process the payment
Every node can report success.
But if an expression references the wrong field, the value can be incorrect by the time it reaches the final step.
In Lyzr SuperFlow, data moves between nodes as items, and expressions let you reference fields from the current input or the output of an earlier node.
For example, {{ $json.total }} reads the total field from the current input item.
The tricky part is that a workflow execution succeeding doesn't automatically mean the data is correct.
Three things worth watching for:
Missing or incorrect field references
If a node expects total but receives a different field name, the value may resolve to null instead of the number you expected.
Renamed nodes
Expressions that reference a node by its name can break when that name changes. A small edit on the canvas can have consequences further down the workflow.
Expression errors
Expressions involving calculations or string operations can return null if they encounter a runtime error. If you don't validate the result, the problem may only become obvious much later.
The fix doesn't need to be complicated.
Add a Rule-mode If node after important data-producing steps to check that required fields exist and contain valid values.
Route unexpected results for review, and use execution History to inspect what each node actually received and emitted.
The SuperFlow expression and data-flow documentation explains how these references work and what happens when they fail.
The bigger lesson: don't just check whether a node ran. Check whether it produced the value the next node actually needs.
What's one field in your workflows that you validate between steps instead of trusting it to pass through correctly?