ERPNext vs Odoo

Considering MIT license licensing - Meaning of MIT license - Software Engineering Stack Exchange says

  1. You can sell the software.
  2. You are not compelled to provide source code.
  3. Anyone who receives source code may do as the license permits. This does not extend to binary distributions.

There is PnL and Balance sheet, Cash Flow is done!. Reports have expandable tree view, checkout ledger by clicking account.

https://community.erpnext.com/service-providers

checkout Bench - Multi-tenant platform to manage Frappe / ERPNext

https://frappe.github.io/frappe/user/guides/integration/rest_api.html

Frappe Framework https://frappe.github.io/frappe/license.html MIT
ERPNext https://frappe.github.io/erpnext/license.html GPLv3

4 Likes

Hi,

I have been in FOSS ERP for 5-6 years. been research on most FOSS ERP in the market.

I admitted that, so far, I only found good solutions, but not yet the “Right” solution.

I have deep 3 years with Adempiere and 3 years with Odoo. I wanted to share some experience about it. I hope it will be useful.

To me, Adempiere is the real serious ERP. It is a deep solution with great accounting engine. But it is more as old age solution not quite flexible enough to do fancy other things. Not easy nor attractive enough for small business.

For Odoo, it is a nice business suite, modular, modern and beautiful. It has almost every business features you can think of, but it also quite shallow for many things. At first, it is almost a perfect solution. But its lack of decent accounting engine like Adempiere make it short (for being an ERP).

As a teasing word. Adempiere is good for accounting but not for every other things. Odoo is good for every other thing except for accounting. -_-"

I also agree with some comment that, Odoo has so many modules but none work right at the first time. After long years with it, I think root of the problem stem from its too much of modularity concept. Accounting also fall short because of this, I think.

While in Adempeire, it concepts around DocType, which is correct for an ERP. The system allows us to setup 70+ default accounts from the beginning. And its accounting engine can smartly decide which account to use for different cases. You set it correctly first time, after that rest assure everything will be fine. I think that’s what ERP should be.

In Odoo, it concept around journal booking. There is no real default account setup page that can cope with all situation. Again, I think because its too much modular that it not allow to have such setup from the beginning (of course, because it not even know what modules will be installed). Technically understandable. But the result is, we can’t rest assure about its account posting. Our accountant has to verify every use case, and if not correct, we code to fix it.

Don’t get me wrong that I don’t like the solution, I think it is best solution to do the work so far. I am now currently very focus on Odoo, and we are going to have a big project replacing SAP for one of our customer.

I do think FOSS ERP has opportunity even for big market. Many big company want to leave proprietary and come to FOSS. The thing is, not many CIO dare to risk with it yet. And without serious Accounting Engine at the core, it will be tough. (in v9, Odoo declare that accounting is not its core, but customer, sales and marketing is… my godness !!)

From the impression I have with ERPNext. I admit that I like it. I like the community, I like the look and I like many concept of it. I don’t have deep experience with it yet, but I am “feeling” it somehow :blush:

I also come across the word “DocType” which is good sign. And have seen a default accounting setup in company page (around 10+ accounts, not much but ok). I have impression that it could fill the gap of both Adempiere and Odoo. You have given me a good hope of finding the “Right” solution. :smile:

Lastly, I also like to congratulate your work. You have done amazing job. May be functionality wise does not match the more mature one. But if the direction is right, the future is yours.

Cheers,
Kitti U.

PS: By the way, what is the direction of accounting in ERPNext, is it like ADempiere or Odoo, can anyone explain?

@kittiu Thanks for sharing your experience and welcome to the forum!

I hope ERPNext is the “right” solution for you, but don’t want to set expectations too high.

Accounting is something we have been working hard to improve all the time, would love to have feedback and discussions on how we can move this forward.

FYI: Accounting & Billing are the top 2 used features of ERPNext

3 Likes

I also concern about accounting. After using ERPNext for quite sometime… I think ERPNext is on the right track.

Its ‘perfect’ If you use it for single instance of company, cost center, warehouse. Once Company default accounts is setup then everything is in place.

I think it needs improvement for accounts default setup for multiple companies, cost centers, warehouses to handle various business scenario… The point is…at the end good erp would need to minimize user input, fasten the input process etc even for those who dont understand accounting hence it will prevent wrong posting…

Idempiere is very good on this but its too hard to implement for small businesses…

2 Likes

Adempiere / iDempiere Accounting Engine is around document type. There is a big library containing logic of the posting for different doctype.
Our accountant who is also a CPA, working with many ERPs, she confirm it is correct.
I am not accountant myself. I think you can play with it and port out the logic behind its trunk? Not sure if that possible?

Hi Rubash,
I only have experience in Gnucash and ERPNext.
I have implemented ERPNext into one of our subsidiary company.
One of the main reason the accoutnants in the mother company are still reluctant to do the switch from Pastel (Sage) to ERPNext is the efficiency of doing JV.
See this discussion here

Not everything some old ERP are doing is bad. Yes some of the UI is quite old-dated, but these ERP have been in business for a long time and they do know a trick or two about efficiency and how accountants works. Batch entries being of these things. Obviously I did not manage to convey that in the above post.

For a company that process around 100 JV daily, the ability of doing batch entries is a requirement.
Let’s say we have 50 expense vouchers to enter and they are all related to the same account (let’s say a fuel account). At the moment we have to create 50 different JV each with its date and reference numbers. Doing one JV does take time on ERPNext, the ability to do a batch entry for all of them can gain significant amount of time.

