I’m designing a case-driven automation workflow and want to confirm whether n8n is a good fit architecturally before building.
This is not a simple linear automation — it behaves more like a lightweight case management pipeline with file handling and lifecycle rules.
High-level workflow:
- A user submits an intake survey.
- A case record is created with:
o internal case ID
o public case code
o structured survey data
o PII stored separately from assessment data - The system assigns and updates case statuses throughout the workflow.
Eligibility + intake phase: - User gains portal access tied to case code.
- User uploads multiple assessment PDFs over time.
- Each upload must be matched to the correct case.
- Files are stored in a case-specific container/folder.
- Case status updates automatically as files arrive.
Processing phase: - Assessment PDFs are parsed into structured data.
- An anonymized case dataset is generated (PII stripped).
- A report is generated from anonymized data.
- PII is reinserted only in the final output.
- A branded PDF report is created and stored.
Delivery phase: - User receives time-limited portal access to download report.
- Access window is enforced automatically.
Lifecycle management: - Timers track:
• portal expiration
• retention deadlines
• archive/delete rules - After expiration:
• files are archived or deleted
• portal is locked
• case moves to closed state
Admin layer: - Admin can view case status and retrieve files.
- System logs failures and sends notifications.
- Case behaves like a state machine with structured transitions.
Key requirements:
• asynchronous file ingestion
• case-based state tracking
• timed triggers / delayed execution
• safe handling of PII vs anonymized datasets
• reliable long-running workflows
• auditability + failure recovery
Questions:
• Is n8n stable for case-driven, multi-step workflows with delayed triggers?
• Best pattern: one workflow per case vs central dispatcher?
• How should case state be persisted (DB, external store, n8n data)?
• Known limits around long-running timers?
• File handling best practices at this scale?
• Recovery strategy if a workflow crashes mid-case?
• Is this a good use case for n8n or pushing it toward a custom backend?
I’m optimizing for reliability, auditability, and long-term maintainability over speed of build.
Would appreciate architectural guidance before implementation.
Describe the problem/error/question
What is the error message (if any)?
Please share your workflow
(Select the nodes on your canvas and use the keyboard shortcuts CMD+C/CTRL+C and CMD+V/CTRL+V to copy and paste the workflow.)
Share the output returned by the last node
Information on your n8n setup
- n8n version:
- Database (default: SQLite):
- n8n EXECUTIONS_PROCESS setting (default: own, main):
- Running n8n via (Docker, npm, n8n cloud, desktop app):
- Operating system: