Skip to content

Commit 8be4de7

Browse files
committed
[IMP] accounting: vendor bill digitization & update PO matching
task-4865418 task-4844221 X-original-commit: ddd957d
1 parent 6121497 commit 8be4de7

File tree

4 files changed

+192
-72
lines changed

4 files changed

+192
-72
lines changed

content/applications/finance/accounting/taxes.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,8 @@ tax, and click on :guilabel:`Save`.
3434

3535
.. _taxes/list_activation:
3636

37-
Activate sales taxes from the list view
38-
=======================================
37+
Activate taxes from the list view
38+
=================================
3939

4040
As part of your :ref:`fiscal localization package <fiscal_localizations/packages>`, most of your
4141
country's sales taxes are already preconfigured on your database. However, only a few taxes are

content/applications/finance/accounting/vendor_bills.rst

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -38,18 +38,17 @@ click :guilabel:`New`.
3838
Automatically
3939
-------------
4040

41-
Vendor bills can be automatically created through various methods:
42-
43-
- Emailing to an :ref:`email alias <invoice-digitization/email-alias>` associated with the purchase
44-
journal. If the email does not contain a valid file, an automatic response notifies the sender
45-
that no document was received.
46-
- Uploading a PDF: To upload a bill, go to :menuselection:`Accounting --> Vendors --> Bills`, then
47-
click :guilabel:`Upload`.
41+
Vendor bills can be automatically created by sending an email to an :ref:`email alias
42+
<accounting/bill-digitization/email-alias>` associated with the purchase journal, or by
43+
:ref:`uploading a PDF <accounting/bill-digitization/manual-upload>`.
4844

4945
.. note::
5046
- Once the bill is uploaded, the PDF document appears on the right side of the screen, making it
5147
easy to fill in the bill information.
52-
- Bills can be :doc:`digitized <vendor_bills/invoice_digitization>` for automatic completion.
48+
- Bills can be :doc:`digitized <vendor_bills/invoice_digitization>` for automatic
49+
completion and :ref:`matched with purchase orders
50+
<accounting/bill-digitization/vendor-bills-matching-po>` to replace OCR-detected data with the
51+
existing purchase order's details.
5352
- Services such as digitizing scanned or PDF vendor bills in Odoo require :doc:`In-App
5453
Purchase (IAP) </applications/essentials/in_app_purchase>` credits.
5554

@@ -62,6 +61,10 @@ following options:
6261
- :guilabel:`Ask after 3 validations without edits`
6362
- :guilabel:`Never`
6463

64+
.. seealso::
65+
:ref:`Vendor bills matching with purchase orders
66+
<accounting/bill-digitization/vendor-bills-matching-po>`
67+
6568
.. _accounting/vendor_bills/bill-completion:
6669

6770
Bill completion
Lines changed: 177 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -1,101 +1,216 @@
1-
================================
2-
AI-powered document digitization
3-
================================
1+
=====================
2+
Document digitization
3+
=====================
44

5-
**Invoice digitization** is the process of converting paper documents into vendor bill and customer
6-
invoice forms in your accounting.
5+
Document digitization refers to the process of converting paper or digital documents into records
6+
in a database. Using :abbr:`OCR (optical character recognition)` and artificial intelligence
7+
technologies, Odoo reads the content and automatically creates and fills in the record's details.
8+
This process is mainly used for vendor bills (or refunds).
79

8-
Odoo uses :abbr:`OCR (optical character recognition)` and artificial intelligence technologies to
9-
recognize the content of the documents. Vendor bill and customer invoice forms are automatically
10-
created and populated based on the scanned invoices.
10+
.. note::
11+
Although less common, this digitization process can also be applied to customer invoices and
12+
credit notes. The :ref:`settings <accounting/bill-digitization/configuration>` need to be
13+
adjusted accordingly.
1114

1215
.. seealso::
1316
- `Test Odoo's invoice digitization <https://www.odoo.com/app/invoice-automation>`_
1417
- `Odoo Tutorials: Vendor Bill Digitization
1518
<https://www.odoo.com/slides/slide/vendor-bill-digitization-7065>`_
19+
- :doc:`/applications/essentials/in_app_purchase`
20+
21+
.. _accounting/bill-digitization/configuration:
1622

1723
Configuration
1824
=============
1925

