New POS interface - Please contribute to the bounty :) [Now $1010!]

Two more things:

“+” button

I would add a big “+” button in the top bar to open a new sale. If a default customer is set in ERPNext then you go right away to the Cart-tab with the default customer preset. Otherwise you go to the Customer-tab to choose a new customer.
This could speed it up the switch to a new sale especially if a default customer is set.

Change from “Unregistered” to a new customer

In an retail store you often get unregistered customers. In ERPNext there has to be a specified customer. As a workaround you have to have a customer called “Unregistered” (or similar).
Lets say you start with customer “Unregistered” but then you realize you need to register this customer (maybe because you have to call them when their order has arrived). You don’t want to overwrite “Unregistered” nor do you want to open a new cart and repeat the sale.
You just want to swap from “Unregistered” to a new registered customer. Maybe you could add the possibility to change a customer to an other one. Or maybe there is a better solution to this problem…

I hope I’m not too annoying with all my inputs. It’s just that I’m really exited about your design!

1 Like


I totally agree. What if we have to add “Unregistered” Customers to queue? In retail, it is more than often that we have “Unregistered” customers.

One way around this is to add a customer called “Retail”.

Also, quick change of POS Profile, while I understand that it is related to ERPNext login.

I would also want to see a 2nd screen for customers so that they can view what was scanned and the total for cart. Maybe can add this to the bounty too.

This is way cool…

\i need this one for my restaurant business

Here is an updated design based on the inputs


1- search box in the top. In this search box, you can:

  • Search the system for new customer in the system, where if you find and select a customer, the active customer will be put in the queue list and the new searched customer will be the active one.
  • without typing in the search box, there will be a list for customers in the queue for quick switching
  • In it you will also be able to click add new customer which will switch to the customer tab

2-Customers Tab

  • Removed the search section
  • Put add new customer in the top row with full width. so keyboard in touch devices doesn’t hide any field
  • Edited the view of customers in queue, where the rows are selectable, and moved delete customer to the end to avoid accidental deletion

2-Cart Tab

  • removed sliders and replaced them with touch pad
  • added notification on the label to show available qty and max discount
  • added Pay button to easily switch to the payment tab

3-Payment Tab

  • added buttons to Print receipt, email receipt, edit cart, and clear the customer after payment is done.

4-Summary Tab

  • removed ass its functionality integrated with payment tab

5-Active customer

  • clicking on the active customer switch to the customers tab so can easily switch with other customers in the queue

6-Online Tab

  • nothing change as it just provide easy way to see non synced transaction in case the POS is offline
1 Like

Great and lovely @ganas

Just to comment a bit, hehe

  • Have a field for Discount Coupon. Future proof the POS as discount coupons seems the norm in the retail world. Or if Discount Coupon DocType to be provisioned along with POS update.

  • Cart Summary. I think to put in Item, Item Price, Qty, Total Item Qty will be much better.

  • Should be able to select default customer, for example, retail shop will more often than not choose Walk-In customer

Thank you very much @ganas !

One thought is, this is a completely new design language. I’m not so sure it is a good idea to introduce a standalone design language with the module, as that will be jarring for the user experience.

However, it would make a lot of sense to make this a standalone Electron app for ERPNext POS. In that sense, design language could be modified, and there are further possibilities. However, that would increase cost and development time drastically, so feasibility and community interest will easily be in question.

new design language? I’m just using different css (the one that i use for my frappe system), if I replace that css with frappe css then the feel will be in line with frappe. also here we are just prototyping how the interface should be organazied so don’t let the colors distract u :wink:

Now in the costumers tab, you can easily edit the information of any costumers in the waiting list. this will be helpful especially for the case not fully registered, customer where u can add customer with the minimum details then update his information later if needed

this is cant be done in erpnext as u cant place transactions on non registered customers, so the only way is to create customer with the minimum details and edit if need later, or use one customer (usually called walk-in) but in any case u cant have cart for non registered customer.

This is not available in erpnext as of now, so it doesn’t make sense to add it. leave it until this feature is available then it can be included in the POS.

I’ve updated the summary section[quote=“frehu01, post:21, topic:14638”]
“+” button

