Creating a Patch for ERPNext to modify delivery note process


We are testing ERPNext for a company and we are amazed with the simplicity and the flexibility offered. This is an excellent piece of software and thank you very much for making it and offering it as opensource software.

Our business is that we order different sizes of sticker sheets (e.g. A4/A3 sizes) and print number of barcodes on the plain sticker sheet and deliver them to the customers. So, the sales order will have items like “2 x 2 stickers” and not the A4 OR A3 pages. We could use buying, selling and manufacturing modules with little customization where BOM could be used to transform A4 sheets to number of 2 x 2 stickers etc. However, we being a small company we want to keep things as simple as possible. Therefore we thought that we would not use manufacturing module.

Since we are not using manufacturing, for every item in a sales order, we should create a stock entry to make sure that can be delivered. Sometimes, a sales order contains about 100 different items therefore it is difficult to manually enter stock entries.

Therefore, we thought that we would customize ERPNext where, we add a button to delivery notes screen “Fulfill Stock” so that button stay there together with “Packing Slip” and “From Sales Order” buttons. The functionality of this button is that whenever, this is clicked it automatically add a stock entry for all the items in the delivery note with user confirmation.

This has two kinds of changes;

  1. A button to Delivery Notes screen. So, this includes some UI changes.
  2. Back end functionality, where it make the actual stock entry.

Based on my understanding the best way to do this would be create a patch but I am not sure how to do the item 1 in a patch. If you could point me to an example patch would be great.

Apart from this, if someone could suggest a different way of doing this without using manufacturing process or creating a patch would be good too.


My bad. Just figured out that I can make these ‘Non-Stock’ item and deliver.

Tested it and working very well.