This module is a module to analyze and provides tools to help purchasers to change Odoo supplier invoices when they receives the invoice from the supplier.
It is helpull in the following Use Case:
- You create purchase orders with many lines in Odoo to generate and send the purchase order to the supplier, via Odoo.
- you change quantities in some picking lines when you receive the goods and confirm the picking.
- you generate a draft supplier invoice, based on the products you received. (Invoice Policy : Base on delivery)
- Then you have to compare the draft theoritical invoice with the real supplier invoice and apply changes in the theoritical invoice to match with the real supplier invoice.
Reflections regarding community work
This module is an alternative to OCA modules, mainly account_invoice_import_invoice2data
.
The reasons of the development of a specific module are the following :
- To use the OCA solution, we need to install 9 modules for a total of 2500 lines of code.
account_invoice_import
,account_invoice_import_invoice2data
,unece
, etc... while this module contains less than 300 lines of python code. - The current invoice2data OCA modules doesn't handle line analysis. A Work In Progress is present since April 2022 here https://github.com/OCA/edi/ for the V14 version. It is unmerged, not available for GRAP branches (V12 / V16) and doesn't handle multiple discounts.
- The OCA wizard is very complex, because it handles a lot of use cases, while the wizard of this module is very simple and handles all the use cases of the workflow "Update the odoo invoice, based on supplier invoice".
Managed Suppliers | ||
---|---|---|
Supplier Name | VAT Number | Website |
Relais Vert | FR 72 352 867 493 | https://www.relais-vert.com/ |
Ekibio | FR 30 345 052 286 | https://www.ekibio.fr/ |
Table of contents
Consider the following use case.
The PDF Invoice sent by your supplier
The Odoo Invoice generated from the Purchase Order
- Go to "Invoicing > Vendors > Bills"
- Select an invoice and click on "Action > Update Based on the PDF of the supplier"
PDF Selection
- Click "Upload your file" to select a PDF
- Click on "Import" button
Product mapping
- The wizard will guess producs, based on the
product_code
of the selected supplier. - If the supplierinfo is not found, a step ask to mention which product corresponds to the invoice line. you have to link each supplier invoice line to an existing product (or create a new one).
- Click on "Map Products"
- The wizard will guess producs, based on the
Summary before update
The last screen display all the changes that will be done on the Odoo invoice.
For the lines present in the supplier invoice, it will create or update existing lines. The lines present in Odoo but not in the supplier invoice will be removed.
- Finally, click on "Apply Changes"
Impact on the PDF
- The missing lines have been created.
- The different lines has been updated. (and a description of the change has been added)
- The extra lines has been disabled. (quantity has been set to 0.)
- All the lines has been reordered.
Work to do before sharing in OCA
- Move in a dedicated module:
_get_extra_products
inwizards/wizard_invoice2data_import_line.py
- Remove dependencies to triple discount modules, if there have been introduced.
Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.
Do not contact contributors directly about support or help with technical issues.
- GRAP
- Sylvain LE GAL <https://twitter.com/legalsylvain>
This module is part of the grap/grap-odoo-business-supplier-invoice project on GitHub.
You are welcome to contribute.