[IMP] Expenses: Updating log expenses
closes odoo/documentation#15105 Signed-off-by: Lara Martini (larm) <larm@odoo.com>
@@ -3,81 +3,88 @@ Log expenses
|
||||
============
|
||||
|
||||
Before expenses can be reimbursed, each individual expense needs to be logged in the database.
|
||||
Expense records can be created in three different ways: :ref:`manually enter an expense record
|
||||
<expenses/manual_expense>`, :ref:`upload a receipt <expenses/upload_receipt>`, or :ref:`email a
|
||||
receipt <expenses/email_expense>` to a preconfigured email address.
|
||||
Expense records can be created in four different ways: :ref:`manually enter an expense record
|
||||
<expenses/manual_expense>`, :ref:`upload a receipt <expenses/upload_receipt>`, :ref:`drag and drop
|
||||
<expenses/drag_and_drop>` a receipt onto the **Expenses** app dashboard, or :ref:`email a receipt
|
||||
<expenses/email_expense>` to a preconfigured email address.
|
||||
|
||||
.. _expenses/manual_expense:
|
||||
|
||||
Manually enter expenses
|
||||
=======================
|
||||
|
||||
To record a new expense, open the :menuselection:`Expenses app`, which displays the :guilabel:`My
|
||||
Expenses` page, by default.
|
||||
To record a new expense, open the **Expenses** app, which displays the :guilabel:`My Expenses` page,
|
||||
by default.
|
||||
|
||||
.. tip::
|
||||
This view can also be accessed from :menuselection:`Expenses app --> My Expenses --> My
|
||||
Expenses`.
|
||||
This view can also be accessed at any time by navigating to :menuselection:`Expenses app --> My
|
||||
Expenses --> My Expenses`.
|
||||
|
||||
Then, click :guilabel:`New`, and then fill out the following fields on the form that appears:
|
||||
Click the :guilabel:`New` button and fill out the following fields on the blank expense form that
|
||||
loads:
|
||||
|
||||
- :guilabel:`Description`: Enter a short description for the expense. This should be concise and
|
||||
informative, such as `lunch with client` or `hotel for conference`.
|
||||
- :guilabel:`Category`: Select the expense category from the drop-down menu that most closely
|
||||
corresponds to the expense.
|
||||
informative, such as `Lunch with client` or `Hotel for trade show`.
|
||||
- :guilabel:`Category`: Using the drop-down menu, select the :doc:`expense category
|
||||
<expense_categories>` that most closely corresponds to the expense.
|
||||
- :guilabel:`Total`: Enter the total amount paid for the expense in one of two ways:
|
||||
|
||||
#. If the expense is for a single item/expense, and the category selected was for a single item,
|
||||
enter the cost in the :guilabel:`Total` field (the :guilabel:`Quantity` field is hidden).
|
||||
#. If the expense is for multiples of the same item/expense with a fixed price, the
|
||||
:guilabel:`Unit Price` is displayed. Enter the quantity in the :guilabel:`Quantity` field, and
|
||||
the total cost is automatically updated with the correct total. The total cost appears below
|
||||
the :guilabel:`Quantity`.
|
||||
:guilabel:`Unit Price` is displayed. Enter the number of units in the :guilabel:`Quantity`
|
||||
field, and the total cost is automatically updated with the correct total. The total cost
|
||||
appears below the :guilabel:`Quantity`.
|
||||
|
||||
.. example::
|
||||
In the case of mileage driven, the :guilabel:`Unit Price` is populated as the cost *per
|
||||
mile*. Set the :guilabel:`Quantity` to the *number of miles driven*, and the total is
|
||||
calculated.
|
||||
An employee received one dollar for each mile driven for work. The :guilabel:`Category` is
|
||||
:guilabel:`[MIL] Mileage`. The :guilabel:`Unit Price` is automatically populated with
|
||||
`$1.00`, which is the cost *per mile* configured for the expense :guilabel:`Category`
|
||||
:guilabel:`[MIL] Mileage`. The :guilabel:`Quantity` is set to `48`, which is the *number of
|
||||
miles driven*, and the total is calculated to `$48.00`.
|
||||
|
||||
- :guilabel:`Included Taxes`: If taxes were configured on the expense category, the tax percentage
|
||||
and amount appear automatically after entering either the :guilabel:`Total` or the
|
||||
- :guilabel:`Included Taxes`: If taxes were configured on the selected expense category, the tax
|
||||
percentage and amount appear automatically after entering either the :guilabel:`Total` or the
|
||||
:guilabel:`Quantity`.
|
||||
|
||||
.. note::
|
||||
When a tax is configured on an expense category, the :guilabel:`Included Taxes` value updates
|
||||
in real time, as the :guilabel:`Total` or :guilabel:`Quantity` is updated.
|
||||
|
||||
- :guilabel:`Employee`: Using the drop-down menu, select the employee this expense is for.
|
||||
- :guilabel:`Paid By`: Click the radio button to indicate who paid for the expense, and should be
|
||||
- :guilabel:`Employee`: Using the drop-down menu, select the employee associated with the expense.
|
||||
- :guilabel:`Paid By`: Click the radio button to indicate who paid for the expense and should be
|
||||
reimbursed. Select either :guilabel:`Employee (to reimburse)` or :guilabel:`Company`. Depending on
|
||||
the expense category selected, this field may not appear.
|
||||
- :guilabel:`Expense Date`: Using the calendar popover window that appears when this field is
|
||||
clicked, enter the date the expense was incurred.
|
||||
- :guilabel:`Account`: Using the drop-down menu, select the expense account the expense should be
|
||||
logged in.
|
||||
- :guilabel:`Customer to Reinvoice`: If the expense is something that should be paid for by a
|
||||
customer, select the :abbr:`SO (Sales Order)` and customer that should be invoiced for this
|
||||
expense from the drop-down menu. All sales orders in the drop-down menu list both the :abbr:`SO
|
||||
(Sales Order)`, as well as the company the sales order is written for. After the expense is saved,
|
||||
the customer name disappears, and only the :abbr:`SO (Sales Order)` is visible on the expense.
|
||||
- :guilabel:`Account`: If the selected expense :guilabel:`Category` has a specific account linked to
|
||||
it, that account appears in the :guilabel:`Account` field. If no account is specified, the default
|
||||
`600000 Expenses` account populates this field. If a different account is desired, select the
|
||||
account the expense should be logged in.
|
||||
- :guilabel:`Customer to Reinvoice`: If the expense should be paid for by a customer and the
|
||||
selected :guilabel:`Category` allows for reinvoicing of expenses, select the :abbr:`SO (Sales
|
||||
Order)` and customer to be invoiced for the expense using the drop-down menu. All sales orders in
|
||||
the drop-down menu list both the :abbr:`SO (Sales Order)`, as well as the company the sales order
|
||||
is written for. After the expense is saved, the customer name disappears, and only the :abbr:`SO
|
||||
(Sales Order)` is visible on the expense.
|
||||
|
||||
.. example::
|
||||
A customer wishes to have an on-site meeting for the design and installation of a custom
|
||||
garden, and agrees to pay for the expenses associated with it (such as travel, hotel, meals,
|
||||
etc). All expenses tied to that meeting would indicate the sales order for the custom garden
|
||||
(which also references the customer) as the :guilabel:`Customer to Reinvoice`.
|
||||
building, and agrees to pay for all expenses associated with the meeting, including travel,
|
||||
hotel, and meals for the traveling employees. All expenses tied to that meeting would indicate
|
||||
the sales order for the custom building (which also references the customer) as the
|
||||
:guilabel:`Customer to Reinvoice`.
|
||||
|
||||
- :guilabel:`Analytic Distribution`: Select the account the expense should be written against from
|
||||
the drop-down menu for either :guilabel:`Projects`, :guilabel:`Departments`, or both. Multiple
|
||||
accounts can be listed for each category, if needed. Adjust the percentage for each analytic
|
||||
account by typing in the percentage value next to each account.
|
||||
- :guilabel:`Company`: If multiple companies are set up, select the company the expense should be
|
||||
filed for from the drop-down menu. The current company automatically populates this field.
|
||||
- :guilabel:`Company`: If in a multi-company database, select the company the expense should be
|
||||
filed for using the drop-down menu. The current company automatically populates this field.
|
||||
- :guilabel:`Notes...`: If any notes are needed to clarify the expense, enter them in the notes
|
||||
field.
|
||||
|
||||
.. image:: log_expenses/expense-filled-in.png
|
||||
:align: center
|
||||
:alt: A filled in expense form for a client lunch.
|
||||
|
||||
Attach receipts
|
||||
@@ -91,18 +98,16 @@ The new receipt is recorded in the *chatter*, and the number of receipts appears
|
||||
:icon:`fa-paperclip` :guilabel:`(paperclip)` icon. Multiple receipts can be attached to an
|
||||
individual expense record, as needed.
|
||||
|
||||
.. image:: log_expenses/receipt-icon.png
|
||||
:align: center
|
||||
:alt: Attach a receipt and it appears in the chatter.
|
||||
|
||||
.. _expenses/upload_receipt:
|
||||
|
||||
Upload expenses
|
||||
===============
|
||||
|
||||
It is possible to have expense records created automatically, by uploading a PDF receipt. This
|
||||
feature requires the enabling of a setting, and the purchasing of :abbr:`IAP (in-app purchases)`
|
||||
credits.
|
||||
It is possible to have expense records created automatically by :ref:`uploading a PDF receipt
|
||||
<expenses/upload>`. To utilize this feature, a setting must be enabled, and :abbr:`IAP (in-app
|
||||
purchases)` credits must be purchased.
|
||||
|
||||
.. _expenses/digitalization:
|
||||
|
||||
Digitalization settings
|
||||
-----------------------
|
||||
@@ -112,16 +117,17 @@ Settings`, and tick the checkbox beside the :guilabel:`Expense Digitization (OCR
|
||||
click :guilabel:`Save`. When enabled, additional options appear. Click on the corresponding radio
|
||||
button to select one of the following options:
|
||||
|
||||
- :guilabel:`Do not digitize`: turns off receipt digitization.
|
||||
- :guilabel:`Digitize on demand only`: only digitizes receipts when requested. A
|
||||
:guilabel:`Digitize document` button appears on expense records. When clicked, the receipt is
|
||||
scanned and the expense record is updated.
|
||||
- :guilabel:`Digitize automatically`: automatically digitizes all receipts when they are uploaded.
|
||||
- :guilabel:`Do not digitize`: Disables receipt digitization but does *not* uninstall the related
|
||||
digitization module.
|
||||
- :guilabel:`Digitize on demand only`: Only digitizes receipts when requested. A :guilabel:`Digitize
|
||||
document` button appears on expense records. When clicked, the receipt is scanned and the expense
|
||||
record is updated.
|
||||
- :guilabel:`Digitize automatically`: Automatically digitizes all receipts when they are uploaded.
|
||||
|
||||
Beneath these options are two additional links. Click the :icon:`fa-arrow-right` :guilabel:`Buy
|
||||
credits` link to purchase credits for receipt digitization. Click the :icon:`fa-arrow-right`
|
||||
:guilabel:`View My Services` link to view a list of all current services, and their remaining credit
|
||||
balances.
|
||||
Beneath these options are two additional links. Click the :icon:`fa-arrow-right` :guilabel:`Manage
|
||||
Service & Buy Credits` link to view account details and settings, and purchase credits for receipt
|
||||
digitization. Click the :icon:`fa-arrow-right` :guilabel:`View My Services` link to view a list of
|
||||
all current services, and their remaining credit balances.
|
||||
|
||||
For more information on document digitization and :abbr:`IAPs (in-app purchases)`, refer to the
|
||||
:doc:`In-app purchase (IAP) <../../essentials/in_app_purchase>` documentation.
|
||||
@@ -135,6 +141,8 @@ For more information on document digitization and :abbr:`IAPs (in-app purchases)
|
||||
uninstalled, allowing for digitization to be enabled in the future by selecting one of the other
|
||||
two options.
|
||||
|
||||
.. _expenses/upload:
|
||||
|
||||
Upload receipts
|
||||
---------------
|
||||
|
||||
@@ -142,11 +150,6 @@ Open the :guilabel:`Expenses app`, and from the :guilabel:`My Expenses` dashboar
|
||||
:guilabel:`Upload`, and a file explorer appears. Navigate to the desired receipt, select it, then
|
||||
click :guilabel:`Open`.
|
||||
|
||||
.. image:: log_expenses/upload.png
|
||||
:align: center
|
||||
:alt: Create an expense by scanning a receipt. Click Scan at the top of the Expenses dashboard
|
||||
view.
|
||||
|
||||
The receipt is scanned, and a new expense record is created. The :guilabel:`Expense Date` field is
|
||||
populated with today's date, along with any other fields based on the scanned data, such as the
|
||||
:guilabel:`Total`.
|
||||
@@ -154,6 +157,18 @@ populated with today's date, along with any other fields based on the scanned da
|
||||
Click on the new entry to open the individual expense form, and make any changes, if needed. The
|
||||
scanned receipt appears in the *chatter*.
|
||||
|
||||
.. _expenses/drag_and_drop:
|
||||
|
||||
Drag and drop an expense
|
||||
========================
|
||||
|
||||
If :ref:`digitalization is enabled <expenses/digitalization>`, drag and drop a receipt onto the
|
||||
**Expenses** app dashboard. The receipt is scanned and appears by itself on the :guilabel:`Generate
|
||||
Expenses` dashboard.
|
||||
|
||||
Click on the expense record, and modify the details as needed. After changes are made, return to the
|
||||
:guilabel:`My Expenses` dashboard, and the expense now appears in the list.
|
||||
|
||||
.. _expenses/email_expense:
|
||||
|
||||
Email expenses
|
||||
@@ -162,24 +177,24 @@ Email expenses
|
||||
Instead of individually creating each expense in the **Expenses** app, expenses can be automatically
|
||||
created by sending an email to an email alias.
|
||||
|
||||
.. note::
|
||||
For security purposes, only authenticated employee emails are accepted by Odoo when creating an
|
||||
expense from an email. To confirm an authenticated employee email address, go to the employee
|
||||
card in the :menuselection:`Employees app`, and refer to the :guilabel:`Work Email` field.
|
||||
|
||||
.. image:: log_expenses/authenticated-email-address.png
|
||||
:alt: Create the domain alias by clicking the link.
|
||||
|
||||
To do so, an email alias must first be configured. Navigate to :menuselection:`Expenses app -->
|
||||
Configuration --> Settings`. Ensure the checkbox beside :guilabel:`Incoming Emails` is ticked. The
|
||||
default email alias is *expense@(domain).com*. Change the email alias by entering the desired email
|
||||
in the field to the right of :guilabel:`Alias`. Then, click :guilabel:`Save`.
|
||||
|
||||
.. image:: log_expenses/alias-email.png
|
||||
:align: center
|
||||
:alt: Te default email that populates the expenses email alias.
|
||||
|
||||
.. note::
|
||||
If the domain alias needs to be set up, :icon:`fa-arrow-right` :guilabel:`Setup your domain
|
||||
alias` appears beneath the :guilabel:`Incoming Emails` checkbox, instead of the email address
|
||||
field.
|
||||
|
||||
.. image:: log_expenses/email-alias.png
|
||||
:align: center
|
||||
:alt: Create the domain alias by clicking the link.
|
||||
|
||||
Refer to the :doc:`/applications/websites/website/configuration/domain_names` documentation for
|
||||
setup instructions and more information.
|
||||
|
||||
@@ -189,27 +204,21 @@ in the field to the right of :guilabel:`Alias`. Then, click :guilabel:`Save`.
|
||||
Once the email address has been entered, emails can be sent to that alias to create new expenses,
|
||||
without having to be in the Odoo database.
|
||||
|
||||
To submit an expense via email, create a new email, and enter the product's *internal reference*
|
||||
code (if available) and the amount of the expense as the subject of the email. Next, attach the
|
||||
receipt to the email. Odoo creates the expense by taking the information in the email subject, and
|
||||
combining it with the receipt.
|
||||
To submit an expense via email, create a new email, and enter the product's *reference* code (if
|
||||
available) and the amount of the expense as the subject of the email. Next, attach the receipt to
|
||||
the email. Odoo creates the expense by taking the information in the email subject, and combining it
|
||||
with the receipt.
|
||||
|
||||
To check an expense category's internal reference, go to :menuselection:`Expenses app -->
|
||||
Configuration --> Expense Categories`. If an internal reference is listed on the expense category,
|
||||
it is listed in the :guilabel:`Internal Reference` column.
|
||||
.. tip::
|
||||
To check an expense category's reference code, go to :menuselection:`Expenses app -->
|
||||
Configuration --> Expense Categories`. Reference codes are listed in the :guilabel:`Reference`
|
||||
column.
|
||||
|
||||
.. image:: log_expenses/ref.png
|
||||
:align: center
|
||||
:alt: Internal reference numbers are listed in the main Expense Categories view.
|
||||
To add a reference code to an expense category, click on the category to open the expense category
|
||||
form. Enter the reference code in the :guilabel:`Reference` field.
|
||||
|
||||
To add an internal reference on an expense category, click on the category to open the expense
|
||||
category form. Enter the :guilabel:`Internal Reference` in the corresponding field. Beneath the
|
||||
:guilabel:`Internal Reference` field, this sentence appears: :guilabel:`Use this reference as a
|
||||
subject prefix when submitting by email.`
|
||||
|
||||
.. image:: log_expenses/mileage-internal-reference.png
|
||||
:align: center
|
||||
:alt: Internal reference numbers are listed in the main Expense Products view.
|
||||
.. image:: log_expenses/ref.png
|
||||
:alt: Reference categories displayed in the main Expense Categories view.
|
||||
|
||||
.. example::
|
||||
If submitting an expense, via email, for a $25.00 meal during a work trip, the email subject
|
||||
@@ -217,14 +226,5 @@ subject prefix when submitting by email.`
|
||||
|
||||
Explanation:
|
||||
|
||||
- The :guilabel:`Internal Reference` for the expense category `Meals` is `FOOD`
|
||||
- The :guilabel:`Reference` for the expense category `Meals` is `FOOD`
|
||||
- The :guilabel:`Cost` for the expense is `$25.00`
|
||||
|
||||
.. note::
|
||||
For security purposes, only authenticated employee emails are accepted by Odoo when creating an
|
||||
expense from an email. To confirm an authenticated employee email address, go to the employee
|
||||
card in the :menuselection:`Employees app`, and refer to the :guilabel:`Work Email` field.
|
||||
|
||||
.. image:: log_expenses/authenticated-email-address.png
|
||||
:align: center
|
||||
:alt: Create the domain alias by clicking the link.
|
||||
|
||||
|
Before Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 3.6 KiB |
|
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 25 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 8.5 KiB |