Aakvatech Limited - How to Choose the Right Workflow State Names in ERPNext
Designing a workflow in ERPNext isn’t just about defining transitions—it’s about naming states in a way that clearly communicates business intent. Poorly chosen names lead to confusion, misaligned
This guide will help you select the right workflow state names based on clarity, purpose, and real-world usage.
Why Naming Matters
Workflow states act as signals:
- Who owns the document right now?
- What action is expected next?
- Is the document final or still in progress?
If users have to interpret a state, your naming has already failed.
Core Principle: Name States by Action + Responsibility
A good workflow state should answer:
“What is happening to this document right now?”
Avoid vague or generic names. Prefer explicit, action-oriented terms.
Recommended Standard States (and When to Use Them)
1. Draft
Use when: The document is being created
- Clear, universal meaning
- Always the starting point
- Editable by the creator
✔ Good: Draft
✖ Avoid: Initial, New Entry
2. Pending Review
Use when: Someone else needs to check the document
- Indicates waiting state
- Assigns responsibility to reviewer
✔ Good: Pending Review
✖ Avoid: In Progress, Open
👉 “In Progress” is ambiguous—who is progressing it?
3. Reviewed
Use when: A reviewer has validated the document
- Signals completion of a review step
- Typically moves to approval next
✔ Good: Reviewed
✖ Avoid: Checked, Verified (unless domain-specific)
👉 Only use this if you have a multi-step process. Otherwise, skip it.
4. Approved
Use when: Final acceptance is granted
- Clear decision
- Usually triggers business actions
✔ Good: Approved
✖ Avoid: Accepted, Confirmed (unless consistent across system)
👉 This should be your main success endpoint
5. Rejected
Use when: The document is denied permanently
- Final state
- No further action expected
✔ Good: Rejected
✖ Avoid: Declined, Failed (less standard)
👉 Use only when the process ends here
6. To Amend
Use when: The document needs correction and resubmission
- Sends responsibility back to the creator
- Keeps the workflow alive
✔ Good: To Amend
✖ Avoid: Returned, Fix Required, Rework
👉 The key difference:
- Rejected = dead end
- To Amend = fix and continue
7. Cancelled
Use when: A submitted document is voided
- System-level final state (docstatus = 2)
- Used after submission or approval
✔ Good: Cancelled
✖ Avoid: Closed, Stopped
👉 This is not a “decision” state—it’s a lifecycle termination
Common Naming Mistakes (Avoid These)
❌ Using Vague Terms
OpenProcessingActive
👉 These don’t indicate ownership or action
❌ Mixing Business Meaning
Example:
- Using
Rejectedwhen you actually mean “fix and resubmit”
👉 This breaks user expectations
❌ Overcomplicating States
Too many states like:
Under ReviewIn ReviewReviewing
👉 These create confusion with no added value
❌ Synonym Chaos
Using multiple words for the same concept:
Approved,Accepted,Confirmed
👉 Pick one standard and stick to it
A Clean, Recommended Workflow Naming Structure
For most use cases:
Draft → Pending Review → Approved / Rejected
For more controlled processes:
Draft → Pending Review → Reviewed → Approved
↘ Rejected
↘ To Amend → Draft
How to Decide What to Include
Ask yourself:
1. Do you need multiple validation steps?
- Yes → Add
Reviewed - No → Skip it
2. Do users fix and resubmit documents?
- Yes → Add
To Amend - No → Only use
Rejected
3. Can documents be cancelled after submission?
- Yes → Include
Cancelled - No → Optional
Best Practices Checklist
Before finalizing your workflow names:
- ✅ Each state clearly describes what is happening
- ✅ Each state implies who is responsible
- ✅ No duplicate meanings across states
- ✅ Terminal states are clearly defined
- ✅ Users can understand the workflow without training
Final Thought
A well-named workflow doesn’t just support your process—it teaches it.
If users can look at a document and instantly understand:
- where it is,
- who owns it,
- and what happens next,
then your workflow design is doing its job.
No comments yet. Login to start a new discussion Start a new discussion