Hiding the Write Off Amount Field in PoS

Will appreciate it if anyone can tell me how to hide the write off amount field in the PoS payment form



Any reason? Currently it’s not possible.
To hide the field you have to make changes in the core POS file. But making changes in the core file will break the code in future during updates.

Cashiers at the point of sale can use this to give unauthorised discounts.

For example an item costs $25

They can accept $10 from the customer and write the rest off. Or collect the full $25 and write off $15. End of day sales will show they should have $10 in their till.

To me this is an obvious and uneccessary loophole for a retail environment.

What are my options ??

Can you direct me on which code to change and with what ?


you can make write off account in active

You need to add hidden:1, next to below code

Thank you Rohit

Works like magic

Experience at work lol

Much respect

I agree with @olamide_shodunke write off is not a good thing in POS, never understood why it was there in the first place we should make it easier to hide instead of using code. The assumption that all employees are honest is fools gold…


Thank you for your comment.

I am a retail person who has chosen to use ERPNext for my retail business. The hard fact is that the retail part of ERPNext is weak and sometimes does not follow accepted standards in retail front end operations. I chose ERPNext because it is a business management tool, all the other Point of Sale systems out there are just point of sales and do not help me manage my entire business.

What I have decided to do is help ERPNext cover up the loopholes in the retail side. I will be pleading, arm twisting and harassing the programmers to make this happen. I am also actively spending money to make it happen, cause the benefits of the whole is more than the negatives in the retail side, especially since the negatives can be resolved.

The retail industry can increase the adoption rate of ERPNext dramatically if we are able to meet the needs of retail. We have more retailers out their than manufacturers or distributors combined.

So ERPNext team if you are listening (and I know you are) Retail needs the following ASAP

  1. Loyalty program (awaiting merging @ Loyalty Program by manassolanki · Pull Request #12631 · frappe/erpnext · GitHub)
  2. Multiple barcode for each item (awaiting merging @ https://github.com/frappe/erpnext/pull/11917 )
  3. An inbuilt facility to print out barcode labels for all items in a purchase receipt or when creating an item
  4. Automated Item numbering system, Every inventory item should have a system generated number, this makes it easier to print bar code labels for items that do not have manufacturers barcodes, we simply use the system number for the barcode labels
  5. Ability to do sales return at PoS rather than going to the sales invoice form view to do a return, we do not need our cashiers doing anything at form view of sales invoice. This of course should be controlled by rights/permissions
  6. Ability to add other fields as needed @ PoS (awaiting merging @ [POS Enhancement] Render additional/custom fields of Sales Invoice on POS Page by saurabh-bhosale · Pull Request #12465 · frappe/erpnext · GitHub )
  7. A better shopping cart/ecommerce module. This could be a game changer as it would effectively make ERPNext one of the very few omni channel capable solutions out there

If you give us all this we can go out there preaching the gospel of ERPNext to all retailers.

And then come back a month later to ask for more…(little joke there)


My experienced colleague, how do you prevent cashiers from carrying out return transactions from the sales invoice?

@olamide_shodunke I think you can modify the role of Cashier to exclude it from creating sales return.Or you can use workflow to exclude them from having right to create sales return

Thanks @Frwd1

Roles did not work, but work flow did.


Olamide Shodunke