[IMP] Expenses: updating for new 16 design

closes odoo/documentation#4847

X-original-commit: 0433e84a0c
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
This commit is contained in:
Lara Martini (larm) 2023-06-09 20:43:11 +00:00
parent 07480525a0
commit 4409cfe4d0
35 changed files with 312 additions and 194 deletions

View File

@ -4,34 +4,42 @@
Expenses Expenses
======== ========
Odoo **Expenses** streamlines the management of expenses. After an employee submits their expenses Odoo **Expenses** streamlines the management of expenses. After an employee submits their expenses
in Odoo, the expenses are reviewed by management and accounting teams. Once approved, payments can in Odoo, the expenses are reviewed by management and accounting teams. Once approved, payments can
then be processed and disbursed back to the employee for reimbursement(s). then be processed and disbursed back to the employee for reimbursement(s).
.. seealso:: .. seealso::
`Odoo Expenses: product page <https://www.odoo.com/app/expenses>`_ `Odoo Expenses: product page <https://www.odoo.com/app/expenses>`_
Set expense types Set expense categories
================= ======================
The first step to track expenses is to configure the different *expense types* for the company The first step to track expenses is to configure the different types of expenses for the company
(managed as *products* in Odoo). Each "product" can be as specific or generalized as needed. Go to (managed as *expense categories* in Odoo). Each category can be as specific or generalized as
:menuselection:`Expenses app --> Configuration --> Expense Products` to view the current expensable needed. Go to :menuselection:`Expenses app --> Configuration --> Expense Categories` to view the
products in a default kanban view. current expensable categories in a default list view.
.. image:: expenses/products.png .. image:: expenses/categories.png
:align: center :align: center
:alt: Set expense costs on products. :alt: Set expense costs on products.
To create a new expense product, click :guilabel:`Create`. A product form will appear. Only two To create a new expense category, click :guilabel:`New`. A product form will appear, with the
fields are required, the :guilabel:`Product Name` and the :guilabel:`Unit of Measure`. Enter the description field labeled :guilabel:`Product Name`.
:guilabel:`Product Name` in the field, and select the :guilabel:`Unit of Measure` from the drop-down
menu (most products will be set to :guilabel:`Units`). .. note::
Expense categories are managed like products in Odoo. The expense category form follows the
standard product form in Odoo, and the information entered is similar. Expense products will be
referred to as expense categories throughout this document since the main menu refers to these as
:guilabel:`Expense Categories`.
Only two fields are required, the :guilabel:`Product Name` and the :guilabel:`Unit of Measure`.
Enter the :guilabel:`Product Name` in the field, and select the :guilabel:`Unit of Measure` from the
drop-down menu (most products will be set to :guilabel:`Units`).
.. tip:: .. tip::
The *Sales* app is where specification on the units of measure are created and edited (e.g. The *Sales* app is where specification on the units of measure are created and edited (e.g.
units, miles, nights, etc.). Go to :menuselection:`Sales app --> Configuration --> Settings` and units, miles, nights, etc.). Go to :menuselection:`Sales app --> Configuration --> Settings` and
ensure `Units of Measure` is checked off in the `Product Catalog` section. Click on the ensure `Units of Measure` is enabled in the `Product Catalog` section. Click on the
:guilabel:`Units of Measure` internal link to view, create, and edit the units of measure. Refer :guilabel:`Units of Measure` internal link to view, create, and edit the units of measure. Refer
to :doc:`this document </applications/inventory_and_mrp/inventory/management/products/uom>` to to :doc:`this document </applications/inventory_and_mrp/inventory/management/products/uom>` to
learn more about units of measure and how to configure them. learn more about units of measure and how to configure them.
@ -45,16 +53,23 @@ a specific expense should always be reimbursed for a particular price, enter tha
:guilabel:`Cost` field. Otherwise, leave the :guilabel:`Cost` set to `0.00`, and employees will :guilabel:`Cost` field. Otherwise, leave the :guilabel:`Cost` set to `0.00`, and employees will
report the actual cost when submitting an expense report. report the actual cost when submitting an expense report.
.. note::
The :guilabel:`Cost` field is always visible on the expense category form, but the
:guilabel:`Sales Price` field is *only* visible if the :guilabel:`Sales Price` is selected under
the :guilabel:`Re-Invoice Expenses` section. Otherwise, the :guilabel:`Sales Price` field is
hidden.
.. example:: .. example::
Here are some examples for when to set a specific :guilabel:`Cost` on a product vs. leaving the Here are some examples for when to set a specific :guilabel:`Cost` on a product vs. leaving the
:guilabel:`Cost` at `0.00`: :guilabel:`Cost` at `0.00`:
- **Meals**: Set the :guilabel:`Cost` to `0.00`. When an employee logs an expense for a meal, they - **Meals**: Set the :guilabel:`Cost` to `0.00`. When an employee logs an expense for a meal,
enter the actual amount of the bill and will be reimbursed for that amount. An expense for a they enter the actual amount of the bill and will be reimbursed for that amount. An expense for
meal costing $95.23 would equal a reimbursement for $95.23. a meal costing $95.23 would equal a reimbursement for $95.23.
- **Mileage**: Set the :guilabel:`Cost` to `0.30`. When an employee logs an expense for - **Mileage**: Set the :guilabel:`Cost` to `0.30`. When an employee logs an expense for
"mileage", they enter the number of miles driven, and are reimbursed 0.30 per mile they "mileage", they enter the number of miles driven in the :guilabel:`Quantity` field, and are
entered. An expense for 100 miles would equal a reimbursement for $30.00. reimbursed 0.30 per mile they entered. An expense for 100 miles would equal a reimbursement for
$30.00.
- **Monthly Parking**: Set the :guilabel:`Cost` to `75.00`. When an employee logs an expense for - **Monthly Parking**: Set the :guilabel:`Cost` to `75.00`. When an employee logs an expense for
"monthly parking", the reimbursement would be for $75.00. "monthly parking", the reimbursement would be for $75.00.
- **Expenses**: Set the :guilabel:`Cost` to `0.00`. When an employee logs an expense that is not - **Expenses**: Set the :guilabel:`Cost` to `0.00`. When an employee logs an expense that is not
@ -66,7 +81,7 @@ Select an :guilabel:`Expense Account` if using the Odoo *Accounting* app. It is
with the accounting department to determine the correct account to reference in this field as it with the accounting department to determine the correct account to reference in this field as it
will affect reports. will affect reports.
Set a tax on each product in the :guilabel:`Vendor Taxes` and :guilabel:`Customer Taxes` fields if Set a tax on each product in the :guilabel:`Vendor Taxes` and :guilabel:`Customer Taxes` fields, if
applicable. It is considered good practice to use a tax that is configured with :ref:`Tax Included applicable. It is considered good practice to use a tax that is configured with :ref:`Tax Included
in Price <taxes/included-in-price>`. Taxes will be automatically configured if this is set. in Price <taxes/included-in-price>`. Taxes will be automatically configured if this is set.
@ -79,64 +94,74 @@ Manually create a new expense
----------------------------- -----------------------------
To record a new expense, begin in the main :menuselection:`Expenses` app dashboard, which presents To record a new expense, begin in the main :menuselection:`Expenses` app dashboard, which presents
the default :guilabel:`My Expenses to Report` view. This view can also be accessed from the default :guilabel:`My Expenses` view. This view can also be accessed from
:menuselection:`Expenses app --> My Expenses --> My Expenses to Report`. :menuselection:`Expenses app --> My Expenses --> My Expenses`.
First, click :guilabel:`Create`, and then fill out the various fields on the form. First, click :guilabel:`New`, and then fill out the various fields on the form.
- :guilabel:`Description`: Enter a short description for the expense in the :guilabel:`Description` - :guilabel:`Description`: Enter a short description for the expense in the :guilabel:`Description`
field. This should be short and informative, such as `lunch with client` or `hotel for field. This should be short and informative, such as `lunch with client` or `hotel for
conference`. conference`.
- :guilabel:`Product`: Select the product from the drop-down menu that most closely corresponds to - :guilabel:`Category`: Select the expense category from the drop-down menu that most closely
the expense. For example, an airplane ticket would be appropriate for an expense corresponds to the expense. For example, an airplane ticket would be appropriate for an expense
:guilabel:`Product` named :guilabel:`Air Travel`. :guilabel:`Category` named :guilabel:`Air Travel`.
- :guilabel:`Unit Price`: Enter the total amount paid for the expense in one of two ways: - :guilabel:`Total`: Enter the total amount paid for the expense in one of two ways:
#. If the expense is for one single item/expense, enter the cost in the :guilabel:`Unit Price` #. If the expense is for one single item/expense, and the category selected was for a single item,
field, and leave the :guilabel:`Quantity` `1.00`. 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, enter the price *per unit* in the #. If the expense is for multiples of the same item/expense with a fixed price, the
:guilabel:`Unit Price` field, and enter the *quantity of units* in the :guilabel:`Quantity` :guilabel:`Unit Price` is displayed. Enter the quantity in the :guilabel:`Quantity` field, and
field. the total cost is automatically updated with the correct total (the :guilabel:`Unit Price` x
the :guilabel:`Quantity` = the total). Be advised, the word "total" does not appear, the total
cost simply appears below the :guilabel:`Quantity`.
.. example:: .. example::
In the case of a hotel stay, for example, the :guilabel:`Unit Price` would be set as the For example, in the case of mileage driven, the :guilabel:`Unit Price` is populated as the
cost *per night*, and set the :guilabel:`Quantity` to the *number of nights* stayed. cost *per mile*. Set the :guilabel:`Quantity` to the *number of miles* driven, and the total
is calculated.
- :guilabel:`Taxes`: If taxes were paid on the expense, select the tax percentage using the - :guilabel:`Included Taxes`: If taxes were configured on the expense category, the tax percentage
drop-down menu. Tax options are pre-configured based on the localization setting selected when the and amount appear automatically after entering either the :guilabel:`Total` or the
database was created. Adding any new taxes should only be done when necessary. :guilabel:`Quantity`.
.. note:: .. note::
When a tax is selected, the :guilabel:`Total` value will update in real time to show the added When a tax is configured on an expense category, the :guilabel:`Included Taxes` value will
taxes. update 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:`Paid By`: Click the radio button to indicate who paid for the expense and should be
reimbursed. If the employee paid for the expense (and should be reimbursed) select reimbursed. If the employee paid for the expense (and should be reimbursed) select
:guilabel:`Employee (to reimburse)`. If the company paid directly instead (e.g. if the company :guilabel:`Employee (to reimburse)`. If the company paid directly instead (e.g. if the company
credit card was used to pay for the expense) select :guilabel:`Company`. credit card was used to pay for the expense) select :guilabel:`Company`. Depending on the expense
category selected, this field may not appear.
- :guilabel:`Bill Reference`: If there is any reference text that should be included for the
expense, enter it in this field.
- :guilabel:`Expense Date`: Using the calendar module, enter the date the expense was incurred. Use - :guilabel:`Expense Date`: Using the calendar module, enter the date the expense was incurred. Use
the :guilabel:`< (left)` and :guilabel:`> (right)` arrows to navigate to the correct month, then the :guilabel:`< (left)` and :guilabel:`> (right)` arrows to navigate to the correct month, then
click on the specific day to enter the selection. click on the specific day to enter the selection.
- :guilabel:`Bill Reference`: If there is any reference text that should be included for the
expense, enter it in this field.
- :guilabel:`Account`: Select the expense account that this expense should be logged on from the - :guilabel:`Account`: Select the expense account that this expense should be logged on from the
drop-down menu. drop-down menu.
- :guilabel:`Employee`: Using the drop-down menu, select the employee this expense is for.
- :guilabel:`Customer to Reinvoice`: If the expense is something that should be paid for by a - :guilabel:`Customer to Reinvoice`: If the expense is something that should be paid for by a
customer, select the customer that will be invoiced for this expense from the drop-down menu. For customer, select the :abbr:`SO (Sales Order)` and customer that will be invoiced for this expense
example, if a customer wishes to have an on-site meeting, and agrees to pay for the expenses from the drop-down menu. All sales orders in the drop-down menu list both the :abbr:`SO (Sales
associated with it (such as travel, hotel, meals, etc.), then all expenses tied to that meeting Order)` as well as the company the sales order is written for, but after the expense is saved, the
would indicate that customer as the :guilabel:`Customer to Reinvoice`. customer name disappears and only the :abbr:`SO (Sales Order)` is visible on the expense.
- :guilabel:`Analytic Account`: Select the account the expense should be written against from the
drop-down menu. .. example::
- :guilabel:`Company`: If multiple companies are set-up, select the company this expense should be A customer wishes to have an on-site meeting for a custom garden (design and installation) and
filed for from the drop-down menu. If there is only one company, this field will be automatically agrees to pay for the expenses associated with it (such as travel, hotel, meals, etc.). All
populated. 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`.
- :guilabel:`Analytic Distribution`: Select the account(s) 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 the account.
- :guilabel:`Company`: If multiple companies are set up, select the company this expense should be
filed for from the drop-down menu. The current company will automatically populate this field.
- :guilabel:`Notes...`: If any notes are needed in order to clarify the expense, enter them in the - :guilabel:`Notes...`: If any notes are needed in order to clarify the expense, enter them in the
notes field. notes field.
Once all the fields have been filled out, click :guilabel:`Save`.
.. image:: expenses/expense-filled-in.png .. image:: expenses/expense-filled-in.png
:align: center :align: center
:alt: A filled in expense form for a client lunch. :alt: A filled in expense form for a client lunch.
@ -144,23 +169,37 @@ Once all the fields have been filled out, click :guilabel:`Save`.
Attach a receipt Attach a receipt
~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~
After the expense is saved, the next step is to attach a receipt. A new :guilabel:`Attach Receipt` After the expense is created, the next step is to attach a receipt. Click the :guilabel:`Attach
button appears after the entry is saved, beneath the former :guilabel:`Save` button (which turns Receipt` button, and a file explorer appears. Navigate to the receipt to be attached, and click
into an :guilabel:`Edit` button). :guilabel:`Open`. The new receipt is recorded in the chatter, and the number of receipts will appear
next to the :guilabel:`📎 (paperclip)` icon beneath the expense form. More than one receipt can be
attached to an individual expense, as needed. The number of receipts attached to the expense will be
noted on the paperclip icon.
.. image:: expenses/save-receipt.png .. image:: expenses/receipt-icon.png
:align: center :align: center
:alt: Attach a receipt after saving the record. :alt: Attach a receipt and it appears in the chatter.
Click the new :guilabel:`Attach Receipt` button, and a file explorer appears. Navigate to the Create new expenses from a scanned receipt
receipt to be attached, and click :guilabel:`Open`. A new :guilabel:`Receipts` smart button appears ------------------------------------------
at the top, and the new receipt is recorded in the chatter. More than one receipt can be attached to
an individual expense, as needed. The number of receipts attached to the expense will be noted on
the smart button.
.. image:: expenses/receipt-smartbutton.png Rather than manually inputting all of the information for an expense, expenses can be created by
scanning a PDF receipt.
First, in the main :guilabel:`Expenses` app dashboard view (this view can also be accessed from
:menuselection:`Expenses app --> My Expenses --> My Expenses`), click :guilabel:`Scan`, and a file
explorer pops up. Navigate to the receipt to be uploaded, click on it to select it, and then click
:guilabel:`Open`.
.. image:: expenses/scan.png
:align: center :align: center
:alt: Attach a receipt after saving the record. :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 entry is created with today's date as the :guilabel:`Expense
Date`, and any other fields it can populate based on the scanned data, such as the total. Click on
the new entry to open the individual expense form, and make any changes needed. The scanned receipt
appears in the chatter.
Automatically create new expenses from an email Automatically create new expenses from an email
----------------------------------------------- -----------------------------------------------
@ -169,7 +208,7 @@ Instead of individually creating each expense in the *Expenses* app, expenses ca
created by sending an email to an email alias. created by sending an email to an email alias.
To do so, first, an email alias needs to be configured. Go to :menuselection:`Expenses app --> To do so, first, an email alias needs to be configured. Go to :menuselection:`Expenses app -->
Configuration --> Settings`. Ensure :guilabel:`Incoming Emails` is checked off. Configuration --> Settings`. Ensure :guilabel:`Incoming Emails` is enabled.
.. image:: expenses/email-alias.png .. image:: expenses/email-alias.png
:align: center :align: center
@ -182,36 +221,35 @@ Configuration --> Settings`. Ensure :guilabel:`Incoming Emails` is checked off.
domain alias is configured, the email address field will be visible beneath the incoming emails domain alias is configured, the email address field will be visible beneath the incoming emails
section. section.
Next, enter the email address to be used in the email field, then click :guilabel:`Save`. Now that Next, enter the email address to be used in the email field, and then click :guilabel:`Save`. Now
the email address has been entered, emails can be sent to that alias to create new expenses without that the email address has been entered, emails can be sent to that alias to create new expenses
having to be in the Odoo database. 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 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 in the email subject. Next, attach the receipt to the (if available) and the amount of the expense in the email subject. Next, attach the receipt to the
email. Odoo creates the expense by taking the information in the email subject and combining it with email. Odoo creates the expense by taking the information in the email subject and combining it with
the receipt. the receipt.
To check an expense product's internal reference, go to :menuselection:`Expenses app --> To check an expense categories internal reference, go to :menuselection:`Expenses app -->
Configuration --> Expense Products`. If an internal reference is listed on the product, it is Configuration --> Expense Categories`. If an internal reference is listed on the expense category,
visible in this view as :guilabel:`(Ref###)`. it is listed in the :guilabel:`Internal Reference` column.
.. image:: expenses/internal-ref-numbers.png .. image:: expenses/ref.png
:align: center :align: center
:alt: Internal reference numbers are listed in the main Expense Products view. :alt: Internal reference numbers are listed in the main Expense Categories view.
To add an internal reference on an expense product, click on the product, then click To add an internal reference on an expense category, click on the category to open the form. Enter
:guilabel:`Edit`. In edit mode, enter the :guilabel:`Internal Reference` in the field. Beneath the the internal reference in the field. Beneath the :guilabel:`Internal Reference` field, this sentence
:guilabel:`Internal Reference` field, this sentence appears: :guilabel:`Use this reference as a appears: :guilabel:`Use this reference as a subject prefix when submitting by email.`
subject prefix when submitting by email.`.
.. image:: expenses/meals-internal-reference.png .. image:: expenses/mileage-internal-reference.png
:align: center :align: center
:alt: Internal reference numbers are listed in the main Expense Products view. :alt: Internal reference numbers are listed in the main Expense Products view.
.. note:: .. note::
For security purposes, only authenticated employee emails are accepted by Odoo when creating an 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 expense from an email. To confirm an authenticated employee email address, go to the employee
card in the :guilabel:`Employees` app, and refer to the :guilabel:`Work Email` in the main field. card in the :menuselection:`Employees` app, and refer to the :guilabel:`Work Email`
.. image:: expenses/authenticated-email-address.png .. image:: expenses/authenticated-email-address.png
:align: center :align: center
@ -219,55 +257,85 @@ subject prefix when submitting by email.`.
.. example:: .. example::
If submitting an expense via email for a $25.00 meal during a work trip, the email subject would If submitting an expense via email for a $25.00 meal during a work trip, the email subject would
be `Ref005 Meal $25.00`. be `FOOD $25.00`.
Explanation: Explanation:
- The :guilabel:`Internal Reference` for the expense product `Meals` is `Ref005` - The :guilabel:`Internal Reference` for the expense category `Meals` is `FOOD`
- The :guilabel:`Cost` for the expense is `$25.00` - The :guilabel:`Cost` for the expense is `$25.00`
.. _expenses/report:
Create an expense report Create an expense report
======================== ========================
When expenses are ready to submit (such as at the end of a business trip, or once a month), an When expenses are ready to submit (such as at the end of a business trip, or once a month), an
*expense report* needs to be created. Go to the main :menuselection:`Expenses` app dashboard, which *expense report* needs to be created. Go to the main :menuselection:`Expenses` app dashboard, which
displays a default :guilabel:`My Expenses` view, or go to :menuselection:`Expenses app --> My displays a default :guilabel:`My Expenses` view, or go to :menuselection:`Expenses app --> My
Expenses --> My Expenses to Report`. Expenses --> My Expenses`.
First, each individual expense for the report must be selected by clicking the check box next to Expenses are color coded by status. Any expense with a status of :guilabel:`To Report` (expenses
each entry, or quickly select all the expenses in the list by clicking the check box next to that still need to be added to an expense report) the text appears in blue. All other statuses
:guilabel:`Expense Date`. (:guilabel:`To Submit`, :guilabel:`Submitted`, and :guilabel:`Approved`) the text appears in black.
First, select each individual expense for the report by clicking the check box next to each entry,
or quickly select all the expenses in the list by clicking the check box next to :guilabel:`Expense
Date`.
Another way to quickly add all expenses that are not on an expense report is to click
:guilabel:`Create Report` without selecting any expenses, and Odoo will select all expenses with a
status of :guilabel:`To Submit` that are not already on a report.
.. image:: expenses/create-report.png .. image:: expenses/create-report.png
:align: center :align: center
:alt: Select the expenses to submit, then create the report. :alt: Select the expenses to submit, then create the report.
Once the expenses have been selected, click the :guilabel:`Create Report` button. The new report .. note::
appears with all the expenses listed, and the number of documents is visible in the Any expense can be selected from the :guilabel:`My Expenses` list, regardless of status. The
:guilabel:`Documents` smart button. :guilabel:`Create Report` button is visible as long as there is a minimum of 1 expense with a
status of :guilabel:`To Report` selected. When the :guilabel:`Create Report` button is clicked,
only expenses with a status of :guilabel:`To Submit` that are *not* currently on another expense
report will appear in the newly created expense report.
It is recommended to add a short summary for each report to help keep expenses organized. Click the Once the expenses have been selected, click the :guilabel:`Create Report` button. The new report
:guilabel:`Edit` button, and the :guilabel:`Expense Report Summary` field appears. Enter a short appears with all the expenses listed in the :guilabel:`Expense` tab. If there is a receipt attached
description for the expense report (such as `Client Trip NYC`, or `Repairs for Company Car`). Next, to an individual expense, a :guilabel:`📎 (paperclip)` icon appears next to the :guilabel:`Customer
select a :guilabel:`Manager` from the drop-down menu to assign a manager to review the report. to Reinvoice` and :guilabel:`Analytic Distribution` columns.
When the report is created, the date range for the expenses appears in the :guilabel:`Expense Report
Summary` field by default. It is recommended to edit this field with a short summary for each report
to help keep expenses organized. Enter a short description for the expense report (such as `Client
Trip NYC`, or `Repairs for Company Car`) in the :guilabel:`Expense Report Summary` field. Next,
select a :guilabel:`Manager` from the drop-down menu to assign a manager to review the report. If
needed, the :guilabel:`Journal` can be changed. Use the drop-down menu to select a different
:guilabel:`Journal`.
.. image:: expenses/expense-report-summary.png .. image:: expenses/expense-report-summary.png
:align: center :align: center
:alt: Enter a short description and select a manager for the report. :alt: Enter a short description and select a manager for the report.
If some expenses are not on the report that should be, they can still be added. Click :guilabel:`Add If some expenses are not on the report that should be, they can still be added. Click :guilabel:`Add
a line` at the bottom of the :guilabel:`Expense` tab. Click the check box next to each expense to a line` at the bottom of the :guilabel:`Expense` tab. A pop up appears with all the available
add, then click :guilabel:`Select`. The items now appear on the report that was just created. expenses that can be added to the report (with a status of :guilabel:`To Submit`). Click the check
box next to each expense to add, then click :guilabel:`Select`. The items now appear on the report
that was just created. If a new expense needs to be added that does *not* appear on the list, click
:guilabel:`New` to create a new expense and add it to the report.
.. image:: expenses/add-an-expense-line.png .. image:: expenses/add-an-expense-line.png
:align: center :align: center
:alt: Add more expenses to the report before submitting. :alt: Add more expenses to the report before submitting.
.. note:: .. note::
:guilabel:`Add a line` only appears when the document is in edit mode. It does not appear Expense reports can be created in one of three places:
otherwise.
When all edits have been completed, click :guilabel:`Save`. #. Go to the main :menuselection:`Expenses` app dashboard (also accessed by going to
:menuselection:`Expenses app --> My Expenses --> My Expenses`)
#. Go to :menuselection:`Expenses app --> My Expenses --> My Reports`
#. Go to :menuselection:`Expenses app --> Expense Reports`
In any of these views, click :guilabel:`New` to create a new expense report.
.. _expenses/submit:
Submit an expense report Submit an expense report
------------------------ ------------------------
@ -277,18 +345,21 @@ approval. Reports must be individually submitted, and cannot be submitted in bat
specific report from the list of expense reports (if the report is not already open). To view all specific report from the list of expense reports (if the report is not already open). To view all
expense reports, go to :menuselection:`Expenses app --> My Expenses --> My Reports`. expense reports, go to :menuselection:`Expenses app --> My Expenses --> My Reports`.
If the list is large, grouping the results by status may be helpful since only reports that are in a If the list is large, grouping the results by status may be helpful since only reports that have a
:guilabel:`Draft` mode need to be submitted, reports with an :guilabel:`Approved` or :guilabel:`To Submit` status need to be submitted, reports with an :guilabel:`Approved` or
:guilabel:`Submitted` status do not. :guilabel:`Submitted` status do not.
The :guilabel:`To Submit` expenses are easily identifiable not just from the :guilabel:`To Submit`
status, but the text appears in blue, while the other expenses text appears in black.
.. image:: expenses/expense-status.png .. image:: expenses/expense-status.png
:align: center :align: center
:alt: Submit the report to the manager. :alt: Submit the report to the manager.
.. note:: .. note::
The status of each report is shown in the :guilabel:`Status` column on the far right. If the The status of each report is shown in the :guilabel:`Status` column on the right. If the
:guilabel:`Status` column is not visible, click the :guilabel:`⋮ (additional options)` icon at :guilabel:`Status` column is not visible, click the :guilabel:`Additional Options (two dots)`
the end of the row, and check the box next to :guilabel:`Status`. icon at the end of the row, and enable :guilabel:`Status`.
Click on a report to open it, then click :guilabel:`Submit To Manager`. After submitting a report, Click on a report to open it, then click :guilabel:`Submit To Manager`. After submitting a report,
the next step is to wait for the manager to approve it. the next step is to wait for the manager to approve it.
@ -304,16 +375,17 @@ Approve expenses
In Odoo, not just anyone can approve expense reports— only users with the necessary rights (or In Odoo, not just anyone can approve expense reports— only users with the necessary rights (or
permissions) can. This means that a user must have at least *Team Approver* rights for the permissions) can. This means that a user must have at least *Team Approver* rights for the
*Expenses* app. Employees with the necessary rights can review expense reports, and approve or *Expenses* app. Employees with the necessary rights can review expense reports, approve or reject
reject them, as well as provide feedback thanks to the integrated communication tool. them, and provide feedback thanks to the integrated communication tool.
To see who has rights to approve, go to the main :menuselection:`Settings` app and click on To see who has rights to approve, go to the main :menuselection:`Settings` app and click on
:guilabel:`Manage Users`. :guilabel:`Manage Users`.
.. note:: .. note::
If the *Settings* app is not available, then certain rights are not set on the account. In the If the *Settings* app is not available, then certain rights are not set on the account. Check the
:guilabel:`Access Rights` tab of a user's card in the :menuselection:`Settings` app, the :guilabel:`Access Rights` tab of a user's card in the :menuselection:`Settings` app. the
:guilabel:`Administration` section is set to one of three options: :guilabel:`Administration` section (bottom right of the :guilabel:`Access Rights` tab) is set to
one of three options:
- :guilabel:`None (blank)`: The user cannot access the *Settings* app at all. - :guilabel:`None (blank)`: The user cannot access the *Settings* app at all.
- :guilabel:`Access Rights`: The user can only view the :guilabel:`User's & Companies` section of - :guilabel:`Access Rights`: The user can only view the :guilabel:`User's & Companies` section of
@ -332,53 +404,75 @@ there are four options:
- :guilabel:`Team Approver`: The user can only view and approve expense reports for their own - :guilabel:`Team Approver`: The user can only view and approve expense reports for their own
specific team. specific team.
- :guilabel:`All Approver`: The user can view and approve any expense report. - :guilabel:`All Approver`: The user can view and approve any expense report.
- :guilabel:`Administrator`: The user can view and approve any expense report as well as access the - :guilabel:`Administrator`: The user can view and approve any expense report, as well as access the
reporting and configuration menus in the *Expenses* app. reporting and configuration menus in the *Expenses* app.
Users who are able to approve expense reports (typically managers) can easily view all expense Users who are able to approve expense reports (typically managers) can easily view all expense
reports to validate. Go to :menuselection:`Expenses app --> Expense Reports --> Reports to reports they have access rights to. Go to :menuselection:`Expenses app --> Expense Reports`, and a
Approve`. This view lists all the expense reports that have been submitted but not approved, as list appears with all expense reports that have a status of either :guilabel:`To Submit`,
noted by the :guilabel:`Submitted` tag in the status column. :guilabel:`Submitted`, :guilabel:`Approved`, :guilabel:`Posted`, or :guilabel:`Done`. Expense
reports with a status of :guilabel:`Refused` are hidden in the default view.
.. image:: expenses/reports-to-approve.png .. image:: expenses/expense-reports-list.png
:align: center :align: center
:alt: Reports to validate are found on the Reports to Approve page. :alt: Reports to validate are found on the Reports to Approve page.
When viewing expense reports, there is a panel of filters that can be enabled or disabled on the
left side. The three categories that filters can be applied on are :guilabel:`Status`,
:guilabel:`Employee`, and :guilabel:`Company`. To view only expense reports with a particular
status, enable the specific status filter to display the expense reports with only that status.
Disable the specific status filter to hide the reports with that status. To view expense reports for
a particular employee and/or company, enable the specific employee name filter and/or company filter
in the :guilabel:`Employee` and :guilabel:`Company` sections.
Reports can be approved in two ways (individually or several at once) and refused only one way. To Reports can be approved in two ways (individually or several at once) and refused only one way. To
approve multiple expense reports at once, remain in the list view. First, select the reports to approve multiple expense reports at once, remain in the list view. First, select the reports to
approve by clicking the check box next to each report, or click the box next to :guilabel:`Employee` approve by clicking the check box next to each report, or click the box next to :guilabel:`Employee`
to select all reports in the list. Next, click on the :guilabel:`⚙️ Action (gear)` icon, then click to select all the reports in the list.
:guilabel:`Approve Report`.
.. important::
Only reports with a status of :guilabel:`Submitted` can be approved. It is recommended to only
display the submitted reports by adjusting the status filter on the left side by only having the
:guilabel:`Submitted` filter enabled.
If a report is selected that is unable to be approved, the :guilabel:`Approve Report` button
**will not appear**, indicating there is a problem with the selected report(s).
Next, click the :guilabel:`Approve Report` button.
.. image:: expenses/approve-report.png .. image:: expenses/approve-report.png
:align: center :align: center
:alt: Approve multiple reports by clicking the checkboxes next to each report. :alt: Approve multiple reports by clicking the checkboxes next to each report.
To approve an individual report, click on a report to go to a detailed view of that report. In this To approve an individual report, click on a report to go to a detailed view of that report. In this
view, several options are presented: :guilabel:`Approve`, :guilabel:`Refuse`, or :guilabel:`Reset to view, several options are presented: :guilabel:`Approve`, :guilabel:`Report in Next Payslip`,
draft`. Click :guilabel:`Approve` to approve the report. :guilabel:`Refuse`, or :guilabel:`Reset to draft`. Click :guilabel:`Approve` to approve the report.
If :guilabel:`Refuse` is clicked, a pop-up window appears. Enter a brief explanation for the refusal If :guilabel:`Refuse` is clicked, a pop-up window appears. Enter a brief explanation for the refusal
in the :guilabel:`Reason to refuse Expense` field, then click :guilabel:`Refuse`. in the :guilabel:`Reason to Refuse Expense` field, and then click :guilabel:`Refuse`.
.. image:: expenses/refuse-expense.png .. image:: expenses/refuse-expense.png
:align: center :align: center
:alt: Send messages in the chatter. :alt: Send messages in the chatter.
Team managers can easily view all the expense reports for their team members. While in the Team managers can easily view all the expense reports for their team members. While in the
:guilabel:`Reports to Approve` view, click on :guilabel:`Filters`, then click :guilabel:`My Team`. :guilabel:`Expense Reports` view, click the drop-down arrow in the right-side of the search box, and
This presents all the reports for the manager's team. click on :guilabel:`My Team` in the :guilabel:`Filters` section. This presents all the reports for
the manager's team.
.. image:: expenses/my-team-filter.png .. image:: expenses/my-team-filter.png
:align: center :align: center
:alt: Select the My Team filter. :alt: Select the My Team filter.
.. note:: .. tip::
If more information is needed, such as a receipt is missing, communication is easy from the If more information is needed, such as a missing receipt, communication is easy from the chatter.
chatter. In an individual report, simply type in a message, tagging the proper person (if In an individual report, simply click :guilabel:`Send message` to open the message text box. Type
needed), and post it to the chatter by clicking :guilabel:`Send`. The message is posted in the in a message, tagging the proper person (if needed), and post it to the chatter by clicking
chatter, and the person tagged will be notified via email of the message, as well as anyone :guilabel:`Send`. The message is posted in the chatter, and the person tagged will be notified
following. via email of the message, as well as any followers.
The only people that can be tagged in a message are *followers*. To see who is a follower, click
on the :guilabel:`👤 (person)` icon to display the followers of the expense.
.. image:: expenses/chatter.png .. image:: expenses/chatter.png
:align: center :align: center
@ -390,8 +484,9 @@ Post expenses in accounting
=========================== ===========================
Once an expense report is approved, the next step is to post the report to the accounting journal. Once an expense report is approved, the next step is to post the report to the accounting journal.
To view all expense reports to post, go to :menuselection:`Expenses --> Expense Reports --> Reports To view all expense reports, go to :menuselection:`Expenses app --> Expense Reports`. To view only the
To Post`. expense reports that have been approved and need to be posted, adjust the filters on the left side
so that only the :guilabel:`Approved` status is enabled.
.. image:: expenses/post-reports.png .. image:: expenses/post-reports.png
:align: center :align: center
@ -400,23 +495,24 @@ To Post`.
Just like approvals, expense reports can be posted in two ways (individually or several at once). To Just like approvals, expense reports can be posted in two ways (individually or several at once). To
post multiple expense reports at once, remain in the list view. First, select the reports to post by post multiple expense reports at once, remain in the list view. First, select the reports to post by
clicking the check box next to each report, or click the box next to :guilabel:`Employee` to select clicking the check box next to each report, or click the box next to :guilabel:`Employee` to select
all reports in the list. Next, click on the :guilabel:`⚙️ Action (gear)` icon, then click all the reports in the list. Next, click :guilabel:`Post Entries`.
:guilabel:`Post Entries`.
.. image:: expenses/post-entries.png .. image:: expenses/post-entries.png
:align: center :align: center
:alt: Post multiple reports from the Post Entries view. :alt: Post multiple reports at a time from the Expense Reports view, with the Approved filter.
To post an individual report, click on a report to go to the detailed view of that report. In this To post an individual report, click on a report to go to the detailed view of that report. In this
view, several options are presented: :guilabel:`Post Journal Entries`, :guilabel:`Report In Next view, several options are presented: :guilabel:`Post Journal Entries`, :guilabel:`Report In Next
Payslip`, or :guilabel:`Refuse`. Click :guilabel:`Post Journal Entries` to post the report. Payslip`, :guilabel:`Refuse`, or :guilabel:`Reset to Draft`. Click :guilabel:`Post Journal Entries`
to post the report.
If :guilabel:`Refuse` is clicked, a pop-up window appears. Enter a brief explanation for the refusal If :guilabel:`Refuse` is clicked, a pop-up window appears. Enter a brief explanation for the refusal
in the :guilabel:`Reason to refuse Expense` field, then click :guilabel:`Refuse`. Refused reports in the :guilabel:`Reason to Refuse Expense` field, and then click :guilabel:`Refuse`. Refused
can be viewed by going to :menuselection:`Expenses app --> Expense Reports --> All Reports`. This reports can be viewed by going to :menuselection:`Expenses app --> Expense Reports`, then adjusting
list shows all reports, including the refused ones. the filters on the left so that only :guilabel:`Refused` is selected. This will only show the
refused expense reports.
.. note:: .. important::
To post expense reports to an accounting journal, the user must have following access rights: To post expense reports to an accounting journal, the user must have following access rights:
- Accounting: Accountant or Adviser - Accounting: Accountant or Adviser
@ -428,8 +524,8 @@ Reimburse employees
=================== ===================
After an expense report is posted to an accounting journal, the next step is to reimburse the After an expense report is posted to an accounting journal, the next step is to reimburse the
employee. To view all expense reports to pay, go to :menuselection:`Expenses --> Expense Reports --> employee. To view all the expense reports to pay, go to :menuselection:`Expenses app --> Expense
Reports To Pay`. Reports --> Reports To Pay`.
.. image:: expenses/reports-to-pay.png .. image:: expenses/reports-to-pay.png
:align: center :align: center
@ -438,99 +534,121 @@ Reports To Pay`.
Just like approvals and posting, expense reports can be paid in two ways (individually or several at Just like approvals and posting, expense reports can be paid in two ways (individually or several at
once). To pay multiple expense reports at once, remain in the list view. First, select the reports once). To pay multiple expense reports at once, remain in the list view. First, select the reports
to pay by clicking the check box next to each report, or click the box next to :guilabel:`Employee` to pay by clicking the check box next to each report, or click the box next to :guilabel:`Employee`
to select all reports in the list. Next, click on the :guilabel:`⚙️ Action (gear)` icon, then click to select all the reports in the list. Next, click :guilabel:`Register Payment`.
:guilabel:`Register Payment`.
.. image:: expenses/register-payment.png .. image:: expenses/register-payment.png
:align: center :align: center
:alt: Post multiple reports by clicking the checkboxes, clicking the gear, then post the entries. :alt: Post multiple reports by selecting them, clicking the gear, and then post the entries.
To pay an individual report, click on a report to go to a detailed view of that report. Click To pay an individual report, click on a report to go to a detailed view of that report. Click
:guilabel:`Register Payment` to pay the employee. :guilabel:`Register Payment` to pay the employee.
A :guilabel:`Register Payment` pop-up appears, and the :guilabel:`Journal`, :guilabel:`Payment
Method`, and :guilabel:`Payment Date` can be modified, if needed. When the selections are correct,
click :guilabel:`Create Payment` to send the payment to the employee.
To pay an individual report, click on a report in the list view to go to a detailed view of that
report. Click :guilabel:`Register Payment` to pay the employee. A :guilabel:`Register Payment`
pop-up appears, but when paying an individual expense report instead of several at once, more
options appear in the pop-up. In addition to the :guilabel:`Journal`, :guilabel:`Payment Method`,
and :guilabel:`Payment Date` fields, a :guilabel:`Recipient Bank Account`, :guilabel:`Amount`, and
:guilabel:`Memo` field appear. Select the employee's bank account from the drop-down menu to
directly deposit the payment to their account. When all other selections are correct, click
:guilabel:`Create Payment` to send the payment to the employee.
.. image:: expenses/two-payment-posting-options.png
:align: center
:alt: Different options appear when registering an individual expense report versus multiple
expense reports at once.
Re-invoice expenses to customers Re-invoice expenses to customers
================================ ================================
If expenses are tracked on customer projects, expenses can be automatically charged back to the If expenses are tracked on customer projects, expenses can be automatically charged back to the
customer. This is done by creating an expense report, then creating a sales order with the expensed customer. This is done by creating an expense, referencing the :abbr:`SO (Sales Order)` the expense
items on it. Then, managers approve the expense report, and the accounting department posts the should be added to, and then creating the expense report. Next, managers approve the expense report,
journal entries. Finally, the customer is invoiced. and the accounting department posts the journal entries. Finally, once the expense report is posted
to a journal, the expense(s) appears on the :abbr:`SO (Sales Order)` that was referenced. The sales
order can then be invoiced, thus invoicing the customer for the expense.
Setup Setup
----- -----
First, specify the invoicing policy for each expense product. Go to :menuselection:`Expenses app --> First, specify the invoicing policy for each expense category. Go to :menuselection:`Expenses app
Configuration --> Expense Products`. Click on the expense product to edit, then click --> Configuration --> Expense Categories`. Click on the expense category to open the expense
:guilabel:`Edit`. Under the :guilabel:`Invoicing` section, select the :guilabel:`Invoicing Policy` category form. Under the :guilabel:`Invoicing` section, click the radio button next to the desired
and :guilabel:`Re-Invoicing Policy` by clicking the radio button next to the desired selection. selection for :guilabel:`Re-Invoicing Expenses`. Options are :guilabel:`None`, :guilabel:`At cost`,
and :guilabel:`Sales price`.
:guilabel:`Invoicing Policy`: :guilabel:`Re-Invoicing Expenses`:
- :guilabel:`Ordered quantities`: Expense product will only invoice expenses based on the ordered - :guilabel:`None`: Expense category will not be re-invoiced.
quantity. - :guilabel:`At cost`: Expense category will invoice expenses at their real cost.
- :guilabel:`Delivered quantities`: Expense product will only invoice expenses based on the - :guilabel:`At sales price`: Expense category will invoice the price set on the sale order.
delivered quantity.
:guilabel:`Re-Invoicing Policy`:
- :guilabel:`No`: Expense product will not be re-invoiced.
- :guilabel:`At cost`: Expense product will invoice expenses at their real cost.
- :guilabel:`At sales price`: Expense product will invoice the price set on the sale order.
Create an expense Create an expense
----------------- -----------------
First, when :ref:`creating a new expense <expenses/new>`, the correct information needs to be First, when :ref:`creating a new expense <expenses/new>`, the correct information needs to be
entered in order to re-invoice a customer. Select the :guilabel:`Customer to Reinvoice` from the entered in order to re-invoice a customer. Select the *sales order* the expense will appear on in
drop-down menu. Next, select the :guilabel:`Analytic Account` the expense will be posted to. the :guilabel:`Customer to Reinvoice` section, from the drop-down menu. Next, select the
:guilabel:`Analytic Account` the expense will be posted to. After the expense(s) are created, the
expense report needs to be :ref:`created <expenses/report>` and :ref:`submitted <expenses/submit>`
as usual.
.. image:: expenses/reinvoice-expense.png .. image:: expenses/reinvoice-expense.png
:align: center :align: center
:alt: Ensure the customer to be invoiced is called out on the expense. :alt: Ensure the customer to be invoiced is called out on the expense.
Create a quote and sales order .. important::
------------------------------ Selecting a :guilabel:`Customer to Reinvoice` when creating an expense is critical, since this is
what causes the expenses to be automatically invoiced after an expense report is approved.
In the :menuselection:`Sales` app, create a quote for the customer being invoiced, listing the The :guilabel:`Customer to Reinvoice` field can be modified *until an expense report is*
expense products. First, click :guilabel:`Create` to create a new quotation. Next, select the **approved**, then the field is no longer able to be modified.
:guilabel:`Customer` being invoiced for the expenses from the drop-down menu.
In the :guilabel:`Order Lines` tab, click :guilabel:`Add a product`. In the :guilabel:`Product`
field, select the first item being invoiced from the drop-down menu, or type in the product name.
Then, update the :guilabel:`Quantity`, the :guilabel:`Delivered` quantity, and the :guilabel:`Unit
Price` if needed. Repeat this for all products being invoiced. When all the products have been added
to the quote, click :guilabel:`Confirm` and the quotation becomes a sales order.
.. image:: expenses/expenses-salesorder.png
:align: center
:alt: Create and confirm the sales order with the expenses listed as products.
Once the quote turns into a sales order, a :guilabel:`Delivered` column appears. The delivered
quantity must be updated for each item. Click on the `0.000` field for each product, and enter the
delivered quantity. When all delivered quantities have been entered, click :guilabel:`Save`.
Validate and post expenses Validate and post expenses
-------------------------- --------------------------
Only employees with permissions (typically managers or supervisors) can :ref:`approve expenses Only employees with permissions (typically managers or supervisors) can :ref:`approve expenses
<expenses/approve>`. Before approving an expense report, ensure the :guilabel:`Analytic Account` is <expenses/approve>`. Before approving an expense report, ensure the :guilabel:`Analytic
set on every expense line of a report. If an :guilabel:`Analytic Account` is missing, click Distribution` is set on every expense line of a report. If an :guilabel:`Analytic Distribution` is
:guilabel:`Edit` and select the correct account from the drop-down menu, then click missing, assign the correct account(s) from the drop-down menu, and then click :guilabel:`Approve`
:guilabel:`Approve` or :guilabel:`Refuse`. or :guilabel:`Refuse`.
The accounting department is typically responsible for :ref:`posting journal entries The accounting department is typically responsible for :ref:`posting journal entries
<expenses/post>`. Once an expense report is approved, it can then be posted. <expenses/post>`. Once an expense report is approved, it can then be posted. The :abbr:`SO (Sales
Order)` is **only** updated *after the journal entries are posted*. One the journal entries are
posted, the expenses now appear on the referenced :abbr:`SO (Sales Order)`.
Invoice expenses Invoice expenses
---------------- ----------------
Once the quote has turned into a sales order, and the expense report has been approved, it is time Once the :abbr:`SO (Sales Order)` has been updated, it is time to invoice the customer. After the
to invoice the customer. Go to :menuselection:`Sales app --> To Invoice --> Orders to Invoice` to expense report has been approved and the journal entries have been posted, click the
view the sales orders ready to be invoiced. :guilabel:`Sales Orders` smart button to open the :abbr:`SO (Sales Order)`. The expenses to be
re-invoiced are now on the :abbr:`SO (Sales Order)`.
Next, find the sales order related to the expense report, click into it, and then click .. image:: expenses/sales-order.png
:guilabel:`Create Invoice` and a :guilabel:`Create invoices` pop-up window appears. Select if the :align: center
invoice is a :guilabel:`Regular invoice`, :guilabel:`Down payment (percentage)`, or :guilabel:`Down :alt: After the expense report is posted to the journal entry, the sales order can be called up
payment (fixed amount)` by clicking the radio button next to the selection. For either down payment by clicking on the sales order number.
options, enter the amount (fixed or percentage) in the :guilabel:`Down Payment Amount` field.
Finally, click either :guilabel:`create and view invoice` or :guilabel:`create invoice`. .. note::
More than one :abbr:`SO (Sales Order)` can be referenced on an expense report. If more than one
:abbr:`SO (Sales Order)` is referenced, the :guilabel:`Sales Orders` smart button will list the
number of :abbr:`SO (Sales Order)`'s. If multiple :abbr:`SO (Sales Order)`'s are listed, the
:guilabel:`Sales Orders` smart button opens a list view of all the :abbr:`SO (Sales Order)`'s on
the expense report. Click on a :abbr:`SO (Sales Order)` to open the individual :abbr:`SO (Sales
Order)`.
The expenses are listed in the :abbr:`SO (Sales Order)` :guilabel:`Order Lines` tab.
.. image:: expenses/so-details.png
:align: center
:alt: See the expenses listed on the sales order after clicking into it.
Next, click :guilabel:`Create Invoice`, and select if the invoice is for a :guilabel:`Regular
invoice`, a :guilabel:`Down payment (percentage)`, or a :guilabel:`Down payment (fixed amount)` by
clicking the radio button next to it. Then, click :guilabel:`Create Invoice`. The customer has now
been invoiced for the expenses.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.0 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.0 KiB

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.2 KiB

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.0 KiB

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB