Easy workflow system for all doctypes

Hi, I have been using erpnext for a week and learned quite a bit about it through the forums and video tutorials. Recently I wanted to implement it in a garments factory where they wanted to have an approval for almost all kinds of document. I know it can be done by setting up workflows, but its often confusing specially the state and transition table.

For example:

PO can be created by a purchase user but needs to be approved by purchase manager and then another approval from Head of Purchase.

Purchase receipt can be created by purchase user but submission needs to be done by stock user and approved by stock manager.

It would be better to have some sort of GUI where all these steps can be configured in a click & drag style along with mentioning which user has permission for each states in therespective pages.

1 Like

Have you seen this? ERPNext - Workflow - YouTube


Yes, in-fact this is the way I am doing it now. I was just asking if this process can be simplified in some sort of gui where each step can be drag and dropped like a flow chart. The reason I am asking is because it becomes so much time consuming to edit almost all doctypes where a company needs approval system in each document.

This is an excellent idea. I also find the workflow process to be less intuitive than it could be. Because (I suspect) this is a big project, a sponsor may be required.

You had a specific github request that matched your workflow; I think the reusable GUI idea is a winner.

How do you feel about making some drawings or wireframes? Some of the best ideas have begun on napkins…


I have created a work flow for purchase invoice approval but we wanted this workflow to take effect only in one of the companies we have. We have several companies running inside our erpnext system I would really appreciate it if you can help me out here. I tried searching for clues on how to accomplish this but to no avail. Any documentation of sort would be great help.

Thanks in advance. Looking forward to hear from you soon.

Create an javascript like that

frappe.ui.form.on('Purchase Invoice', {
        if (frm.doc.company != "Company Workflow need Work"){
            frm.set_value("workflow_state", "My Final Workflow State");

thanks for the reply max_morais_dmm and thanks for the script. I just learned that company we what to out of the workflow is set as child company… so Im not sure if want we want would work and is there a way to not include them within the workflow? Thanks in advance.

note: Im new to ERPNext and still want to learn more about these things so bare with me.