Keyboard of computer or laptop with key search and magnifier

A closer look at modules – to have or have not

When we take over projects, we can’t help but notice again and again that there are some modules present in the client’s software that shouldn’t have been installed in the first place. The basic approach should be to install only what is actually necessary. Each unnecessary add-on not only requires unnecessary maintenance of the master files, but also leads to erroneous recordings of business transactions and – consequently – to a potential mishandling of processes. Put frankly, what is not there cannot cause either or the other.

What is more, even though there is a „Deinstall“ Button, it is, in fact, only able to deinstall 50% of a module. Because when a module is activated, the database structure is extended first with all its interdependencies, and only then the objects, masks, security settings, etc. are loaded. During deinstallation, the second part will be removed, but it is not possible to reset the data base to its pre-installation structure. Having done that you are actually even worse off than before, since there are now, in all probability, mandatory fields without a default value – and without an input mask or its counterpart within such a mask – which may be used to maintain values.

It is easy to recognize this, when Odoo suddenly refuses to save a data record and a message appears to inform you that a certain mandatory field has not been filled in, and this very field seems to have vanished completely.

In this blog we have compiled a short list of modules that are considered necessary by many, but are actually needed by only a few!

Unit of measures

This module is probably the most frequently installed, but the least frequently required. It is uploaded via the warehouse, using the “Units of Measure” setting. The description clearly and unambiguously states, „sale and purchase of products in different units of measure“. And therein, exactly, lies the rub: this module is required only if the unit of measure in purchase is different from the unit of measure in sales (e.g. gallons vs. liters, roll vs. square meter).

Even if we see this time and again, the module is definitely not intended for displaying the unit of measure of a product in quotations, order confirmations or delivery notes.

This, of course, leads to the question, how else do you identify a difference in units of measure, if not via this module? The answer is simple: you file this information directly in the product description or create a dedicated field for information on the product, which then gets inserted and displayed in the respective customized document templates (this procedure, however, would run under the heading „adjustment“).

Account_cancel: „Cancel Journal Entries“

This module is probably an even worse candidate, since it allows any operator to cancel records that have already been booked! Any accountant worth his salt would throw up his hands in disgust, since such a procedure would completely undermine revision safety of bookings. After all, a posting record, once booked, may only be cancelled by an off-setting entry.

This, of course, occurs most frequently during invoicing, due to incorrect invoicing addresses or changes made in incorrect invoicing addresses, incorrect discounts, incorrect product text, incorrect quantity or incorrect accounts. A number of reasons are conceivable here.

This is why some admins will certainly consult the Odoo App Store and find this questionable module. After all, its description seems to fit the issue exactly.

However, the correct procedure should be:

1. If the content of the invoice itself is incorrect, because an incorrect address, quantity, price or text has been entered, Odoo offers to either effect a cancellation or to create a partial credit note using the command “Create Credit Note”. In our sample case, a cancellation will be effected. The customer, by the way, should also receive a respective document, since he has demonstrably received an invoice. Now, and only now, it is possible to create a new invoice and the corresponding correction may be done.

Of course, you should always consider whether a cancellation is really necessary or whether a partial credit note would not be sufficient, since in the end a payment of the balance between invoice and credit note would settle both documents.

As a basis for assessment, it is also important to remember that a new invoice always entails a new due date.

2. The invoice itself is correct, but it has been booked to the wrong debtor or to an incorrect tax account. Obviously, it doesn’t make much sense to create a new invoice, since this is an internal issue. It does not affect the customer and it is not necessary to calculate a new due date. This leaves us with only one solution: the amount has to be transferred manually to a new, manually created, posting record.

There is no other approach possible, since in Germany the Datev export is usually performed at the end of the month. Because once a posting record has been exported, both systems would become inconsistent, if you cancelled and changed it, since this posting record cannot be exported nor re-imported into Datev.


Basically, „Document“ is quite a useful module and officially described as a tool for “document management”. This is a somewhat ambitious description, since in fact it is „only“ an archive for documents. Once installed, the user has the option of uploading documents related to a process via the button “Attach”. However, it is just a functionality which is actually already in place.

So, why do we list this under the questionable modules, since after all it does sound quite useful and handy. Well, yes, it is really quite handy, especially since it has another advantage, apart from its “normal” function. Without this module, it is only possible to create a note or message for a process, e.g. an offer, and to attach a document using the paper-clip symbol. However, if you have to amend your offer severally times or if there is a lot of communication regarding this offer, this file will slide back further and further in the version history. On the other hand, the “Attach” button is always right at the top, so you are always able to find what you want without scrolling or searching. And yet, it does not show when and by whom the document has been attached.

Having said that, we still face the problem that this function is not associated with any safety rules. Anyone with access to this process is able to open the list and delete attachments directly, via the waste bin icon, whereas notes and messages, once created, are audit-proof and so are their attachments!

And now we come to the icing on the cake:

Invoices that have been printed or sent via e-mail are also stored in the internal document file! In other words, if the “Document” module has been installed, the button “Attach” will also appear in your invoice. Once you have generated a PDF file of the invoice and saved it in the document file, it will appear as an attached document and may, of course, be deleted by any user at any time! And as simple as that, the system is – quite predictably – in a questionable state when it comes to saving revision-proof invoices.