20-
In :menuselection:`Accounting --> Configuration --> Settings --> Digitization`, check the box
21-
:guilabel:`Document Digitization` and choose whether :guilabel:`Vendor Bills` and
22-
:guilabel:`Customer Invoices` (this includes customer credit notes) should be processed
23-
automatically or on demand.
26+
Go to :menuselection:`Accounting --> Configuration --> Settings` and navigate to the
27+
:guilabel:`Digitization` section. Enable the :guilabel:`Document Digitization` option and choose
28+
whether :guilabel:`Vendor Bills` should be processed automatically or on demand.
29+
30+
.. note::
31+
If the :guilabel:`Single Invoice Line Per Tax` option is enabled, only one line is created per
32+
tax in the new vendor bill, regardless of the number of lines on it.
33+
34+
.. _accounting/bill-digitization/vendor-bills-upload:
35+
36+
Vendor bills upload
37+
===================
38+
39+
Vendor bills are :ref:`uploaded manually <accounting/bill-digitization/manual-upload>` or sent to a
40+
:ref:`designated email alias <accounting/bill-digitization/email-alias>` to be digitized. They can
41+
also be :ref:`automatically posted <accounting/bill-digitization/auto-post-bills>` for selected
42+
vendors.
43+
44+
.. note::
45+
Once the bill is uploaded, the document preview appears on the right side of the screen.
46+
47+
.. seealso::
48+
:doc:`Vendor bills <../vendor_bills>`
49+
50+
.. _accounting/bill-digitization/manual-upload:
51+
52+
Manual upload
53+
-------------
54+
55+
In the Accounting dashboard, drag and drop vendor bills into the desired purchase journal or click
56+
:guilabel:`Upload` on the purchase journal.
57+
58+
.. _accounting/bill-digitization/email-alias:
59+
60+
Upload via email alias
61+
----------------------
62+
63+
Vendor bills can be uploaded via an email alias associated with the relevant journal in two ways:
2464

25-
If you enable the :guilabel:`Single Invoice Line Per Tax` option, only one line is created per tax
26-
in the new bill, regardless of the number of lines on the invoice.
65+
- scanned from a connected scanner configured to send email to an email alias;
66+
- sent directly to an email alias.
2767

28-
Invoice upload
29-
==============
68+
Each PDF attached to the email is automatically converted into a new draft vendor bill.
3069

