I’ll start with a bit of background. We currently use Shopify for our bricks and mortar stores and a load of associated apps to handle loyalty etc, however it’s a mess. We looked into Odoo Online and had a few long calls with their sales team and ended up signing up for 6 users for a year. It’s been a few months and we are still not using it. We tried finding freelancers to help with setup but the one we had hired sent us generic info only (ie. copy pasted from documentation etc).
Since then I saw ERPNEXT so signed up for the trial and have been having a look around and it feels more user friendly. I know the UI is a little more basic in appearance but from messing around it seems clearer if that’s right?
Basically in Odoo I found so many things that you changed would break something else. Ie. I’d enable cash as a payment method on the POS and then when you try and open the POS it would give you errors, I’d eventually find it was because a button needed to be clicked elsewhere for it to work.
I am beginning to have a better understanding of how a simple question can be hard to answer, but my experience with Odoo so far has been very lacklustre. We would be happy to pay for implementation or some kind of help/guidance and then to do the work ourselves. But I’ve begun to feel that the entire Odoo package is not the right one for us.
Sorry if this is not exactly a question, and I’m aware that this forum is understandably going to lean towards ERPNext over Odoo. But I would love to try and get off on the right track in changing our system. We are in a tiny country so there’s actually zero local partners for any ERP/POS software so getting help is only online and sifting through correct and incorrect info is difficult.
On ERPNext you can add very good app for Retail/POS available in the Marketplace named POS Awesome.
We used it in various business scenarios working good.
At first sight, I would dare to tell you that in ERPNext you could find what you are looking for, but then you will have to see the specific details of your business to confirm it.
Web-based POS systems have some challenges communicating outside the browser, both to the backend (if offline, updating inventory, etc.) and with hardware. I think the question of whether ERPNext would be a better fit will boil down to:
If all locations have reliable internet (though Event Streaming may be a possible workaround)
What terminals you’re using
What hardware you need to interact with
And obviously, what additional features are needed like loyalty, discounts, etc.
ERPNext: Standard POS and POS Awesome
Let’s first talk about ERPNext’s “built-in” POS. Before version 13, each sale was basically handled by a sales invoice, so each was submitted separately to the backend. There were issues with that because it would cause the browser to freeze up and things if I recall correctly. In version 13, Frappe refactored the POS to create POS Invoices. Basically, the POS invoices are held in the browser’s cache until the end of the POS session and then sent to ERPNext’s backend. The backend then creates sales invoices based off of the POS invoices. If there were multiple sales to the same customer, then those POS invoices are all combined and become one sales invoice.
If you want to understand more on that, you can read from this post down:
There’s some discussion on this not working correctly, but I think, despite the many posts in this thread, it’s actually a simple bug. As in, inventory levels are updated on the backend with the creation of each POS invoice, but it’s not affecting available quantity. I’ve had this on the back burner to report a bug on Github for months but haven’t taken the time to recreate it. Umair lays out how it’s supposed to work in the post above, but something isn’t making it’s way to available quantity.
If the built-in/standard POS checks all the boxes for needed features, I think the above can be overcome.
Because of this issue and desire for other features not in the standard POS, an accountant-turned-developer created another POS system that works with ERPNext based off of features needed by his clients. It’s actively maintained and has been widely adopted, POS Awesome. It has more features than the standard POS and behaves differently. It’s my understanding that each invoice is submitted separately as a sales invoice.
That behavior may or may not be a big deal to you, but I’ve seen someone raise it as an issue in a country that has electronic invoicing and needs to generate an e-invoice for each transaction, which I’m not sure is a possibility with how the standard POS works.
The standard POS and POS Awesome only work online. I think the last I used Odoo, as long as you had a connection when you first loaded, you could still transact. That isn’t the case with ERPNext.
Both options above will work with a barcode scanner (I do think POS Awesome comes with more settings there) just like Odoo’s POS will work with a scanner without the iot Box. However, for other hardware, there’s no built-in support for a “box” like Odoo has.
Printing is possible, but it requires a driver for that printer to be installed. Instead of natively communicating via ESC/POS to a printer and cash drawer, the cash drawer’s settings will be controlled by the driver, and printing will be done how the browser defaults; there will be a pop-up dialog to select the printer, and it will be rendered as a PDF instead of in ESC/POS. More on that here:
If your terminals are tablets, the driver issue becomes tricky. I think if you search the forums, people are using various solutions to print, but it likely requires some sort of 3rd party driver for Android/iOS. If you need other hardware, there’s more on that here:
You may notice some custom apps in some of these threads, but I don’t think there’s anything that’s actively maintained. And back to terminals, if you’re using tablets, I’m not aware of anything that allows them to communicate with hardware. As stated in one of those threads, the best setup for a POS terminal is probably Windows. If your machines are already Windows, hardware is less of an issue.
I did notice an app that is being developed now called Beam that may solve some hardware woes, but I don’t really know anything about it.
I think most folks using the POS use a standalone reader for credit cards. More talk on that here:
There’s also an app on Frappe Cloud that integrates Stripe (and Stripe Terminal readers) if you’re in a region where Stripe Terminal has rolled out.
ERPNext is a completely different beast that Odoo. I don’t think you’ll find the conflicts that breaks things all over the place in ERPNext. It’s clean on the frontend and the backend, which will make your time to implementation shorter and less painful. And if you have to customize. it will probably be a cheaper and easier affair than with Odoo.
I hope you found some of the pain points and information above helpful. I may have gotten some of the broad strokes wrong, but hopefully if I did someone will jump in and correct it.
Thank you for the comprehensive reply it’s much appreciated. In a possibly ‘silly’ way the speed in which you replied and laid everything out is equally a huge positive for ERPNext. Odoo’s forum when I tried posting questions to on a number of times was largely ignored, but it seems the community here is rapid and workarounds or solutions can be found quickly. I’m happy to spend time and effort in setting things up, happy to spend money in getting help too, and also happy to purchase new hardware to replace the Ipads we were previously running shopify on.
We are three small grocery stores, and we also have a warehouse that supplies the three stores. After my current (ongoing) Odoo experience I’ve given up caring abount accounting and many other modules (although it would of course be a bonus to have them running), but my priorities are.
3 stores supplied from a centralised warehouse
The warehouse orders direct from suppliers (manually)
The 3 stores pull their stock from the warehouse (manual or automated is ok provided it’s ‘simple’)
3 stores have their correct inventory
And ideally… if one store could have an integrated weighing scale (we have two avery berkel ones but if drivers exist for something that’s readily available we could just purchase that if it’s easier)
We also sell wholesale (only from our warehouse) with cheaper pricing for trade customers. Is it easy to also segregate customers somehow? Tags? So we would pull reports separately for sales per store, across all three stores, and then the wholesale separately?
We actually purchased an Odoo iot subscription but as they didn’t have any stock they refunded and said we actually didn’t need it and could just buy a raspberry pi and flash their instance on it. So I did that and it worked for everything (except the scale as no drivers for it). But… as I mentioned before whenever I open the POS I get a big red error message, which I click ok on and then it all works as normal. But clearly there’s something I did wrong but asking Odoo? Nope buy a success pack that may or may not help. I wouldn’t mind things being paywalled if at least it was a guarantee but so far paying has just resulted in being told it can’t be done, or they’re not sure on the solution.
Apologies as this has definitely just turned into a bit of a rant now. The ability for the system to work offline is not essential although it would be a nice feature. Powercuts here are semi common (a handful a year) but usually our payment terminals switch off anyways so if we can’t take payment then the till itself being offline doesn’t matter. If the sales that were on it so far weren’t backed up as you go along that would be an issue though.
Does ERPNext have an app for stock taking? Or an easy way to do large scale stock takes?
Apologies for stringing along further questions and thank you so much for your help so far.
The userbase isn’t as large, but the forum is better organized. There are not always quick replies, but they typically do come as there’s an active and helpful group that’s large enough! Like with many open source things, the documentation is sometimes a little stale so the forum is a great resource. With that being said, anyone can contribute to the documentation to fill the gaps or update it and many do.
I haven’t used the stock module much, but I gather from the forum it gets the job done. Here’s the documentation.
Pretty much all commercial/retail scales communicate via an RS-232 serial connection. This custom app was made specifically for my use case and probably still works with versions 13 and 14 (there’s a branch for each) but is no longer maintained. It only works in POS transactions, but it may be a good jumping off point to see if you can get scales communicating easily. It only works on Windows (it might on Mac), and if the scale has a USB, it should pretty much work out of the box. The only thing that might need adjusting to work with your scales is a serial setting or two. If you want to give it a try on Frappe Cloud, here’s documentation on adding apps that aren’t on the Marketplace, but I don’t think it will work with the trial because it requires a custom bench. I would be happy to answer any questions on adjusting serial settings if you get that far.
There is a fork of that repository that has been updated more recently, too. The app I mentioned in my previous post, Beam, also has an open issue for possibly adding weigh scale support in the future. If you do test and decide to move in the direction of ERPNext, it might be worth visiting with those maintainers about adding support or finding out their plans for maintaining those apps moving forward. I would personally love to see an app that added weigh scale support being maintained and added to Frappe Cloud Marketplace.
Yes! This is one of the things I really love about ERPNext. There are Accounting Dimensions and Cost Centers. They are extremely flexible and extensive. You basically can create a customer and assign them to a dimension or cost center and then run reports off of those without creating separate business units or companies (which you can do, too). So you can view reports based off of retail, wholesale, a particular store, or the whole operation. Tags are an option, too, but I don’t think there’s a way to require them, and they aren’t as robust for reporting in my opinion.
Here’s documentation for the Stock Reconciliation Tool. It’s pretty bare bones and to my knowledge doesn’t have built-in features to randomly select SKUs for cycle counts or anything like that. That would have to be done from CSV export outside of the system if some features such as that were needed.
Thanks again for your comprehensive reply it’s much appreciated. The way the pos deals with orders is possibly an issue but the POS Awesome also looks good although I can’t test it using our free trial.
It makes me a feel a bit like our first e-commerce website that I made myself in Open cart. Had a lovely vibrant community so sorting things out was fairly easy and despite my very limited technical knowledge I was able to sort most things out. We moved over to using EPOSNOW in our stores and woocommerce for the e-commerce and while woocommerce was fine the EPOSNOW was plagued with issues. You wouldn’t touch anything but suddenly it would break. And then you’d have to call up and wait hours for someone to remote in and fix it. This is how Odoo has begun to feel and why despite having paid for a year I’m exploring other options.
Another question would be what’s the best way to find someone to help with integration/answer my questions (as I can’t keep asking you 200 different questions). I saw the partner list but it’s very limited and nothing in my country.
What we’re looking for really is both help setting up and a guide on best practices. We are a small business so happy to change our practices and how we work in order to suit ERPNext as best as possible rather than change ERPNext to suit us (provided the solution is not adding lots of steps or being time consuming).
Just looking for someone to help with an initial setup and guide us to make sure we do things correct. Ie. explain how our business works, and then they tell us how to do it, much like you did above about accounting dimensions and cost centers. So instead of us adding all our customers and then finding out they’re not segregated and we have to do it again, we do it properly from the start. I saw freelancers on fiverr but I know fiverr can be hit and miss.
And it’s very interesting. I can see where some of the functionality either lacks or needs setting up to be suitable for the use case. We’re a supermarket style store so fast moving with lots of transactions. We need to be able to refund, have live/correct stock. It should also always be able to sell stock (everything we do is barcode scanned so if you physically have the product there it can be sold). We also have a lot of customers without accounts so that has to be an option (I saw the workaround was to select guest?) Seems like it’s definitely more complicated than I thought.
I think POS Awesome’s development has focused less on being sleek and more on functionality. I’ve only played around with it, but it’s constantly being developed and I think any bugs are resolved quickly.
If you go to your profile in this forum, there’s a section with messages. I sent you a couple (mostly regarding the developer who created the custom app I was using). For better or worse, support for Frappe and ERPNext can be difficult to find in a specific country/region, but if you’re willing to work with someone elsewhere (and probably across time zones), there’s a lot of great developers out there.
Most of my sales are without accounts. I created a customer called “Cash Customer” and applied that to those sales.
The standard POS is pretty straightforward. I would say the hardest part is getting everything surrounding it right (inventory, warehouses, the segmentation you want for reporting, stock transfers, etc.). The same holds for POS Awesome, but with POS Awesome there’s a lot more features to be able to set up the POS in a really specific way. Which is more complex, but I think either option, once it’s set up well, is quite easy to maintain. At least that’s been my experience with the standard POS.
Thank you for all the replies especially Levi who has also messaged me (I’ll get back to those messages asap).
I just wanted to ask about POS Awesome. Is it an extra to ERPNext? So it takes over the point of sale parts of ERPNext but you’re still using that, or is it a stand alone built on the frame work? Ie. do we still get all of the other ERPNext features and this is just extras?
One question. If we go with ERPNext hosting how can we work out the cost to us? I see they have the different charges for the plan for database, cpu usage etc. We won’t move all our old data over (sales data etc) and just start fresh so I imagine we just upgrade as we need to but I have no reference point to work out future costs.
Thanks, I had seen that but wasn’t sure I understood correctly. It says 50/m and unlimited users. Is that 50/m per user or 50/m for unlimited users? We don’t need a lot of users but it does of course change things considerably.
And in the frappe cloud, the plan instead is per cpu usage and space.
Further to my last question I am trying to wrap my head around that post on background jobs/requests.
We have around 200 POS transactions a day currently. And would want 2/3 staff at any one time on the back admin section for things like product updates, etc. How do we work out what package we would need?
Edit: Looking at their last example where their own implementation would need the 50 dollars a month package it sounds like it would be fine for us to start on. Will try and do a bit more research first but it’s looking good.
Is there a way to contact POS Awesome team/person? I’m wondering if it’s worth waiting for the next version. My trial is V15 which I think is coming out on the 20th. I am assuming POS Awesome will be updated to work with it also?
Thank you glz. I imagine if I get V15, by the time we have it set up with inventory, customers etc POS Awesome would likely be available for it anyways as it will take us a while to do all these things.