I would add a big “+” button in the top bar to open a new sale. If a default customer is set in ERPNext then you go right away to the Cart-tab with the default customer preset. Otherwise you go to the Customer-tab to choose a new customer. This could speed it up the switch to a new sale especially if a default customer is set.

This now have better implementation using the search field, where there u can search, add, or select different customer from waiting list

Let me know if there are any changes needed, so we can start the bounty asap. Myself I’ll put 150$ and I hope you guys can help chip in so we can get our new POS.

The good news is that most functionalities are already available in the current POS, even now there is a pull request to add customer in POS.

@rmehta If you guys have any inputs on the interface before we start bounty on it


Nice - adding another 0 to that would be an interesting amount for a bounty!

Am also willing to contribute $150.

…We should be able to get that extra 0 in with little effort …

Here’s the full details for the interface (will be linked in the bounty)
Here is the bounty link

You can fine a prototype for how the interface should look like in here

and heres the full details
Overview and customer tab

  1. customer tab (where can add new customers, see the customers in waiting list, edit …)
  2. Cart tab (where can select items for customer shopping cart)
  3. payment details (where we process the payment)
  4. Online (is green when the pos online or grey when its not,) in it u can see the non synced records in case the pos is offline
  5. is the customer who’s shopping cart is active and being served right now (clicking on hime will take you to the customers tab where you can switch to another customer from the queue or add new customer)
    6- is search bar, where you can search for new customer in the system or quickly switch with customer in queue list
    7- is the form where you can add new customer.
  6. is a list of customers in the queue, the customer being served is highlighted
  7. clicking the customer name will switch him to be the active customer.
  8. here u can edit customer information where the will be populated in 7 where you can do quick update
  9. here you can cancel and delete the customer shopping cart and remove him from the queue list

Search Bar

12. clicking on the search bar, you will see customer in waiting list where u can quick switch also u see add option where it switch u to customer tab, other wise you can search and select customer from the system

Shopping cart

13. you are able to select the category of the items, and the item view will be updated to only show that category
14. is where u can scan barcode or enter manually
15. is a list of the items in the cart, where u can delete an item by clicking the X icon in the left, also selecting an item will highlight it and populate its information in 16 to update qty or discount
16. here you can update qty or discount for item selected in 15 (notice the information about available qty and max discount is updated on the labels)
17. the payment button takes you to the payment tab

Payment Tab

18. is a summary of the items in the shopping cart
19. you can quickly add payment for different payment methods available in the system
20. you can submit the payment, print the receipt or email it, or go back to edit cart, or after payment you can clear the customer

Online Tab

21. you see all the transactions that haven’t been synced in case the pos was offline


Here is a link for the bounty. I put 150$ and I really encourage you guys to contribute to the bounty (any little amount will count). It will benefit all of us

@olamide_shodunke please add you contribution to the bounty. let’s keep the ball rolling :wink:


Excellent design! BRAVO! I want to add a suggestion:

In our country, we need the Taxpayer ID entered when we create a POS receipt/ invoice. It has to print in the invoice by law, and register in the transaction by law, thus it helps in declaring the VAT for sold items. Is it possible to enable a feature where “custom fields” can be shown in the “add customer” window?

This way the user can select their own particular custom field.

I don’t see why not since adding a customer is linked to a customer doctype so I think it will be easy to customize the fields that show in adding new customer or updating existing.
Just let hope we get enough contribution in the bounty to get someone working on it. don’t forget to contribute if you can :wink:

Ok, there you go!
$50 Bounty placed


Thanks. Hope others will contribute to get this going. The POS is really in desperate need for such overhaul to be usable in retail


Placed $50.

If possible, can add a 2nd screen where customers can view what was scanned and total amount? It should be another window, if using a web browser.


Thank you. I agree with you its important feature. However, I think what we have for now is too many features for the first version to get a developer starting on it. So after we get the the v1, we can start working in important features for v2 like:

  • 2nd screen facing the customer to show cart and thank you note after payment.
  • a tab for returning product.
  • a tab shows insight about the customer history and past orders

Nice! We added another $100 :slight_smile: