Skip to content

[IMP] accounting: vendor bill digitization & update PO matching #13928

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: 17.0
Choose a base branch
from

Conversation

afma-odoo
Copy link
Contributor

@afma-odoo afma-odoo commented Jul 4, 2025

task-4865418
task-4844221

@robodoo
Copy link
Collaborator

robodoo commented Jul 4, 2025

Pull request status dashboard

@C3POdoo C3POdoo requested review from a team July 4, 2025 09:25
@afma-odoo afma-odoo removed request for a team July 4, 2025 09:33
@afma-odoo afma-odoo force-pushed the 17.0-accounting-vendorbills-digitization-ocr-afma branch from 27617bc to 607e639 Compare July 4, 2025 09:56
@afma-odoo afma-odoo changed the title 17.0 accounting vendorbills digitization ocr afma [IMP] accounting: vendor bill digitization & update PO matching Jul 4, 2025
@afma-odoo afma-odoo requested a review from a team July 4, 2025 10:27
Copy link
Contributor

@auva-odoo auva-odoo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello @afma-odoo, thank you for work!
In addition to my review comments:

  1. Since OCR is most commonly used to create vendor bills from invoices, and creating customer invoices from vendor bills is a much less frequent use case, I suggest we focus this documentation on vendor bills and add a tip or note somewhere in the intro stating that the same process also applies to customer invoices, but that it is a less common workflow or something similar. And when we mention the settings, we could add a tip as well to mention the Customer invoices setting, maybe? I think it would make the documentation more clear and less confusing, and also it would justify having this doc in the Vendor bills section and not somewhere else. What do you think?
  2. scanned/paper: I think we don't necessarily need to scan paper documents, we could just use a PDF directly. I'd suggest checking the whole file for this and changing these occurrences accordingly (when relevant of course!). EDIT: actually I see that formats other than PDFs are also supported; let's discuss this!

PS: I apologize in advance if some of my comments are a bit all over the place; I was quite confused and having trouble testing some of the features towards the end of this PR and I think my comments reflect that. Sorry!

@@ -2,99 +2,152 @@
AI-powered document digitization
================================

**Invoice digitization** is the process of converting paper documents into vendor bill and customer
invoice forms in your accounting.
**Digitization** converts paper documents into vendor bills and customer invoices.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • I liked "refers to the process of converting"
  • I don't like using "digitization" on its own here because digitization as a whole is more general, and this particular doc is specific to vendor bills and invoices. Coudl we find something a bit more precise and accurate?
  • I suppose the documents are not necessarily physical paper documents per say (they could be a PDF for example?)


If you enable the :guilabel:`Single Invoice Line Per Tax` option, only one line is created per tax
in the new bill, regardless of the number of lines on the invoice.
Uploading manually
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Uploading manually
Manual upload


.. _invoice-digitization/email-alias:
Uploading using an email alias
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Uploading using an email alias
Upload via email alias

:guilabel:`General Settings: Discuss`, enable :guilabel:`Custom Email Servers`, add an
:guilabel:`Alias Domain`, and :guilabel:`Save`.
Each PDF attached to the email is automatically converted into a new draft vendor bill (or customer
invoices).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
invoices).
invoice).

Also, I understand from the note below that it's not just PDFs? do you know how XMLs are processed then? Or do we mean PDFs with embedded XML in the note below? Are there other formats as well?


Upload invoices using an email alias
------------------------------------
Vendor bills (or customer invoices) can be uploaded with an email alias in two ways:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Vendor bills (or customer invoices) can be uploaded with an email alias in two ways:
Vendor bills (or customer invoices) can be uploaded via email alias in two ways:

and I think I would mention that this alias is associated with the relevant journal somewhere here?

deciding to purchase more credits for the database. This includes demo/training databases,
educational databases, and one-app-free databases.
purchasing more credits for the database. This includes demo/training databases, educational
databases, and one-app-free databases.

.. seealso::
- `Our Privacy Policy <https://iap.odoo.com/privacy#header_6>`_
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- `Our Privacy Policy <https://iap.odoo.com/privacy#header_6>`_
- `Odoo In-App Purchase Privacy Policy <https://iap.odoo.com/privacy#header_6>`_

It is essential to review and correct (if needed) the information uploaded during digitization.
Then, you have to post the document by clicking on :guilabel:`Confirm`. In this manner, the AI
learns, and the system identifies the correct data for future digitizations.
.. _accounting/invoice-digitization/pricing:

Pricing
=======

The **invoice digitization** is an In-App Purchase (IAP) service that requires prepaid credits to
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we really keep "invoice" here (you removed it elsewhere on this doc page)? And I would also add "feature": The document (or XX) digitization feature

Comment on lines +116 to +118
When a purchase order is detected on a vendor bill through OCR, Odoo searches the database for a
matching purchase order number. If found, it pulls in as much information as possible from the
purchase order and replaces the OCR-detected data on the vendor bill.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I’m having trouble understanding how this works exactly; I wasn’t able to test it based on the current info or the task description 😞. More specifically:

  1. When does Odoo start looking for a potential match in the POs? Once the (digitized) bill is confirmed?
  2. I see in the Knowledge article linked in the task the PO needs to meet a few condidtions (e.g., the Billing status) for it to be considered a potential match, should we mention those conditions? Are there others?
  3. Then what happens? And what happens if there are several potential matches?
  4. Just in case because I'm not 100% sure: Is this only for digitized documents or is this matching feature also available when we create vendor bills the "standard" (i.e. 100% manual) way?

I suggest reviewing this section a bit to make sure everything is clear and accurate.

Data recognition with AI
========================
.. tip::
- Use electronic invoices with embedded XML to ensure more accurate and efficient processing.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure this is actually up to the Odoo user when it comes to digitized documents (since they receive the documents in this case) so maybe we should rephrase this sentence a bit (to remove "use")

Comment on lines +132 to +133
- Alternatively, the :ref:`Auto-complete <accounting/vendor_bills/bill-completion>` feature
transfers information from the purchase order to the vendor bill without OCR required.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Alternatively, the :ref:`Auto-complete <accounting/vendor_bills/bill-completion>` feature
transfers information from the purchase order to the vendor bill without OCR required.
- Alternatively, the :ref:`Auto-complete <accounting/vendor_bills/bill-completion>` feature
can be used to transfer information from the purchase order to the vendor bill, without requiring OCR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants