n8n Workflow Template
Delivery Notes: Scan to Approval
Field staff scan delivery notes. Each scan is cleaned by ScanKit, extracted, and only straightforward notes update the ERP directly. Anything unclear goes to a human for approval first.
Architecture
Phone photo
-> ScanKit hosted scanner
-> webhook
-> n8n
-> extract
-> IF confident
-> yes: ERP update
-> no: human approval (email/Slack) -> ERP updatePayload example
Fictional example values.Identical envelope to the invoice template (file + metadata JSON). The workflow decides based on extraction quality, not on a ScanKit confidence score (ScanKit does not send one).
file: scan.pdf (the cleaned scan)
metadata: {
"scanner_id": 7,
"scanner_name": "Delivery Notes",
"page_count": 1,
"timestamp": "2026-09-04T13:00:00.000Z"
}Extraction happens in your workflow. The IF branch checks mandatory fields and a plausible total; missing fields go to branch B.
5-minute guide
- 1Set up the hosted scanner with your n8n webhook (as in the invoice template).
- 2Webhook node receives the PDF; LLM node extracts delivery_number, supplier, line items, total.
- 3n8n IF: require the mandatory fields and a sane total. Missing fields -> branch B.
- 4Branch B sends an approval request (email or Slack) with a link to the document.
- 5Both branches write the result to your ERP or tracker.
- 6Test with a clean note and a crumpled one to see both branches.
Use this template
Import the n8n workflow JSON, connect your hosted scanner webhook, and adapt the placeholder endpoints to your own services.
In n8n choose Workflows, Import from File, and select this JSON.