How to build n8n form approvals
Build a FormNode approval flow that captures human decisions before sending a structured approval result back to n8n.
To build n8n form approvals, collect the request in FormNode, route the approval to the right person, capture the decision through email or a decision table, then send the approval result to n8n through a callback or webhook.
Build it in the right order.
Define the approval boundary
Decide what n8n must not do until an approver accepts the request, such as provisioning, access changes, purchasing, or maintenance scheduling.
Create the approval form
Add the request fields and approval fields in FormNode, including decision-table rows if each item needs its own decision.
Route the approver
Choose the customer contact, manager, or internal operator who should receive the email approval action.
Send the callback to n8n
Configure the approval result to call n8n with the original request, decision, comments, approver, and organization context.
Handle each outcome
In n8n, branch on approve, reject, or partial approval and update the destination ticket or fulfillment workflow.
- Keep the fulfillment workflow blocked until the approval result arrives.
- Send rejection reasons and comments to n8n, not just a boolean decision.
- Use decision tables when each row can have a different approval outcome.
- Include the source submission and organization IDs in the callback payload.
- Test approve, reject, and partial-approval paths before publishing.
Can FormNode approvals trigger n8n?
Yes. FormNode approval outcomes can be sent to n8n so the workflow can continue, cancel, update a ticket, or request more information.
Can an approval include multiple line items?
Yes. FormNode decision tables can capture per-row approval decisions, which is useful for firmware upgrades, license changes, device work, and batch requests.