I would also echo @kittiu comment about > accounting engine can smartly decide which account to use. The CFO of our mother company mentioned that it was too risky and error prone to let our young accounts that do all the entries and decide which account is debit and which one is credit. Yes they are accountants and they should know which one is which, but you would be surprised at times :wink:

All that said, I do use ERPNext everyday. All constructive criticism I hope :wink:

Is Data import tool helpful?

I guess it could but not very practical. It should be something done from the inside ERPNext without having to download .csv file then reupload them.

When you talk accounting in Odoo are you talking about v8 and previous or do you include v9? Because in theory (I dont know) v9 main focus was improving Odoo accounting and it is the area that has received more work. Do you think it is still lacking?

Many of us has high hope on v9 accounting, but well…Yes, it is better in many ways. Like, more stream line ways of reconciliation for various bookings. Some new concept is also introduced, like no account hierarchy anymore, no period any more, new reports, new online reconcile, etc… (some new ideas even made old style accountant heart attack)

The thing is, its core concept still the same, relying on simple journal book accounts and not smart accounting engine per say. It might be enough for simple business, but for complex one It still make accountant life (or implementer who have to close all the gap) difficult just like previous v8, and will be in the next versions.

But I think it is also their intention, as their vision is sales/marketing as the core and not accounting anyway.
https://www.odoo.com/slides/slide/keynote-odoo-strategy-2015-200
https://www.odoo.com/slides/slide/keynote-odoo-9-new-features-201

And you will find that many of Odoo partners also not implement accounting module. So, I won’t say it is bad move.

What kind of UI would you want for that?

Can you give specific examples where this can be improved?

Why do you think it is that accountants are so against changes while other type of employees, like sales or warehouse managers, are more open to new interfaces and even ways of working?

Yes they are accountants and they should know which one is which, but you would be surprised at times
Fully agree. I see this in Kenya and I see this with my self, a self-taught “accountant”, still struggling with debits and credits.

Fully agree. I see this in Kenya and I see this with my self. Some simple things can be done here:

Thanks @rmehta,
** No new UI for batch entries, but just a new document. You can see on the link I have posted above.
What about this.
On top: Account on which batch entries will be made against.
All entries will either be Debit or Credit against that account. So a tick box for either.
Then a child table (and each row has these fields)
Date >>> Account (the other account) >>> Reference >>> Description >>> Amount

** How can we start a smart engine for accounting … I am defintely not a software developer, but I would suggest simple things such as:
Is the account a bank account ==> then you either have payments or receipts
If you have a Debit transaction, then the other one should automatically be a Credit.

See my previous message about Sale Invoice Return … I have to do a JV and I had to scratch my head to see which accounts I had to deal with first, then which one was supposed to be credit and which one was suppose to be debit. This should normally be automatic process.

Hi @rmehta,

I have not gone deep with ERPNext, so please take this as constructive comment from someone not knowing ERPNext very well yet.

Many thing I see. At first it look too plain simple, but after play around it make more and more sense. Like the smart search. The report filter, grouping, etc. It is really easy to use and I liked them.

But what I start to look into about accounting, there are things I think need improvement. Just want to raise some points I have observed (without seeing the code yet).

1) When we cancel a document, i.e., Invoice. System will directly remove all the journal entries !!

All the real ERP I know from SAP, NAV to Adempiere, do not remove entries when cancel (auditor won’t accept it), instead, will create a reversed journal entries.
** This feature does not exist in Odoo too, we had the same problem. But luckily, it can be rescued by community module. Still not very good.

I think this is serious point, if accounting entries is deleted, i.e., I can’t create tax report about the cancelled entries from accounting entry table alone. However, I may, with joining the Invoice table, etc…, but it can be error prone.

I think accounting entries is heart of ERP system, and nothing should be deleted or updated, every trail must be there, for auditing and for reporting.

2) If invoice is paid, it unlink with its paid JV !!

I think system should not allow, isn’t it lead to human errors? To be more proper, system should ask user to unreconcile payment first before cancel the invoice. (yes, by create reverse entries of payment JV).

3) When do payment, I am directed to JV, no Payment Document exists

I have not played around much with how payment process is. Just that it is quite weired when, for example, want to pay partial. I have to adjust credit/debit myself. If transaction is more complex, i.e., including withholding tax, it will need a smart accountant user to adjust the entries.

So far, I think the concept of software in overall and usability is great, and can make people easily in love with it. But, I am a bit worry about its accounting practice (more worry than Odoo now :p).
But may be I am too new that don’t understand its concept behind it yet. If you have discussion why things are done this way, please share. I would love to understand it.

Thanks,

1 Like

I think accountant can change. The process, the UI. But at the end of day, the accounting entries must be valid.

@kittiu

The cancelled Sales Invoice exists in the system, so there is traceability. No need for duplication

There is a Payment Tool, but yes, I agree there must be a Payment Entry

Thanks for your suggestion!

@Francois_Ifitwala maybe a specialized Payment document will also make it a lot easier to tag payments against multiple invoices.

Thanks for your answer.

I know that cancelled invoice is still there. And that’s the exact point I raised. First, I confirm it is not traceable form good accounting practice stand point. And it is not about tractability alone, the deleted entries makes it impossible to query Tax Report from account entries without joining with invoice table (trust me, it is not good to do so). In many country, even the cancelled, it has to be in Tax Report.

Account Entries is the final destination of all the transaction in the system. It is the single source of truth that should not be altered (only appended the reversed enteries).

In Odoo also, they allow to delete it. But for company with good accounting practice, it simply not acceptable.
This also allows user to set back to draft, which is also something should not be done. If invoice is cancelled, new document should be issued, not amended.

I understand, technically, deleting entries make it much easier to code. So, I just leave my opinion here :sunny:

1 Like