31-
Upload invoices manually
32-
------------------------
70+
.. note::
71+
- Only PDF and XML formats are processed via an email alias associated with a journal.
72+
- JPEG files must be processed via :ref:`email alias in the Documents app
73+
<documents/email-aliases>`.
74+
75+
To add an email alias to a journal, follow these steps:
76+
77+
#. Make sure an :doc:`alias domain <../../../websites/website/configuration/domain_names>` has been
78+
configured.
79+
#. The default email alias `vendor-bills@` followed by the alias domain is automatically created
80+
and available in the :guilabel:`Advanced Settings` tab of the :guilabel:`Vendor Bills` journal.
81+
#. To change a default email alias, go to :menuselection:`Accounting --> Configuration -->
82+
Journals`, select the corresponding journal, and edit the :guilabel:`Email Alias` in the
83+
:guilabel:`Advanced Settings` tab.
84+
#. Configure the connected scanner to send scanned documents to the email alias, if needed.
3385

34-
From the :guilabel:`Accounting Dashboard`, click on the :guilabel:`Upload` button of your vendor
35-
bills journal.
36-
Alternatively, go to :menuselection:`Accounting --> Customers --> Invoices` or
37-
:menuselection:`Accounting --> Vendors --> Bills` and select :guilabel:`Upload`.
86+
.. note::
87+
Alternatively, an :ref:`email alias in the Documents app <documents/email-aliases>` can be used
88+
to automatically send vendor bills to the :guilabel:`Finance` :ref:`folder
89+
<documents/folders>` (e.g., `inbox-financial@example.odoo.com`).
3890

39-
.. _invoice-digitization/email-alias:
91+
.. _accounting/bill-digitization/auto-post-bills:
4092

41-
Upload invoices using an email alias
42-
------------------------------------
93+
Auto-post bills
94+
---------------
4395

44-
You can configure your connected scanner to send scanned documents to an email alias. Emails sent to
45-
these aliases are converted into new draft customer invoices or vendor bills.
96+
To use the :guilabel:`Auto-post bills` option, the :guilabel:`Digitize automatically` setting in the
97+
:ref:`Document Digitization <accounting/bill-digitization/configuration>` section must be enabled
98+
for vendor bills.
4699

47-
You can modify the email alias of a journal. To do so, go to the :guilabel:`Settings` app. Under
48-
:guilabel:`General Settings: Discuss`, enable :guilabel:`Custom Email Servers`, add an
49-
:guilabel:`Alias Domain`, and :guilabel:`Save`.
100+
To set an auto-post bills option for a vendor, go to :menuselection:`Accounting --> Vendors -->
101+
Vendors` and click the desired vendor. In the :guilabel:`Accounting` tab of the contact form, select
102+
an :guilabel:`Auto-post bills` option in the :guilabel:`Automation` section:
50103

51-
The email alias is now available in the :guilabel:`Advanced Settings` tab of the journal. Emails
52-
sent to this address will be converted automatically into new invoices or bills.
104+
- :guilabel:`Always`
105+
- :guilabel:`Ask after 3 validations without edits`: When the third uploaded bill is confirmed
106+
without any edits, an :guilabel:`Autopost Bills` window appears. The following options can be
107+
chosen: :guilabel:`Activate auto-validation`, :guilabel:`Ask me later`, or :guilabel:`Never for
108+
this vendor`.
109+
- :guilabel:`Never`
53110

54111
.. note::
55-
If you use the :doc:`Documents </applications/productivity/documents>` app, you can automatically
56-
send your scanned invoices to the :guilabel:`Finance` workspace (e.g.,
57-
`inbox-financial@example.odoo.com`).
112+
Since automation is triggered after three validated bills without edits, the contact name must
113+
already exist in the database, and each uploaded vendor bill must include a bill date.
114+
115+
.. _accounting/bill-digitization/digitization:
58116

59-
The default email aliases `vendor-bills@` and `customer-invoices@` followed by the
60-
:guilabel:`Alias Domain` you set are automatically created for the :guilabel:`Vendor Bills` and
61-
:guilabel:`Customer Invoices` journals, respectively. Emails sent to these addresses are converted
62-
automatically into new invoices or bills.
117+
Digitization and data recognition with AI
118+
=========================================
63119

64-
To change a default email alias, go to
65-
:menuselection:`Accounting --> Configuration --> Accounting: Journals`. Select the journal you want
66-
to edit, click on the :guilabel:`Advanced Settings` tab, and edit the `Email Alias`.
120+
Depending on the :ref:`settings <accounting/bill-digitization/configuration>`, documents are either
121+
automatically digitized or require manual processing if digitization is set to on-demand only.
67122

68-
Invoice digitization
69-
====================
123+
To manually digitize an :ref:`uploaded document
124+
<accounting/bill-digitization/vendor-bills-upload>`, click :guilabel:`Digitize document`.
70125

71-
According to your settings, the document is either processed automatically, or you need to click on
72-
:guilabel:`Send for digitization` to do it manually.
126+
Once the document has been digitized, a blue banner appears; click :icon:`oi-arrow-right`
127+
:guilabel:`Refresh`. Review and correct any information uploaded during digitization: click on the
128+
related field(s) to edit them, or click :guilabel:`Reload AI data` to refresh the data.
73129

74-
Once the data is extracted from the PDF, you can correct it if necessary by clicking on the
75-
respective tags (available in :guilabel:`Edit` mode) and selecting the proper information instead.
130+
Then, click :guilabel:`Confirm` to post the document.
76131

77-
Data recognition with AI
78-
========================
132+
.. tip::
133+
Once a document has been digitized, the :guilabel:`Vendor` field remains empty if the vendor
134+
doesn't exist in the database. To add it, click the :icon:`fa-caret-down` :guilabel:`(down arrow)`
135+
in the :guilabel:`Vendor` field; the vendor name appears highlighted in the document preview on
136+
the right. Click it to open a new vendor form with the name pre-filled.
79137

80-
It is essential to review and correct (if needed) the information uploaded during digitization.
81-
Then, you have to post the document by clicking on :guilabel:`Confirm`. In this manner, the AI
82-
learns, and the system identifies the correct data for future digitizations.
138+
.. note::
139+
The following vendor bill fields are recognized by OCR:
140+
141+
- :guilabel:`Vendor`, :guilabel:`Bill Reference`, :guilabel:`Bill Date`, :guilabel:`Payment
142+
Reference` (only in the Belgian +++xxx/xxxx/xxxxx+++ format), :guilabel:`Recipient Bank`,
143+
:guilabel:`Due Date`, and the currency (in a :doc:`multi-currency
144+
<../get_started/multi_currency>` environment and if the currency is activated).
145+
- From the :guilabel:`Invoices Lines` tab: :guilabel:`Product` description/label,
146+
:guilabel:`Quantity`, unit :guilabel:`Price`, :guilabel:`Taxes` (if the :ref:`tax is activated
147+
<taxes/list_activation>`; this field is not recognized by OCR for the :doc:`Indian
148+
localization <../../fiscal_localizations/india>`), :guilabel:`Untaxed Amount`, and
149+
:guilabel:`Total`.
150+
151+
.. _accounting/bill-digitization/vendor-bills-matching-po:
152+
153+
Purchase order matching
154+
=======================
155+
156+
When a digitized vendor bill is recognized by :abbr:`OCR (optical character recognition)`, Odoo
157+
searches the database for a matching purchase order. If found, the vendor bill can be manually
158+
matched with the existing open purchase order lines.
159+
160+
Once a vendor bill has been :ref:`uploaded <accounting/bill-digitization/vendor-bills-upload>` and
161+
:ref:`digitized <accounting/bill-digitization/digitization>`, click the :guilabel:`Purchase
162+
matching` smart button to access the :guilabel:`Purchase matching` list view, displaying all
163+
purchase order lines linked to the vendor assigned to the vendor bill. Then, select the relevant
164+
purchase order lines and the draft vendor bill (shown in grey), and click :guilabel:`Match`.
165+
166+
.. tip::
167+
In the :guilabel:`Purchase Matching` list view, update the :guilabel:`Quantity` and
168+
:guilabel:`Price` in the purchase order lines, if necessary.
169+
170+
If there is no existing purchase order related to the vendor of the uploaded vendor bill, a new
171+
purchase order can be directly created from the vendor bill lines. To do so, follow these steps:
172+
173+
#. Once the vendor bill is uploaded, make sure the :guilabel:`Vendor` field is filled in with the
174+
correct vendor.
175+
#. Click the :guilabel:`Purchase matching` smart button, select the draft vendor bill in the list
176+
(shown in grey), and click :guilabel:`Add to PO`.
177+
#. In the :guilabel:`Add to Purchase Order` window, start typing in the :guilabel:`Purchase Order`
178+
field and select :guilabel:`Create and edit`.
179+
#. In the :guilabel:`Create Purchase Order` window, select the vendor assigned to the vendor bill,
180+
then complete all :ref:`required fields <purchase/manage_deals/create-new-rfq>` and click
181+
:guilabel:`Confirm`.
182+
#. In the :guilabel:`Purchase Matching` list view, select the relevant purchase order lines and the
183+
draft vendor bill (shown in grey), and click :guilabel:`Match`.
184+
185+
.. Note::
186+
If any information required for the purchase order fields is missing, click :guilabel:`Save and
187+
Close` in the :guilabel:`Create Purchase Order` window. Then, open the Purchase app to fill in
188+
the fields and :ref:`confirm the purchase order <purchase/manage_deals/confirm-order>`.
189+
190+
.. tip::
191+
- Electronic vendor bills with embedded XML ensure more accurate and efficient processing.
192+
- Alternatively, the :ref:`Auto-complete <accounting/vendor_bills/bill-completion>` feature
193+
can transfer information from the purchase order to the vendor bill, without requiring OCR.
194+
195+
.. _accounting/bill-digitization/pricing:
83196

84197
Pricing
85198
=======
86199

87-
The **invoice digitization** is an In-App Purchase (IAP) service that requires prepaid credits to
88-
work. Digitizing one document consumes one credit.
200+
The document digitization feature is an In-App Purchase (IAP) service requiring prepaid credits.
201+
Digitizing one document uses one credit.
89202

90-
To buy credits, go to :menuselection:`Accounting --> Configuration --> Settings --> Digitization`
91-
and click on :guilabel:`Buy credits`, or go to :menuselection:`Settings --> Odoo IAP` and click on
92-
:guilabel:`View My Services`.
203+
To buy credits, :ref:`go to the Settings app <iap/buying_credits>` or :menuselection:`Accounting -->
204+
Configuration --> Settings`, navigate to the :guilabel:`Digitization` section, and click
205+
:guilabel:`Buy credits`.
93206

94207
.. note::
95-
Enterprise Odoo users with a valid subscription get free credits to test IAP features before
96-
deciding to purchase more credits for the database. This includes demo/training databases,
97-
educational databases, and one-app-free databases.
208+
- Odoo Enterprise users with a valid subscription get free credits to test IAP features before
209+
purchasing more credits for the database. This includes demo/training databases, educational
210+
databases, and one-app-free databases.
211+
- XML files don't require OCR credits because they contain structured data that can be processed
212+
directly, without OCR.
98213

99214
.. seealso::
100-
- `Our Privacy Policy <https://iap.odoo.com/privacy#header_6>`_
215+
- `Odoo In-App Purchase Privacy Policy <https://iap.odoo.com/privacy#header_6>`_
101216
- :doc:`/applications/essentials/in_app_purchase`

content/applications/inventory_and_mrp/purchase/manage_deals/rfq.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,8 @@ Clicking :guilabel:`Print RFQ` downloads a PDF of the |RFQ|.
187187
.. seealso::
188188
:doc:`../../../essentials/contacts`
189189

190+
.. _purchase/manage_deals/confirm-order:
191+
190192
Confirm order
191193
-------------
192194

0 commit comments

Comments
 (0)