Architectural Problem in ERPNext –> No change on Submit

We have a architectural problem in ERPNext which is that generally if a DocType is submitted it’s content is not changeable. The only way to change something is to cancel and then amend that DocType. Now while this makes perfect sense for things like invoices or stock entries it doesn’t make sense for example for purchase orders or sales orders.

Case 1: Take the purchase order for example. We send a PO with 100 lines to a supplier, they send 99 items for which we make a purchase receipt, purchase invoice etc until we are wondering what is with the remaining item? After calling the supplier they will tell us that this is not sold anymore. In order to cancel and amend that PO to remove that one line we would have to cancel all related transactions –> purchase receipt –> purchase invoice → work order –> delivery notes. We should be able to cancel that line without that.

Case 2: You have a PO with plenty of lines. The supplier delivers some items but the price changes for some.

Case 3: You want to confirm a new delivery date to your customer but you have a work order that is linked to that sales order which has stock entries already.

Case 4: You can’t deliver the full quantity in a sales order you have to reduce the quantity from 50 to 48 (-2) but there are plenty of deliveries, invoices etc booked already.

Thoughts, comments, ideas?


There is a close option on Purchse Order which can be used incase there is any extra items which no longer required.

The rate change can be made on purchase receipt. I personally dont think that original PO should be chnaged fot rate changes.

However i do agree that allow submit feature should be there for the change of certain other fields like warehouse/cost center etc.

1 Like

I think this option of Submit is for ensuring that all accidental changes are tracked after the final change (approval).

Even Sales orders and Purchase orders are commitments that made by the organization and these documents are external documents, i.e. sent to people outside the organization. I support the use of Submit, however crude it may sound for operational purposes, for the sake of discipline to protect organizations image in the outside world.


I think the main challenge here is cancelling linked documents to amend base documents.

Say for eg: for a Sales order with multiple part deliveries,
its not at all logical to cancel all previously generated invoices to amend order where changes are requested by your customer.

We face this problem as well.

The rate change can be made on purchase receipt. I personally dont think that original PO should be chnaged fot rate changes.

This is a problem/concern area.

The current feature is that we can change quantity as well as the rate to the extent of tolerance set in a specific item, but tolerance should be allowed only for quantity.

Rates are fixed in purchase/sales order and approved. Rate change should be pre-approved before booking purchase/sales which is not happening here

I belive for internal control purposes the approved document should not be amended later on. Any revisions to the original approved PO/SO should be incorporated in a new document.
This will also cover the legal aspect aswell because PO/SO once approved becomes legal obligation


I understand the concern here. Its to maintain internal control and cover legal aspect.

  1. Internal control’s would be better if rate change/ change in terms of PO/SO can be monitored. Re-approval of significant changes would help to keep process in control. Such changes are bound to happen and it cannot be argued that they can be avoided.
  2. PO/SO are legal obligations and binding when customer and supplier both agrees to it (rather than on submit/approval). Where changes to PO/SO are also agreed between parties to contract, it becomes necessary to incorporate these changes to PO/SO
  3. .Revisions within same document or in new document should not be of a debate as far as we can maintain links with documents, track changes and maintain trail.

I believe we are arguing two different things.

You are mentioning the chances/revisions during the approval process?

If thats the case then you need to incorporate approaval workflow which can be followed before any PO/SO is submitted. You can do necessary changes during that workflow.

Once the document is submitted it means no more changes required. Any revisions after that point should be an amendment to original, keeping the original as it is.