Compare commits
174 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 0b2e1f68a8 | |||
| 92a90f60e8 | |||
| 5769e8f617 | |||
| b923389182 | |||
| e953d8f838 | |||
| 4d079db7f8 | |||
| cbcf64e750 | |||
| 738703df14 | |||
| 8c93ff790e | |||
| 724f7000d7 | |||
| 470af9bf21 | |||
| e0b025fce0 | |||
| 4e92457ed8 | |||
| 20bd9b1780 | |||
| bfd78d2f9b | |||
| db38d06045 | |||
| ac8f3d2aa4 | |||
| e0b26c78b6 | |||
| f83f35955e | |||
| 33ef1f8918 | |||
| 15bc972085 | |||
| 74437b0e74 | |||
| e662ebe70c | |||
| 77e4f66a5a | |||
| 04a8e4657f | |||
| 392fb6ae15 | |||
| cc259daa66 | |||
| e2fdcb019e | |||
| 0afd7c1f78 | |||
| 154b223e6b | |||
| 544e2c18d0 | |||
| 412d7aed02 | |||
| 1957ca8424 | |||
| bd4e39d52f | |||
| b870ae43bc | |||
| 4feccc3996 | |||
| 85cef1bc5b | |||
| f516c71c37 | |||
| 58e4468997 | |||
| 1377ac0903 | |||
| 4a29ac6fee | |||
| e95f4d715c | |||
| 36b8f5187c | |||
| 92dce1d630 | |||
| d8b827cda4 | |||
| e13f9de4df | |||
| 582c44f05e | |||
| c7b36d6a68 | |||
| fc8449c974 | |||
| 60ce9c91a6 | |||
| efe4e4a4bc | |||
| a2dd83efd9 | |||
| 5ea7cefa23 | |||
| 70905915c4 | |||
| cdd4a16bda | |||
| e82d329a53 | |||
| ebbb05f300 | |||
| 1d40ce68e1 | |||
| 317197adb0 | |||
| 690ffd82dd | |||
| d7fb94d5bb | |||
| 1894e98869 | |||
| f6833d70d5 | |||
| abf2e868b8 | |||
| e41e618116 | |||
| b2f20be2fe | |||
| b9b8c79dd6 | |||
| a878b4d6c4 | |||
| 79828e3ea5 | |||
| c353ef2640 | |||
| 0fa009769f | |||
| b4e29f35d6 | |||
| b2c205e67c | |||
| 947f4ff52a | |||
| c96a65f04a | |||
| 3249b5af36 | |||
| a8884982ba | |||
| 0665e787a9 | |||
| 28c7ce5e80 | |||
| 310d58657b | |||
| f14a2ac9e0 | |||
| 2119d866d9 | |||
| 3fead9fe4d | |||
| e0cffd20ac | |||
| fb5088a451 | |||
| 4cec4fe764 | |||
| ab2fe5c506 | |||
| 8b7c9867f9 | |||
| 4a2c54ffda | |||
| b2054e39d7 | |||
| ae0e20208a | |||
| 534b25b9b4 | |||
| 9b829ce685 | |||
| debe0e65bc | |||
| c912d56027 | |||
| c05ccb8d2a | |||
| 944ca268bc | |||
| 015ce987e2 | |||
| da4bccca8d | |||
| a12154e0ed | |||
| 01191af74e | |||
| 4920915760 | |||
| a00aef06c3 | |||
| b41308d60f | |||
| 70c736d57a | |||
| c70a77153e | |||
| 120fa7e2b6 | |||
| 44c2b65fa0 | |||
| 2fd4af7619 | |||
| df145bf622 | |||
| 0451d1f2a8 | |||
| bea85886d4 | |||
| b37934a7d9 | |||
| 1c927fa911 | |||
| e0ab879c54 | |||
| c84d525452 | |||
| fda2534a74 | |||
| 21779a5eb6 | |||
| 28634eca60 | |||
| 13ddb59da9 | |||
| 7566002f49 | |||
| 10c7321ca4 | |||
| 03f5c0660e | |||
| 58990cb4c6 | |||
| 8ebc2d20b1 | |||
| 50b8a2100d | |||
| fa64368f21 | |||
| 363483c4aa | |||
| afe32dfbeb | |||
| 31485036f3 | |||
| 95e348eb51 | |||
| a727f25be8 | |||
| 8e143196f1 | |||
| 0e6358b6cb | |||
| eb1eb38cce | |||
| df99292384 | |||
| 95dd9329de | |||
| 1394d4813a | |||
| 6f48100e70 | |||
| f39139aea9 | |||
| dc0dec9d65 | |||
| c770eb5618 | |||
| 6078b9107c | |||
| 48d4fb5269 | |||
| e81e85a734 | |||
| 9d183db1ab | |||
| 3d5841894d | |||
| 506ccf71dd | |||
| 109c82776a | |||
| b4704c4424 | |||
| d8b44a0e4b | |||
| e9a0606f32 | |||
| 6305211a1e | |||
| 777eae22c5 | |||
| c2691c5ef3 | |||
| ba996c0266 | |||
| abf62125ea | |||
| d71c19b7be | |||
| 079ca0cc0c | |||
| 214fed5fdf | |||
| 4f3c0b0e16 | |||
| b0927964c6 | |||
| 1cedbcce58 | |||
| b5a80eed7b | |||
| 62386aae3e | |||
| a39903ca12 | |||
| e16a66706a | |||
| ee2b0e4a66 | |||
| 3c530a6473 | |||
| f5fa1cdc89 | |||
| b798b37111 | |||
| c6754134c5 | |||
| 44c8ee26d1 | |||
| a261ffd256 |
@@ -231,17 +231,12 @@ sphinx.transforms.i18n.docname_to_domain = (
|
||||
# is populated. If a version is passed to `versions` but is not listed here, it will not be shown.
|
||||
versions_names = {
|
||||
'master': "Master",
|
||||
'18.0': "Odoo 18",
|
||||
'saas-17.4': "Odoo Online",
|
||||
'saas-17.2': "Odoo Online",
|
||||
'saas-17.1': "Odoo Online",
|
||||
'17.0': "Odoo 17",
|
||||
'saas-16.4': "Odoo Online",
|
||||
'saas-16.3': "Odoo Online",
|
||||
'saas-16.2': "Odoo Online",
|
||||
'saas-16.1': "Odoo Online",
|
||||
'16.0': "Odoo 16",
|
||||
'saas-15.2': "Odoo Online",
|
||||
'15.0': "Odoo 15",
|
||||
'14.0': "Odoo 14",
|
||||
}
|
||||
|
||||
# The language names that should be shown in the language switcher, if the config option `languages`
|
||||
@@ -250,9 +245,10 @@ languages_names = {
|
||||
'de': 'DE',
|
||||
'en': 'EN',
|
||||
'es': 'ES',
|
||||
'es_419': 'ES (LATAM)',
|
||||
'fr': 'FR',
|
||||
'it': 'IT',
|
||||
'ko': 'KO',
|
||||
'ko': 'KR',
|
||||
'nl': 'NL',
|
||||
'pt_BR': 'PT',
|
||||
'ro': 'RO',
|
||||
|
||||
@@ -21,7 +21,7 @@ turned into a testing environment.
|
||||
Deactivated features
|
||||
====================
|
||||
|
||||
Here is a non-exhaustive list of the deactivated parameters:
|
||||
Here is a non-exhaustive list of the deactivated features:
|
||||
|
||||
- all planned actions (e.g., automatic invoicing of subscriptions, mass mailing, etc.)
|
||||
- outgoing emails
|
||||
@@ -29,6 +29,7 @@ Here is a non-exhaustive list of the deactivated parameters:
|
||||
- payment providers
|
||||
- delivery methods
|
||||
- :abbr:`IAP (In-App Purchase)` tokens
|
||||
- website visibility (prevent search engines from indexing your site)
|
||||
|
||||
.. note::
|
||||
**A red banner at the top of the screen is displayed on the neutralized database so that it can
|
||||
|
||||
@@ -46,7 +46,7 @@ Trigger a database upgrade.
|
||||
|
||||
.. seealso::
|
||||
For more information about the upgrade process, check out the :ref:`Odoo Online upgrade
|
||||
documentation <upgrade/request-test-database>`.
|
||||
documentation <upgrade-request-test>`.
|
||||
|
||||
.. _odoo_online/duplicate:
|
||||
|
||||
|
||||
@@ -29,3 +29,32 @@ We advise that:
|
||||
- Your scheduled actions should be
|
||||
`idempotent <https://stackoverflow.com/a/1077421/3332416>`_: they must not
|
||||
cause side-effects if they are started more often than expected.
|
||||
|
||||
.. _ip-address-change:
|
||||
|
||||
How can I automate tasks when an IP address change occurs?
|
||||
----------------------------------------------------------
|
||||
|
||||
**Odoo.sh notifies project administrators of IP address changes.**
|
||||
Additionally, when the IP address of a production instance changes, an HTTP `GET` request is made
|
||||
to the path `/_odoo.sh/ip-change` with the new IP address included as a query string parameter
|
||||
(`new`), along with the previous IP address as an additional parameter (`old`).
|
||||
|
||||
This mechanism allows custom actions to be applied in response to the IP address change
|
||||
(e.g., sending an email, contacting a firewall API, configuring database objects, etc.)
|
||||
|
||||
For security reasons, the `/_odoo.sh/ip-change` route is accessible only internally by the platform
|
||||
itself and returns a `403` response if accessed through any other means.
|
||||
|
||||
Here is a pseudo-implementation example:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
class IPChangeController(http.Controller):
|
||||
|
||||
@http.route('/_odoo.sh/ip-change', auth='public')
|
||||
def ip_change(self, old=None, new=None):
|
||||
_logger.info("IP address changed from %s to %s", old, new)
|
||||
# Then perform whatever action required for your use case, e.g., update an
|
||||
# ir.config_parameter, send an email, contact an external firewall service's API, ...
|
||||
return 'ok'
|
||||
|
||||
@@ -33,17 +33,17 @@ Manage the Github users who can access your project.
|
||||
.. image:: settings/interface-settings-collaborators.png
|
||||
:align: center
|
||||
|
||||
There are two levels of users:
|
||||
There are three levels of users:
|
||||
|
||||
* Admin: has access to all features of Odoo.sh.
|
||||
* User: does not have access to the project settings nor to the production and staging databases.
|
||||
- :guilabel:`Admin`: has access to all features of an Odoo.sh project.
|
||||
|
||||
The user group is meant for developers who can make modifications in your code but are not allowed
|
||||
to access the production data. Users of this group cannot connect to the production and staging
|
||||
databases using the *1-click connect* feature, but they can of course use their regular account on
|
||||
these databases if they have one, using their regular credentials.
|
||||
- :guilabel:`Tester`: has access to the *Staging* and *Development* databases and their tooling.
|
||||
This role is for users conducting User Acceptance Tests. Testers can work with copies of
|
||||
production data but cannot access the production database through the Odoo.sh tooling.
|
||||
|
||||
In addition, they cannot use the webshell nor have access to the server logs.
|
||||
- :guilabel:`Developer`: has access only to the *Development* databases and their tooling. This
|
||||
role is for developers who propose code modifications but are not allowed to access production
|
||||
and staging databases through the Odoo.sh tooling.
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
@@ -51,83 +51,145 @@ In addition, they cannot use the webshell nor have access to the server logs.
|
||||
|
||||
* -
|
||||
-
|
||||
- User
|
||||
- Developer
|
||||
- Tester
|
||||
- Admin
|
||||
* - Development
|
||||
- History
|
||||
- |green|
|
||||
- |green|
|
||||
- |green|
|
||||
* -
|
||||
- 1-click connect
|
||||
- |green|
|
||||
- |green|
|
||||
- |green|
|
||||
* -
|
||||
- Logs
|
||||
- |green|
|
||||
- |green|
|
||||
- |green|
|
||||
* -
|
||||
- Shell/SSH
|
||||
- |green|
|
||||
- |green|
|
||||
- |green|
|
||||
* -
|
||||
- Mails
|
||||
- |green|
|
||||
- |green|
|
||||
* -
|
||||
- Upgrade
|
||||
- |green|
|
||||
- |green|
|
||||
* -
|
||||
- Settings
|
||||
- |green|
|
||||
- |green|
|
||||
* - Production & Staging
|
||||
- |green|
|
||||
* - Staging
|
||||
- History
|
||||
- |green|
|
||||
- |green|
|
||||
- |green|
|
||||
* -
|
||||
- 1-click connect
|
||||
-
|
||||
- |green|
|
||||
- |green|
|
||||
* -
|
||||
- Logs
|
||||
-
|
||||
- |green|
|
||||
- |green|
|
||||
* -
|
||||
- Shell/SSH
|
||||
-
|
||||
- |green|
|
||||
- |green|
|
||||
* -
|
||||
- Mails
|
||||
-
|
||||
- |green|
|
||||
- |green|
|
||||
* -
|
||||
- Monitoring
|
||||
-
|
||||
- |green|
|
||||
- |green|
|
||||
* -
|
||||
- Backups
|
||||
-
|
||||
-
|
||||
- |green|
|
||||
* -
|
||||
- Upgrade
|
||||
-
|
||||
- |green|
|
||||
- |green|
|
||||
* -
|
||||
- Settings
|
||||
- |green|\*
|
||||
-
|
||||
- |green|
|
||||
- |green|
|
||||
* - Production
|
||||
- History
|
||||
- |green|
|
||||
- |green|
|
||||
- |green|
|
||||
* -
|
||||
- 1-click connect
|
||||
-
|
||||
-
|
||||
- |green|
|
||||
* -
|
||||
- Logs
|
||||
-
|
||||
-
|
||||
- |green|
|
||||
* -
|
||||
- Shell/SSH
|
||||
-
|
||||
-
|
||||
- |green|
|
||||
* -
|
||||
- Mails
|
||||
-
|
||||
-
|
||||
- |green|
|
||||
* -
|
||||
- Monitoring
|
||||
-
|
||||
-
|
||||
- |green|
|
||||
* -
|
||||
- Backups
|
||||
-
|
||||
-
|
||||
- |green|
|
||||
* -
|
||||
- Upgrade
|
||||
-
|
||||
-
|
||||
- |green|
|
||||
* -
|
||||
- Settings
|
||||
-
|
||||
-
|
||||
- |green|
|
||||
* - Status
|
||||
-
|
||||
- |green|
|
||||
- |green|
|
||||
- |green|
|
||||
* - Settings
|
||||
-
|
||||
-
|
||||
-
|
||||
- |green|
|
||||
|
||||
.. note::
|
||||
\* Only in staging branches
|
||||
.. warning::
|
||||
Those roles only apply to the usage of Odoo.sh. It is important to reflect the user roles
|
||||
attribution within the repository on GitHub. Please refer to the GitHub documentation section on
|
||||
`Managing a branch protection rule <https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/managing-a-branch-protection-rule>`_
|
||||
for detailed guidance.
|
||||
|
||||
.. |green| raw:: html
|
||||
|
||||
@@ -149,15 +211,32 @@ Allow public access to your development builds.
|
||||
.. image:: settings/interface-settings-public.png
|
||||
:align: center
|
||||
|
||||
If activated, this option exposes the Builds page publicly, allowing visitors to connect to your
|
||||
development builds.
|
||||
|
||||
In addition, visitors have access to the logs, shell and mails of your development builds.
|
||||
If activated, this option exposes the Builds page publicly, allowing visitors to view logs of development builds.
|
||||
|
||||
Production and staging builds are excluded, visitors can only see their status.
|
||||
|
||||
.. _odoosh-gettingstarted-settings-modules-installation:
|
||||
|
||||
GitHub commit statuses
|
||||
======================
|
||||
|
||||
This option enables Odoo.sh to push commit statuses to your GitHub repository when a build is
|
||||
created or updated. It requires a GitHub token with permissions to push commit statuses to the
|
||||
repository. Refer to `GitHub's documentation on personal access tokens <https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens>`_
|
||||
for instructions to create yours.
|
||||
|
||||
.. note::
|
||||
GitHub's **fine-grained personal tokens** have an expiration date and will be disabled if they
|
||||
fail to update the commit status. You can replace the token at any time on Odoo.sh.
|
||||
|
||||
The commit statuses pushed to GitHub can have the following contexts:
|
||||
|
||||
- :guilabel:`ci/odoo.sh (dev)`: status of a development build
|
||||
- :guilabel:`ci/odoo.sh (staging)`: status of a staging build
|
||||
- :guilabel:`ci/odoo.sh (production)`: status of a production build
|
||||
- :guilabel:`ci/odoo.sh (test_ci)`: testing the token from the Settings page will push a test
|
||||
status on the last commit of your repository
|
||||
|
||||
Custom domains
|
||||
==============
|
||||
|
||||
|
||||
@@ -61,8 +61,8 @@ To resolve the issue:
|
||||
your **network and firewall settings** allow the Odoo server to open outgoing connections
|
||||
towards:
|
||||
|
||||
- `services.odoo.com` on port `443` (or `80`)
|
||||
- for older deployments, `services.openerp.com` on port `443` (or `80`)
|
||||
- Odoo 18.0 and above: `services.odoo.com` on port `80`
|
||||
- Odoo 17.0 and below: `services.openerp.com` on port `80`
|
||||
|
||||
These ports must be kept open even after registering a database, as the update notification runs
|
||||
once a week.
|
||||
@@ -85,12 +85,6 @@ To resolve the issue, either:
|
||||
displayed in the message to validate the upsell quotation and pay for the extra users.
|
||||
- :ref:`Deactivate users <users/deactivate>` and **reject** the upsell quotation.
|
||||
|
||||
.. important::
|
||||
If you are on a monthly subscription plan, the database will automatically update to reflect the
|
||||
added user(s). If you are on a yearly or multi-year plan, an expiration banner will appear in the
|
||||
database. You can create the upsell quotation by clicking the banner to update the subscription
|
||||
or `send a support ticket <https://www.odoo.com/help>`_ to resolve the issue.
|
||||
|
||||
Once your database has the correct number of users, the expiration message disappears automatically
|
||||
after a few days, when the next verification occurs.
|
||||
|
||||
|
||||
@@ -273,18 +273,23 @@ Dependencies
|
||||
|
||||
.. tab:: Debian/Ubuntu
|
||||
|
||||
For Debian-based systems, the packages are listed in the `debian/control
|
||||
<{GITHUB_PATH}/debian/control>`_ file of the Odoo sources.
|
||||
|
||||
On Debian/Ubuntu, the following commands should install the required packages:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ cd /CommunityPath
|
||||
$ sed -n -e '/^Depends:/,/^Pre/ s/ python3-\(.*\),/python3-\1/p' debian/control | sudo xargs apt-get install -y
|
||||
$ cd odoo #CommunityPath
|
||||
$ sudo ./setup/debinstall.sh
|
||||
|
||||
The `setup/debinstall.sh` script will parse the `debian/control
|
||||
<{GITHUB_PATH}/debian/control>`_ file and install the found packages.
|
||||
|
||||
.. tab:: Install with pip
|
||||
|
||||
.. warning::
|
||||
|
||||
Using pip may lead to security issues and broken dependencies; only do this if you
|
||||
know what you are doing.
|
||||
|
||||
As some of the Python packages need a compilation step, they require system libraries to
|
||||
be installed.
|
||||
|
||||
|
||||
@@ -31,90 +31,54 @@ This matrix shows the support status of every version.
|
||||
- On-Premise
|
||||
- Release date
|
||||
- End of support
|
||||
* - Odoo saas~17.2
|
||||
* - **Odoo 18.0**
|
||||
- |green|
|
||||
- |green|
|
||||
- |green|
|
||||
- October 2024
|
||||
- October 2027 (planned)
|
||||
* - Odoo SaaS 17.4
|
||||
- |green|
|
||||
- N/A
|
||||
- N/A
|
||||
- July 2024
|
||||
-
|
||||
* - Odoo SaaS 17.2
|
||||
- |green|
|
||||
- N/A
|
||||
- N/A
|
||||
- April 2024
|
||||
-
|
||||
* - Odoo saas~17.1
|
||||
- |green|
|
||||
- N/A
|
||||
- N/A
|
||||
- January 2024
|
||||
-
|
||||
* - **Odoo 17.0**
|
||||
- |green|
|
||||
- |green|
|
||||
- |green|
|
||||
- November 2023
|
||||
- October 2026 (planned)
|
||||
* - Odoo saas~16.4
|
||||
- |green|
|
||||
- N/A
|
||||
- N/A
|
||||
- August 2023
|
||||
-
|
||||
* - Odoo saas~16.3
|
||||
- |red|
|
||||
- N/A
|
||||
- N/A
|
||||
- June 2023
|
||||
-
|
||||
* - Odoo saas~16.2
|
||||
- |red|
|
||||
- N/A
|
||||
- N/A
|
||||
- March 2023
|
||||
-
|
||||
* - Odoo saas~16.1
|
||||
- |red|
|
||||
- N/A
|
||||
- N/A
|
||||
- February 2023
|
||||
-
|
||||
* - **Odoo 16.0**
|
||||
- |green|
|
||||
- |green|
|
||||
- |green|
|
||||
- October 2022
|
||||
- November 2025 (planned)
|
||||
* - Odoo saas~15.2
|
||||
- |red|
|
||||
- N/A
|
||||
- N/A
|
||||
- March 2022
|
||||
- January 2023
|
||||
* - Odoo saas~15.1
|
||||
- |red|
|
||||
- N/A
|
||||
- N/A
|
||||
- February 2022
|
||||
- July 2022
|
||||
- October 2025 (planned)
|
||||
* - **Odoo 15.0**
|
||||
- |green|
|
||||
- |green|
|
||||
- |green|
|
||||
- |red|
|
||||
- |red|
|
||||
- |red|
|
||||
- October 2021
|
||||
- November 2024 (planned)
|
||||
- October 2024
|
||||
* - **Odoo 14.0**
|
||||
- |red|
|
||||
- |red|
|
||||
- |red|
|
||||
- October 2020
|
||||
- November 2023
|
||||
* - **Odoo 13.0**
|
||||
- |red|
|
||||
- |red|
|
||||
- |red|
|
||||
- October 2019
|
||||
- October 2022
|
||||
* - Older versions
|
||||
- |red|
|
||||
- |red|
|
||||
- |red|
|
||||
- Before 2019
|
||||
- Before 2022
|
||||
- Before 2020
|
||||
- Before 2023
|
||||
|
||||
.. admonition:: Legend
|
||||
|
||||
|
||||
@@ -2,31 +2,55 @@
|
||||
Upgrade
|
||||
=======
|
||||
|
||||
An upgrade is the process of moving your database from an older version to a newer :doc:`supported
|
||||
version <supported_versions>` (e.g., Odoo 14.0 to Odoo 16.0). Frequently upgrading is essential as
|
||||
each version comes with new and improved features, bug fixes, and security patches.
|
||||
An upgrade involves moving a database from an older version to a newer supported version (e.g., from
|
||||
Odoo 16.0 to Odoo 18.0). Regular upgrades are crucial as each version offers new features, bug
|
||||
fixes, and security patches. Using a :doc:`supported version <supported_versions>` is strongly
|
||||
recommended. Each major version is supported for three years.
|
||||
|
||||
.. _upgrade_faq/rolling_release:
|
||||
Depending on the hosting type and Odoo version used, a database upgrade can be **mandatory**.
|
||||
|
||||
.. tabs::
|
||||
|
||||
.. group-tab:: Odoo Online
|
||||
|
||||
- If a database is on a **major version** (e.g., 16.0, 17.0, 18.0), an upgrade is mandatory
|
||||
every two years.
|
||||
- If a database is on a **minor version** (e.g., 17.1, 17.2, 17.4), an upgrade is mandatory
|
||||
a few weeks after the next version is released. Minor versions are usually released every
|
||||
two months.
|
||||
|
||||
.. group-tab:: Odoo.sh
|
||||
|
||||
After the initial three years of support, you will have another two years to complete the
|
||||
upgrade. You will be notified when an upgrade is required.
|
||||
|
||||
.. image:: upgrade/odoo-sh-message.png
|
||||
:alt: The "unsupported version" popup on Odoo.sh.
|
||||
|
||||
.. group-tab:: On-premise
|
||||
|
||||
You can stay on the same version indefinitely, even if it is not recommended. Note that the
|
||||
smaller the version gap, the easier the upgrade should be.
|
||||
|
||||
.. spoiler:: Automatic upgrades: Odoo Online's Rolling Release process
|
||||
|
||||
The Rolling Release process allows Odoo Online customers to upgrade their database directly from
|
||||
a message prompt sent to the database administrator as soon as a new version is released. The
|
||||
invitation to upgrade is only sent if no issues are detected during the automatic tests.
|
||||
You will receive a notification in your database a few weeks before a mandatory upgrade will be
|
||||
automatically carried out. You are in control of the process as long as the deadline is not
|
||||
reached.
|
||||
|
||||
.. image:: upgrade/rr-upgrade-message.png
|
||||
:alt: The upgrade message prompt on the top right of the database
|
||||
|
||||
It is strongly recommended to manually :ref:`test the upgrade first <upgrade/test_your_db>`.
|
||||
Clicking :guilabel:`I want to test first` redirects to `the database manager
|
||||
<https://www.odoo.com/my/databases/>`_, where it is possible to request an upgraded test database
|
||||
and check it for any discrepancies.
|
||||
Concretely, Odoo’s Upgrade Team performs a silent test upgrade of every database that should be
|
||||
upgraded. If the test is successful and lasts less than 20 minutes, you can directly trigger the
|
||||
upgrade from the database. If the test fails, you can test an upgrade using the `database manager
|
||||
<https://www.odoo.com/my/databases>`_.
|
||||
|
||||
It is **not** recommended to click :guilabel:`Upgrade Now` without testing first, as it
|
||||
immediately triggers the live production database upgrade.
|
||||
When you are invited to upgrade, it is strongly recommended to :ref:`request an upgraded test
|
||||
database <upgrade-request-test>` first and spend time :ref:`testing <upgrade-testing>` it.
|
||||
|
||||
If the Rolling Release process detects an issue with the upgrade, it will be deactivated until
|
||||
the issue is resolved.
|
||||
An automatic upgrade to the next version will be triggered if no action is taken before the
|
||||
specified due date.
|
||||
|
||||
An upgrade does not cover:
|
||||
|
||||
@@ -40,36 +64,40 @@ An upgrade does not cover:
|
||||
If your database contains custom modules, it cannot be upgraded until a version of your custom
|
||||
modules is available for the target version of Odoo. For customers maintaining their own custom
|
||||
modules, we recommend to parallelize the process by :ref:`requesting an upgraded database
|
||||
<upgrade/request-test-database>` while also :doc:`upgrading the source code of your custom
|
||||
<upgrade-request-test>` while also :doc:`upgrading the source code of your custom
|
||||
modules </developer/howtos/upgrade_custom_db>`.
|
||||
|
||||
.. _upgrade-nutshell:
|
||||
|
||||
Upgrading in a nutshell
|
||||
-----------------------
|
||||
=======================
|
||||
|
||||
#. Request an upgraded test database (see :ref:`obtaining an upgraded test database
|
||||
<upgrade/request-test-database>`).
|
||||
<upgrade-request-test>`).
|
||||
#. If applicable, upgrade the source code of your custom module to be compatible with the new
|
||||
version of Odoo (see :doc:`/developer/howtos/upgrade_custom_db`).
|
||||
#. Thoroughly test the upgraded database (see :ref:`testing the new version of the database
|
||||
<upgrade/test_your_db>`).
|
||||
#. Report any issue encountered during the testing to Odoo by `submitting a ticket for an issue
|
||||
related to my future upgrade (I am testing an upgrade) <https://odoo.com/help?stage=migration>`_.
|
||||
<upgrade-testing>`).
|
||||
#. Report any issue encountered during the testing to Odoo by going to the `Support page and
|
||||
selecting "An issue related to my future upgrade (I am testing an upgrade)"
|
||||
<https://www.odoo.com/help?stage=migration>`_.
|
||||
#. Once all issues are resolved and you are confident that the upgraded database can be used as
|
||||
your main database without any issues, plan the upgrade of your production database.
|
||||
#. Request the upgrade for the production database, rendering it unavailable for the time it takes
|
||||
to complete the process (see :ref:`upgrading the production database <upgrade/upgrade-prod>`).
|
||||
#. Report any issue encountered during the upgrade to Odoo by `submitting a ticket for an issue
|
||||
related to my upgrade (production) <https://odoo.com/help?stage=post_upgrade>`_.
|
||||
to complete the process (see :ref:`upgrading the production database <upgrade-production>`).
|
||||
#. Report any issue encountered during the upgrade to Odoo by going to the `Support page and
|
||||
selecting "An issue related to my upgrade (production)"
|
||||
<https://www.odoo.com/help?stage=post_upgrade>`_.
|
||||
|
||||
.. _upgrade/request-test-database:
|
||||
.. _upgrade-request-test:
|
||||
|
||||
Obtaining an upgraded test database
|
||||
-----------------------------------
|
||||
===================================
|
||||
|
||||
The `Upgrade page <https://upgrade.odoo.com/>`_ is the main platform for requesting an upgraded
|
||||
The `Upgrade page <https://upgrade.odoo.com>`_ is the main platform for requesting an upgraded
|
||||
database. However, depending on the hosting type, you can upgrade from the command line
|
||||
(on-premise), the `Odoo Online database manager <https://odoo.com/my/databases>`_, or your `Odoo.sh
|
||||
project <https://odoo.sh/project>`_.
|
||||
(on-premise), the Odoo Online `database manager <https://www.odoo.com/my/databases>`_, or your
|
||||
`Odoo.sh project <https://www.odoo.sh/project>`_.
|
||||
|
||||
.. note::
|
||||
The Upgrade platform follows the same `Privacy Policy <https://www.odoo.com/privacy>`_ as the
|
||||
@@ -81,7 +109,7 @@ project <https://odoo.sh/project>`_.
|
||||
.. group-tab:: Odoo Online
|
||||
|
||||
Odoo Online databases can be manually upgraded via the `database manager
|
||||
<https://odoo.com/my/databases>`_.
|
||||
<https://www.odoo.com/my/databases>`_.
|
||||
|
||||
The database manager displays all databases associated with the user's account. Databases
|
||||
not on the most recent version of Odoo display an arrow in a circle icon next to their name,
|
||||
@@ -115,8 +143,7 @@ project <https://odoo.sh/project>`_.
|
||||
.. image:: upgrade/odoo-sh-staging.png
|
||||
:alt: Odoo.sh project and tabs
|
||||
|
||||
The **latest production daily automatic backup** is then sent to the `upgrade platform
|
||||
<https://upgrade.odoo.com>`_.
|
||||
The **latest production daily automatic backup** is then sent to the Upgrade platform.
|
||||
|
||||
Once the upgrade platform is done upgrading the backup and uploading it on the branch, it is
|
||||
put in a **special mode**: each time a **commit is pushed** on the branch, a **restore
|
||||
@@ -142,6 +169,21 @@ project <https://odoo.sh/project>`_.
|
||||
|
||||
$ python <(curl -s https://upgrade.odoo.com/upgrade) test -d <your db name> -t <target version>
|
||||
|
||||
.. note::
|
||||
This command has some requirements on the environment it runs in:
|
||||
|
||||
- Some external commands that must be provided by the operating system, normally found in
|
||||
any Linux distribution (including WSL). An error will be displayed if one or several of
|
||||
them are missing.
|
||||
- The system user that executes the command needs to be configured with access to the
|
||||
database. Please refer to the PostgreSQL documentation of the `client environment
|
||||
<https://www.postgresql.org/docs/current/libpq-envars.html>`_ or the `client password
|
||||
file <https://www.postgresql.org/docs/current/libpq-pgpass.html>`_ for this requirement.
|
||||
- The script needs to be able to reach one or multiple servers of the upgrade platform
|
||||
both on TCP port 443 and to any random TCP port in the range between 32768 and 60999.
|
||||
This can be in conflict with your restrictive firewall and may need an exception added
|
||||
to the firewall configuration.
|
||||
|
||||
The following command can be used to display the general help and the main commands:
|
||||
|
||||
.. code-block:: console
|
||||
@@ -149,7 +191,7 @@ project <https://odoo.sh/project>`_.
|
||||
$ python <(curl -s https://upgrade.odoo.com/upgrade) --help
|
||||
|
||||
An upgraded test database can also be requested via the `Upgrade page
|
||||
<https://upgrade.odoo.com/>`_.
|
||||
<https://upgrade.odoo.com>`_.
|
||||
|
||||
.. important::
|
||||
In databases where custom modules are installed, their source code must be up-to-date with
|
||||
@@ -175,22 +217,20 @@ project <https://odoo.sh/project>`_.
|
||||
.. note::
|
||||
You can request multiple test databases if you wish to test an upgrade more than once.
|
||||
|
||||
.. _upgrade/upgrade_report:
|
||||
|
||||
.. note::
|
||||
When an upgrade request is completed, an upgrade report is attached to the successful upgrade
|
||||
email, and it becomes available in the Discuss app for users who are part of the "Administration
|
||||
/ Settings" group. This report provides important information about the changes introduced by
|
||||
the new version.
|
||||
|
||||
.. _upgrade/test_your_db:
|
||||
.. _upgrade-testing:
|
||||
|
||||
Testing the new version of the database
|
||||
---------------------------------------
|
||||
=======================================
|
||||
|
||||
It is essential to spend some time testing the upgraded test database to ensure that you are not
|
||||
stuck in your day-to-day activities by a change in views, behavior, or an error message once the
|
||||
upgrade goes live.
|
||||
It is essential to test the upgraded test database to ensure that you are not stuck in your
|
||||
day-to-day activities by a change in views, behavior, or an error message once the upgrade goes
|
||||
live.
|
||||
|
||||
.. note::
|
||||
Test databases are neutralized, and some features are disabled to prevent them from impacting the
|
||||
@@ -245,9 +285,10 @@ working correctly and to get more familiar with the new version.
|
||||
This list is **not** exhaustive. Extend the example to your other apps based on your use of Odoo.
|
||||
|
||||
If you face an issue while testing your upgraded test database, you can request the assistance of
|
||||
Odoo by `submitting a ticket for an issue related to my future upgrade (I am testing an upgrade)
|
||||
<https://odoo.com/help?stage=migration>`_. In any case, it is essential to report any problem
|
||||
encountered during the testing to fix it before upgrading your production database.
|
||||
Odoo by going to the `Support page and selecting "An issue related to my future upgrade (I am
|
||||
testing an upgrade)" <https://www.odoo.com/help?stage=migration>`_. In any case, it is essential to
|
||||
report any problem encountered during the testing to fix it before upgrading your production
|
||||
database.
|
||||
|
||||
You might encounter significant differences with standard views, features, fields, and models during
|
||||
testing. Those changes cannot be reverted on a case-by-case basis. However, if a change introduced
|
||||
@@ -265,16 +306,13 @@ module to make it compatible with the new version of Odoo.
|
||||
- Server actions in the action menu on form views, as well as by selecting multiple records on
|
||||
list views
|
||||
|
||||
.. _upgrade/upgrade-prod:
|
||||
.. _upgrade-production:
|
||||
|
||||
Upgrading the production database
|
||||
---------------------------------
|
||||
=================================
|
||||
|
||||
Once the :ref:`tests <upgrade/test_your_db>` are completed and you are confident that the upgraded
|
||||
Once the :ref:`tests <upgrade-testing>` are completed and you are confident that the upgraded
|
||||
database can be used as your main database without any issues, it is time to plan the go-live day.
|
||||
It can be planned in coordination with Odoo's upgrade support analysts by `submitting a ticket for
|
||||
an issue related to my future upgrade (I am testing an upgrade)
|
||||
<https://odoo.com/help?stage=migration>`_.
|
||||
|
||||
Your production database will be unavailable during its upgrade. Therefore, we recommend planning
|
||||
the upgrade at a time when the use of the database is minimal.
|
||||
@@ -291,15 +329,15 @@ day before upgrading the production database is also recommended.**
|
||||
- Business interruptions (e.g., no longer having the possibility to validate an action)
|
||||
- Poor customer experience (e.g., an eCommerce website that does not work correctly)
|
||||
|
||||
The process of upgrading a production database is similar to upgrading a test database with a few
|
||||
exceptions.
|
||||
The process of upgrading a production database is similar to upgrading a test database, but with a
|
||||
few exceptions.
|
||||
|
||||
.. tabs::
|
||||
|
||||
.. group-tab:: Odoo Online
|
||||
|
||||
The process is similar to :ref:`obtaining an upgraded test database
|
||||
<upgrade/request-test-database>`, except for the purpose option, which must be set to
|
||||
<upgrade-request-test>`, except for the purpose option, which must be set to
|
||||
:guilabel:`Production` instead of :guilabel:`Test`.
|
||||
|
||||
.. warning::
|
||||
@@ -309,8 +347,8 @@ exceptions.
|
||||
|
||||
.. group-tab:: Odoo.sh
|
||||
|
||||
The process is similar to :ref:`obtaining an upgraded test database
|
||||
<upgrade/request-test-database>` on the :guilabel:`Production` branch.
|
||||
The process is similar to :ref:`obtaining an upgraded test database <upgrade-request-test>` on
|
||||
the :guilabel:`Production` branch.
|
||||
|
||||
.. image:: upgrade/odoo-sh-prod.png
|
||||
:alt: View from the upgrade tab
|
||||
@@ -340,7 +378,8 @@ exceptions.
|
||||
$ python <(curl -s https://upgrade.odoo.com/upgrade) production -d <your db name> -t <target version>
|
||||
|
||||
An upgraded production database can also be requested via the `Upgrade page
|
||||
<https://upgrade.odoo.com/>`_.
|
||||
<https://upgrade.odoo.com>`_.
|
||||
|
||||
Once the database is uploaded, any modification to your production database will **not** be
|
||||
present on your upgraded database. This is why we recommend not using it during the upgrade
|
||||
process.
|
||||
@@ -350,14 +389,14 @@ exceptions.
|
||||
a filestore. Therefore, the upgraded database filestore must be merged with the production
|
||||
filestore before deploying the new version.
|
||||
|
||||
In case of an issue with your production database, you can request the assistance of Odoo by
|
||||
`submitting a ticket for an issue related to my upgrade (production)
|
||||
<https://odoo.com/help?stage=post_upgrade>`_.
|
||||
In case of an issue with your production database, you can request the assistance of Odoo by going
|
||||
to the `Support page and selecting "An issue related to my future upgrade (I am testing an upgrade)"
|
||||
<https://www.odoo.com/help?stage=migration>`_.
|
||||
|
||||
.. _upgrade/sla:
|
||||
.. _upgrade-sla:
|
||||
|
||||
Service-level agreement (SLA)
|
||||
-----------------------------
|
||||
=============================
|
||||
|
||||
With Odoo Enterprise, upgrading a database to the most recent version of Odoo is **free**, including
|
||||
any support required to rectify potential discrepancies in the upgraded database.
|
||||
@@ -366,8 +405,10 @@ Information about the upgrade services included in the Enterprise Licence is ava
|
||||
:ref:`Odoo Enterprise Subscription Agreement <upgrade>`. However, this section clarifies what
|
||||
upgrade services you can expect.
|
||||
|
||||
.. _upgrade-sla-covered:
|
||||
|
||||
Upgrade services covered by the SLA
|
||||
===================================
|
||||
-----------------------------------
|
||||
|
||||
Databases hosted on Odoo's cloud platforms (Odoo Online and Odoo.sh) or self-hosted (On-Premise) can
|
||||
benefit from upgrade services at all times for:
|
||||
@@ -381,16 +422,16 @@ benefit from upgrade services at all times for:
|
||||
Upgrade services are limited to the technical conversion and adaptation of a database (standard
|
||||
modules and data) to make it compatible with the version targeted by the upgrade.
|
||||
|
||||
.. _upgrade-sla-not-covered:
|
||||
|
||||
Upgrade services not covered by the SLA
|
||||
=======================================
|
||||
---------------------------------------
|
||||
|
||||
The following upgrade-related services are **not** included:
|
||||
|
||||
- the **cleaning** of pre-existing data and configurations while upgrading;
|
||||
- the upgrade of **custom modules created in-house or by third parties**, including Odoo partners;
|
||||
- lines of **code added to standard modules**, i.e., customizations created outside the Studio app,
|
||||
code entered manually, and :ref:`automated actions using Python code
|
||||
<studio/automated-actions/action>`; and
|
||||
- the upgrade of **additional modules not covered by a maintenance contract** that are created
|
||||
in-house or by third parties, including Odoo partners; and
|
||||
- **training** on using the upgraded version's features and workflows.
|
||||
|
||||
.. seealso::
|
||||
|
||||
|
After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 14 KiB |
@@ -7,5 +7,6 @@ Odoo essentials
|
||||
essentials/activities
|
||||
essentials/reporting
|
||||
essentials/search
|
||||
essentials/contacts
|
||||
essentials/export_import_data
|
||||
essentials/in_app_purchase
|
||||
|
||||
@@ -0,0 +1,238 @@
|
||||
========
|
||||
Contacts
|
||||
========
|
||||
|
||||
The *Contacts* application comes installed on all Odoo databases. Contacts are created for customers
|
||||
the company does business with through Odoo. A contact is a repository of vital business
|
||||
information, facilitating communication and business transactions.
|
||||
|
||||
Contact form
|
||||
============
|
||||
|
||||
To create a new contact, navigate to the :menuselection:`Contacts app`, and click
|
||||
:guilabel:`Create`. A new form appears where various contact information can be added.
|
||||
|
||||
Contact type
|
||||
------------
|
||||
|
||||
Odoo allows for both :guilabel:`Individual` and :guilabel:`Company` contacts. Select either
|
||||
:guilabel:`Individual` or :guilabel:`Company`, depending on the type of contact that is being added.
|
||||
|
||||
Name
|
||||
----
|
||||
|
||||
First, fill in the name of the :guilabel:`Individual` or :guilabel:`Company`. This is how the name
|
||||
appears throughout the database. This field is **mandatory**.
|
||||
|
||||
.. tip::
|
||||
:guilabel:`Individual` contacts can have a :guilabel:`Company` contact linked to it. After
|
||||
selecting :guilabel:`Individual`, a new :guilabel:`Company Name...` field appears below the
|
||||
first name field.
|
||||
|
||||
Address
|
||||
-------
|
||||
|
||||
Next, enter the :guilabel:`Address` of the :guilabel:`Company` or :guilabel:`Individual`.
|
||||
|
||||
.. tip::
|
||||
If the :guilabel:`Individual` option is chosen, then the *type of address* can be chosen from a
|
||||
drop-down menu. Options for this drop-down menu include: :guilabel:`Contact`, :guilabel:`Invoice
|
||||
Address`, :guilabel:`Delivery Address`, :guilabel:`Other Address`, and :guilabel:`Private
|
||||
Address`.
|
||||
|
||||
Additional fields
|
||||
-----------------
|
||||
|
||||
Additional details are included on the initial form. The following fields are available:
|
||||
|
||||
- :guilabel:`VAT`: Value Added Tax number.
|
||||
- :guilabel:`Citizen Identification`: citizen or government identification number (only available
|
||||
on :guilabel:`Individual`).
|
||||
- :guilabel:`Job Position`: list the job position of the :guilabel:`Individual` (only available on
|
||||
:guilabel:`Individual`).
|
||||
- :guilabel:`Phone`: list phone number (with country code). Make a call, send an SMS, or WhatsApp
|
||||
message by hovering over the field on the saved form, and clicking the desired option.
|
||||
- :guilabel:`Mobile`: list mobile phone number (with country code). Make a call, send an SMS, or
|
||||
WhatsApp message by hovering over the field on the saved form, and clicking on the desired option.
|
||||
- :guilabel:`Email`: enter the email address with the domain.
|
||||
- :guilabel:`Website`: enter the full website address, starting with `http` or `https`.
|
||||
- :guilabel:`Title`: select :guilabel:`Doctor`, :guilabel:`Madam`, :guilabel:`Miss`,
|
||||
:guilabel:`Mister`, :guilabel:`Professor`, or create a new one directly from this field.
|
||||
- :guilabel:`Tags`: enter preconfigured tags by typing them in the field, or clicking the drop-down
|
||||
menu, and selecting one. To create a new one, type the new tag in the field, and click
|
||||
:guilabel:`Create` from the resulting drop-down menu.
|
||||
|
||||
Contacts & Addresses tab
|
||||
------------------------
|
||||
|
||||
At the bottom of the contact form are several tabs. On the :guilabel:`Contacts & Addresses` tab,
|
||||
contacts can be added that are associated with a :guilabel:`Company` and related addresses. For
|
||||
example, a specific contact person for the company can be listed here.
|
||||
|
||||
Multiple addresses can be added on both :guilabel:`Individual` and :guilabel:`Company` contacts. To
|
||||
do so, click :guilabel:`Add` in the :guilabel:`Contacts & Addresses` tab. Doing so reveals a
|
||||
:guilabel:`Create Contact` pop-up form, in which additional addresses can be configured.
|
||||
|
||||
.. image:: contacts/contact-form-add-address.png
|
||||
:align: center
|
||||
:alt: Add a contact/address to the contact form.
|
||||
|
||||
On the :guilabel:`Create Contact` pop-up form, start by clicking the default :guilabel:`Other
|
||||
Address` field at the top to reveal a drop-down menu of address-related options.
|
||||
|
||||
Select any of the following options:
|
||||
|
||||
- :guilabel:`Contact`: adds another contact to the existing contact form.
|
||||
- :guilabel:`Invoice Address`: adds a specific invoice address to the existing contact form.
|
||||
- :guilabel:`Delivery Address`: adds a specific delivery address to the existing contact form.
|
||||
- :guilabel:`Other Address`: adds an alternate address to the existing contact form.
|
||||
- :guilabel:`Private Address`: adds a private address to the existing contact form.
|
||||
|
||||
.. image:: contacts/create-contact-window.png
|
||||
:align: center
|
||||
:alt: Create a new contact/address on a contact form.
|
||||
|
||||
Once an option is selected, enter the corresponding contact information that should be used for the
|
||||
specified address type.
|
||||
|
||||
Add the :guilabel:`Contact Name`, :guilabel:`Address`, :guilabel:`Email`, along with the
|
||||
:guilabel:`Phone` and/or :guilabel:`Mobile` numbers below.
|
||||
|
||||
Set the :guilabel:`Job Position`, which appears if the :guilabel:`Contact` address type has been
|
||||
selected. This is similar to the :guilabel:`Individual` contact.
|
||||
|
||||
To add a note, click on the text field next to :guilabel:`Notes`, and write anything that is
|
||||
applicable to the customer or contact.
|
||||
|
||||
Then, click :guilabel:`Save & Close` to save the address, and close the :guilabel:`Create Contact`
|
||||
window. Or, click :guilabel:`Save & New` to save the address, and immediately input another one.
|
||||
|
||||
Sales & Purchase tab
|
||||
--------------------
|
||||
|
||||
Next, is the :guilabel:`Sales & Purchases` tab, which only appears when the *Sales*, *Purchase*,
|
||||
**or** *Point of Sale* applications are installed.
|
||||
|
||||
The :guilabel:`Fiscal Position` can be set on the :guilabel:`Sales & Purchases` tab. Select a
|
||||
:guilabel:`Fiscal Position` from the drop-down menu.
|
||||
|
||||
Sales section
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
Under the :guilabel:`Sales` heading, a specific :guilabel:`Salesperson` can be assigned to a
|
||||
contact. To do that, click the :guilabel:`Salesperson` drop-down field, and select one. Create a new
|
||||
:guilabel:`Salesperson` by typing the user's name, and making the appropriate selection.
|
||||
|
||||
Certain :guilabel:`Payment Terms`, or a certain :guilabel:`Pricelist`, can also be set, if needed.
|
||||
Click the drop-down menu next to :guilabel:`Payment Terms`, and change it to one of the preselected
|
||||
:guilabel:`Payment Terms`, or :guilabel:`Create` a new one. Select the :guilabel:`Pricelist`
|
||||
drop-down menu to choose the appropriate :guilabel:`Pricelist`.
|
||||
|
||||
Click into the :guilabel:`Delivery Method` field to select an option from the drop-down menu.
|
||||
|
||||
Point Of Sale section
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Under the :guilabel:`Point Of Sale` heading, enter a :guilabel:`Barcode` that can be used to
|
||||
identify the contact. Use the :guilabel:`Loyalty Points` field to track points the user won as part
|
||||
of a *Loyalty Program*.
|
||||
|
||||
Purchase section
|
||||
~~~~~~~~~~~~~~~~
|
||||
|
||||
Specify :guilabel:`Payment Terms`, :guilabel:`1099 Box` information, and a preferred
|
||||
:guilabel:`Payment Method` here. A :guilabel:`Receipt Reminder` can be set here, as well.
|
||||
|
||||
Misc section
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Under the :guilabel:`Misc.` heading, use :guilabel:`Reference` field to add any additional
|
||||
information for this contact. If this contact should only be accessible for one company in a
|
||||
multi-company database, select it from the :guilabel:`Company` field drop-down list. Use the
|
||||
:guilabel:`Website` drop-down menu to restrict the publishing of this contact to one website (if
|
||||
working on a database with multiple websites). Select one or more :guilabel:`Website Tags` to assist
|
||||
in filtering published customers on the `/customers` website page. Select an :guilabel:`Industry`
|
||||
for this contact from the drop-down menu. Use the :guilabel:`SLA Policies` field to assign a
|
||||
*Helpdesk* SLA policy to this contact.
|
||||
|
||||
Accounting tab
|
||||
--------------
|
||||
|
||||
The :guilabel:`Accounting` tab appears when the *Accounting* application is installed. Here, a user
|
||||
can add any related :guilabel:`Bank Accounts`, or set default :guilabel:`Accounting entries`.
|
||||
|
||||
Under the :guilabel:`Miscellaneous` heading, use the :guilabel:`LEI` field to enter a Legal Entity
|
||||
Identifier, if necessary.
|
||||
|
||||
Internal Notes tab
|
||||
------------------
|
||||
|
||||
Following the :guilabel:`Accounting` tab is the :guilabel:`Internal Notes` tab, where notes can be
|
||||
left on this contact form, just like on the contact form noted above.
|
||||
|
||||
Partner Assignment tab
|
||||
----------------------
|
||||
|
||||
Next is the :guilabel:`Partner Assignment` tab, which by default, includes a :guilabel:`Geolocation`
|
||||
section, and other partner options, including :guilabel:`Partner Activation` and :guilabel:`Partner
|
||||
Review` configurations. These are **only** present when the *Enterprise Resellers* module is
|
||||
installed.
|
||||
|
||||
Membership tab
|
||||
--------------
|
||||
|
||||
Finally, there is the :guilabel:`Membership` tab, which can help users manage any memberships that
|
||||
are being offered to this specific contact. It should be noted that this tab only appears when the
|
||||
*Members* applications is installed.
|
||||
|
||||
Smart buttons
|
||||
=============
|
||||
|
||||
At the top of the contact form, there are some additional options available, known as *smart
|
||||
buttons*.
|
||||
|
||||
Here, Odoo displays a variety of records, related to this contact, that were created on other apps.
|
||||
Odoo integrates information from every single app, so there are many smart buttons.
|
||||
|
||||
.. example::
|
||||
For example, there is an :guilabel:`Opportunities` smart button, where all the opportunities
|
||||
related to this customer from the *CRM* app are accessible.
|
||||
|
||||
.. tip::
|
||||
If the corresponding applications are installed, their related smart buttons appear
|
||||
automatically on a contact form.
|
||||
|
||||
A user can see any :guilabel:`Meetings`, :guilabel:`Sales`, :guilabel:`POS Orders`,
|
||||
:guilabel:`Subscriptions`, project :guilabel:`Tasks`, and the :guilabel:`More` smart button reveals
|
||||
additional options, via a drop-down menu. A user can even quickly access :guilabel:`Purchases`,
|
||||
:guilabel:`Helpdesk` tasks, :guilabel:`On-time Rate` for deliveries, :guilabel:`Invoiced`
|
||||
information, :guilabel:`Vendor Bills`, and the :guilabel:`Partner Ledger` connected to this contact.
|
||||
|
||||
Deliveries, documents, loyalty cards, and direct debits are *also* linked to smart buttons, like
|
||||
this, should there be any outstanding/on-file for this contact.
|
||||
|
||||
If the contact is a partner, the user can visit their partner page on the Odoo-built website by
|
||||
clicking the :guilabel:`Go to Website` smart button.
|
||||
|
||||
Archive contacts
|
||||
----------------
|
||||
|
||||
If a user decides they no longer want to have this contact active, the record can be archived. To do
|
||||
that, go to the :icon:`fa-cog` :guilabel:`Action` menu at the top of the contact form, and click
|
||||
:guilabel:`Archive`.
|
||||
|
||||
Then, click :guilabel:`OK` from the resulting :guilabel:`Confirmation` pop-up window.
|
||||
|
||||
With this contact successfully archived, as indicated by a banner at the top, they do not show up
|
||||
in the main contacts page, but they can still be searched for with the :guilabel:`Archived` filter.
|
||||
|
||||
.. tip::
|
||||
A contact can be *unarchived*, if the user decides to work with them again. To do that, just
|
||||
click the :icon:`fa-cog` :guilabel:`Action` menu again at the top of the archived contact form,
|
||||
and click :guilabel:`Unarchive`. Upon doing so, the :guilabel:`Archived` banner is removed, and
|
||||
the contact is restored.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`Add different addresses in CRM <../sales/sales/send_quotations/different_addresses>`
|
||||
- `Odoo's eLearning Contacts tutorial
|
||||
<https://www.odoo.com/slides/slide/contacts-2527?fullscreen=1>`_
|
||||
|
After Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 14 KiB |
@@ -203,7 +203,7 @@ available methods are standard price, average price, :abbr:`LIFO (Last-In, First
|
||||
:abbr:`FIFO (First-In, First-Out).`
|
||||
|
||||
.. seealso::
|
||||
:doc:`../inventory_and_mrp/inventory/warehouses_storage/inventory_valuation/inventory_valuation_config`
|
||||
:doc:`../inventory_and_mrp/inventory/product_management/inventory_valuation/inventory_valuation_config`
|
||||
|
||||
Retained earnings
|
||||
=================
|
||||
|
||||
@@ -36,6 +36,8 @@ follow the instructions.
|
||||
.. seealso::
|
||||
:doc:`bank/bank_synchronization`
|
||||
|
||||
.. _bank_accounts/create:
|
||||
|
||||
Create a bank account
|
||||
---------------------
|
||||
|
||||
@@ -191,4 +193,3 @@ Payments` tab. To display the outstanding accounts column, click on the toggle b
|
||||
bank/reconciliation
|
||||
bank/reconciliation_models
|
||||
bank/foreign_currency
|
||||
bank/cash_register
|
||||
|
||||
@@ -1,56 +0,0 @@
|
||||
=============
|
||||
Cash register
|
||||
=============
|
||||
|
||||
The cash register is a journal to register receivings and payments transactions.
|
||||
It calculates the total money in and out, computing the total balance.
|
||||
|
||||
Configuration
|
||||
=============
|
||||
|
||||
.. image:: cash_register/journal.png
|
||||
:align: center
|
||||
|
||||
1. Configure the Cash journal in :menuselection:`Accounting --> Configuration -->
|
||||
Journals`.
|
||||
|
||||
2. In the tab Journal Entries, the Default Debit and Credit Account can be
|
||||
configured as well as the currency of the journal
|
||||
|
||||
Usage
|
||||
=====
|
||||
|
||||
How to register cash payments?
|
||||
------------------------------
|
||||
|
||||
To register a cash payment specific to another customer, you should follow
|
||||
these steps:
|
||||
|
||||
1. Go to :menuselection:`Accounting --> Dashboard --> Cash --> Register
|
||||
Transactions`
|
||||
|
||||
2. Fill in the start and ending balance
|
||||
|
||||
3. Register the transactions, specifying the customers linked to the transaction
|
||||
|
||||
Put money in
|
||||
------------
|
||||
|
||||
Put money in is used to placed your cash manually before starting your
|
||||
transactions. From the Register Transactions window, go to :menuselection:`More
|
||||
--> Put money in`
|
||||
|
||||
.. image:: cash_register/put-money-in.png
|
||||
:align: center
|
||||
|
||||
Take money out
|
||||
--------------
|
||||
|
||||
Take money out is used to collect/get yor your cash manually after
|
||||
ending all your transactions. From the Register Transaction windows, go to :menuselection:`More
|
||||
--> Take money out`
|
||||
|
||||
.. image:: cash_register/put-money-out.png
|
||||
:align: center
|
||||
|
||||
The transactions will be added to the current cash payment registration.
|
||||
|
Before Width: | Height: | Size: 5.9 KiB |
|
Before Width: | Height: | Size: 6.0 KiB |
|
Before Width: | Height: | Size: 6.9 KiB |
@@ -4,8 +4,8 @@
|
||||
Get started
|
||||
===========
|
||||
|
||||
When you first open your Odoo Accounting app, the *Accounting Overview* page welcomes you with a
|
||||
step-by-step onboarding banner, a wizard that helps you get started. This onboarding banner is
|
||||
When you first open your Odoo Accounting app, the :guilabel:`Accounting Dashboard` welcomes you with
|
||||
a step-by-step onboarding banner, a wizard that helps you get started. This onboarding banner is
|
||||
displayed until you choose to close it.
|
||||
|
||||
The settings visible in the onboarding banner can still be modified later by going to
|
||||
@@ -22,69 +22,22 @@ Accounting onboarding banner
|
||||
|
||||
The step-by-step Accounting onboarding banner is composed of four steps:
|
||||
|
||||
.. image:: get_started/setup_accounting_onboarding.png
|
||||
.. image:: get_started/setup-accounting-onboarding.png
|
||||
:alt: Step-by-step onboarding banner in Odoo Accounting
|
||||
|
||||
#. :ref:`accounting-setup-company`
|
||||
#. :ref:`accounting-setup-bank`
|
||||
#. :ref:`accounting-setup-periods`
|
||||
#. :ref:`accounting-setup-bank`
|
||||
#. :ref:`accounting-setup-taxes`
|
||||
#. :ref:`accounting-setup-chart`
|
||||
|
||||
.. _accounting-setup-company:
|
||||
|
||||
Company Data
|
||||
------------
|
||||
|
||||
This menu allows you to add your company’s details such as the name, address, logo, website, phone
|
||||
number, email address, and Tax ID, or VAT number. These details are then displayed on your documents,
|
||||
such as on invoices.
|
||||
|
||||
.. image:: get_started/setup_company.png
|
||||
:alt: Add your company's details in Odoo Accounting and Odoo Invoicing
|
||||
|
||||
.. note::
|
||||
You can also change these settings by going to :menuselection:`Settings --> General Settings -->
|
||||
Settings --> Companies` and clicking on **Update Info**.
|
||||
|
||||
.. _accounting-setup-bank:
|
||||
|
||||
Bank Account
|
||||
------------
|
||||
|
||||
Connect your bank account to your database and have your bank statements synced automatically. To do
|
||||
so, find your bank in the list, click on *Connect*, and follow the instructions on-screen.
|
||||
|
||||
.. note::
|
||||
:doc:`Click here <bank/bank_synchronization>` for more information about this feature.
|
||||
|
||||
If your Bank Institution can’t be synchronized automatically, or if you prefer not to sync it with
|
||||
your database, you may also configure your bank account manually by clicking on *Create it*, and
|
||||
filling out the form.
|
||||
|
||||
- **Name**: the bank account's name, as displayed on Odoo.
|
||||
- **Account Number**: your bank account number (IBAN in Europe).
|
||||
- **Bank**: click on *Create and Edit* to configure the bank's details. Add the bank institution's
|
||||
name and its Identifier Code (BIC or SWIFT).
|
||||
- **Code**: this code is your Journal's *Short Code*, as displayed on Odoo. By default, Odoo creates
|
||||
a new Journal with this Short Code.
|
||||
- **Journal**: This field is displayed if you have an existing Bank Journal that is not linked yet
|
||||
to a bank account. If so, then select the *Journal* you want to use to record the financial
|
||||
transactions linked to this bank account or create a new one by clicking on *Create and Edit*.
|
||||
|
||||
.. note::
|
||||
- You can add as many bank accounts as needed with this tool by going to :menuselection:`Accounting
|
||||
--> Configuration`, and clicking on *Add a Bank Account*.
|
||||
- :doc:`Click here <bank>` for more information about Bank
|
||||
Accounts.
|
||||
|
||||
.. _accounting-setup-periods:
|
||||
|
||||
Accounting Periods
|
||||
------------------
|
||||
|
||||
Define here your **Fiscal Years**’ opening and closing dates, which are used to generate reports
|
||||
automatically, and your **Tax Return Periodicity**, along with a reminder to never miss a tax return
|
||||
deadline.
|
||||
Define the **Fiscal Years**’ opening and closing dates, which are used to generate reports
|
||||
automatically, and set your **Tax Return Periodicity**, along with a reminder to never miss a tax
|
||||
return deadline.
|
||||
|
||||
By default, the opening date is set on the 1st of January and the closing date on the 31st of
|
||||
December, as this is the most common use.
|
||||
@@ -93,6 +46,49 @@ December, as this is the most common use.
|
||||
You can also change these settings by going to :menuselection:`Accounting --> Configuration -->
|
||||
Settings --> Fiscal Periods` and updating the values.
|
||||
|
||||
.. _accounting-setup-bank:
|
||||
|
||||
Bank Account
|
||||
------------
|
||||
|
||||
Connect your bank account to your database and have your bank statements synced automatically. To do
|
||||
so, find your bank in the list, click :guilabel:`Connect`, and follow the instructions on-screen.
|
||||
|
||||
.. note::
|
||||
:doc:`Click here <bank/bank_synchronization>` for more information about this feature.
|
||||
|
||||
If your Bank Institution can’t be synchronized automatically, or if you prefer not to sync it with
|
||||
your database, you can also configure your bank account manually by typing its name, clicking
|
||||
:guilabel:`Create your Bank Account`, and filling out the form.
|
||||
|
||||
- :guilabel:`Name`: the bank account's name, as displayed in Odoo.
|
||||
- :guilabel:`Account Number`: your bank account number (IBAN in Europe).
|
||||
- :guilabel:`Bank`: click :guilabel:`Create and edit` to configure the bank's details. Add the
|
||||
bank institution's :guilabel:`Name` and its :guilabel:`Identifier Code` (BIC or SWIFT).
|
||||
- :guilabel:`Code`: this code is your Journal's :guilabel:`Short Code`, as displayed in Odoo.
|
||||
By default, Odoo creates a new Journal with this short code.
|
||||
- :guilabel:`Journal`: This field is displayed if you have an existing bank journal that is not
|
||||
linked yet to a bank account. If so, then select the :guilabel:`Journal` you want to use to record
|
||||
the financial transactions linked to this bank account or create a new one by clicking
|
||||
:guilabel:`Create and Edit`.
|
||||
|
||||
.. note::
|
||||
- You can add as many bank accounts as needed with this tool by going to
|
||||
:menuselection:`Accounting --> Configuration --> Add a Bank Account`.
|
||||
- :doc:`Click here <bank>` for more information about Bank Accounts.
|
||||
|
||||
.. _accounting-setup-taxes:
|
||||
|
||||
Taxes
|
||||
-----
|
||||
|
||||
This menu allows you to create new taxes, (de)activate, or modify existing taxes. Depending on the
|
||||
:doc:`localization package <../fiscal_localizations>` installed on your database, taxes required for
|
||||
your country are already configured.
|
||||
|
||||
.. note::
|
||||
:doc:`Click here <taxes>` for more information about taxes.
|
||||
|
||||
.. _accounting-setup-chart:
|
||||
|
||||
Chart of Accounts
|
||||
@@ -102,20 +98,20 @@ With this menu, you can add accounts to your **Chart of Accounts** and indicate
|
||||
opening balances.
|
||||
|
||||
Basic settings are displayed on this page to help you review your Chart of Accounts. To access all
|
||||
the settings of an account, click on the *double arrow button* at the end of the line.
|
||||
the settings of an account, click on the :guilabel:`Setup` button at the end of the line.
|
||||
|
||||
.. image:: get_started/setup_chart_of_accounts.png
|
||||
:alt: Setup of the Chart of Accounts and their opening balances in Odoo Accounting
|
||||
|
||||
.. note::
|
||||
:doc:`Click here <get_started/chart_of_accounts>` for more information on how to configure your Chart of
|
||||
Accounts.
|
||||
:doc:`Click here <get_started/chart_of_accounts>` for more information on how to configure your
|
||||
Chart of Accounts.
|
||||
|
||||
Invoicing onboarding banner
|
||||
===========================
|
||||
|
||||
There is another step-by-step onboarding banner that helps you take advantage of your Odoo Invoicing
|
||||
and Accounting apps. The *Invoicing onboarding banner* is the one that welcomes you if you use the
|
||||
and Accounting apps. The Invoicing onboarding banner is the one that welcomes you if you use the
|
||||
Invoicing app rather than the Accounting app.
|
||||
|
||||
If you have Odoo Accounting installed on your database, you can reach it by going to
|
||||
@@ -123,65 +119,67 @@ If you have Odoo Accounting installed on your database, you can reach it by goin
|
||||
|
||||
The Invoicing onboarding banner is composed of four main steps:
|
||||
|
||||
.. image:: get_started/setup_invoicing_onboarding.png
|
||||
.. image:: get_started/setup-invoicing-onboarding.png
|
||||
:alt: Step-by-step onboarding banner in Odoo Invoicing
|
||||
|
||||
#. :ref:`invoicing-setup-company`
|
||||
#. :ref:`invoicing-setup-bank`
|
||||
#. :ref:`invoicing-setup-layout`
|
||||
#. :ref:`invoicing-setup-payment`
|
||||
#. :ref:`invoicing-setup-sample`
|
||||
#. :ref:`invoicing-setup-invoice`
|
||||
|
||||
.. _invoicing-setup-company:
|
||||
|
||||
Company Data
|
||||
------------
|
||||
|
||||
This form is the same as :ref:`the one presented in the Accounting onboarding banner
|
||||
<accounting-setup-company>`.
|
||||
This form allows you to add your company’s details, such as the name, address, logo, website, phone
|
||||
number, email address, and Tax ID or VAT number. These details are then displayed on your
|
||||
documents, such as invoices.
|
||||
|
||||
.. image:: get_started/setup_company.png
|
||||
:alt: Add your company's details in Odoo Accounting and Odoo Invoicing
|
||||
|
||||
.. note::
|
||||
You can also change the company's details by going to :menuselection:`Settings --> General
|
||||
Settings`, scrolling down to the :guilabel:`Companies` section, and :guilabel:`Update Info`.
|
||||
|
||||
.. _invoicing-setup-bank:
|
||||
|
||||
Bank Account
|
||||
------------
|
||||
|
||||
Use this button to create and link a bank account in Odoo. To add additional bank accounts, go to
|
||||
:guilabel:`Invoicing --> Configuration --> Add a Bank Account` and :ref:`configure the fields
|
||||
<bank_accounts/create>`.
|
||||
|
||||
.. tip::
|
||||
:doc:`Synchronize <bank/bank_synchronization>` your bank account(s) with your Odoo database to
|
||||
automatically update your bank transactions.
|
||||
|
||||
.. _invoicing-setup-layout:
|
||||
|
||||
Invoice Layout
|
||||
--------------
|
||||
|
||||
With this tool, you can design the appearance of your documents by selecting which layout template,
|
||||
paper format, colors, font, and logo you want to use.
|
||||
Use this button to customize the :ref:`default invoice layout <studio/pdf-reports/default-layout>`.
|
||||
|
||||
You can also add your *Company Tagline* and the content of the documents’ *footer*. Note that Odoo
|
||||
automatically adds the company's phone number, email, website URL, and Tax ID (or VAT number) to the
|
||||
footer, according to the values you previously configured in the :ref:`Company Data
|
||||
<accounting-setup-company>`.
|
||||
.. note::
|
||||
You can also change the invoice layout by going to :menuselection:`Settings --> General
|
||||
Settings`, scrolling down to the :guilabel:`Companies` section, and clicking :guilabel:`Configure
|
||||
Document Layout`.
|
||||
|
||||
.. image:: get_started/setup_document_layout.png
|
||||
:alt: Document layout configuration in Odoo Invoicing
|
||||
.. _invoicing-setup-invoice:
|
||||
|
||||
Invoice Creation
|
||||
----------------
|
||||
|
||||
This button takes you to the invoice creation view, where you can create your first invoice.
|
||||
|
||||
.. tip::
|
||||
Add your **bank account number** and a link to your **General Terms & Condition** in the footer.
|
||||
This way, your contacts can find the full content of your GT&C online without having to print
|
||||
them on the invoices you issue.
|
||||
|
||||
.. note::
|
||||
These settings can also be modified by going to :menuselection:`Settings --> General Settings`,
|
||||
under the *Business Documents* section.
|
||||
|
||||
.. _invoicing-setup-payment:
|
||||
|
||||
Payment Method
|
||||
--------------
|
||||
|
||||
This menu helps you configure the payment methods with which your customers can pay you.
|
||||
|
||||
.. important::
|
||||
Configuring a *Payment Provider* with this tool also activates the *Invoice Online Payment*
|
||||
option automatically. With this, users can directly pay online, from their Customer Portal.
|
||||
|
||||
.. _invoicing-setup-sample:
|
||||
|
||||
Sample Invoice
|
||||
--------------
|
||||
|
||||
Send yourself a sample invoice by email to make sure everything is correctly configured.
|
||||
|
||||
.. seealso::
|
||||
* :doc:`bank`
|
||||
* :doc:`get_started/chart_of_accounts`
|
||||
|
||||
@@ -24,12 +24,14 @@ to reflect the change in inventory valuation. However, Odoo does **not** automat
|
||||
valuation <inventory/avg_price/leaving_inventory>`.
|
||||
|
||||
.. note::
|
||||
This document addresses a specific use case for theoretical purposes. Navigate :ref:`here
|
||||
<inventory/management/inventory_valuation_config>` for instructions on how to set up and use
|
||||
|AVCO| in Odoo.
|
||||
This document addresses a specific use case for theoretical purposes. For instructions on how to
|
||||
set up and use |AVCO|, refer to the :doc:`inventory valuation configuration
|
||||
<../../../inventory_and_mrp/inventory/product_management/inventory_valuation/inventory_valuation_config>`
|
||||
doc.
|
||||
|
||||
.. seealso::
|
||||
- :ref:`Using inventory valuation <inventory/reporting/using_inventory_val>`
|
||||
- :doc:`Using inventory valuation
|
||||
<../../../inventory_and_mrp/inventory/product_management/inventory_valuation/using_inventory_valuation>`
|
||||
- :ref:`Other inventory valuation methods <inventory/inventory_valuation_config/costing_methods>`
|
||||
|
||||
Configuration
|
||||
@@ -41,7 +43,8 @@ product category page, set :guilabel:`Costing Method` to `Average Cost (AVCO)` a
|
||||
:guilabel:`Inventory Valuation` to `Automated`.
|
||||
|
||||
.. seealso::
|
||||
:ref:`Inventory valuation configuration <inventory/management/inventory_valuation_config>`
|
||||
:doc:`Inventory valuation configuration
|
||||
<../../../inventory_and_mrp/inventory/product_management/inventory_valuation/inventory_valuation_config>`
|
||||
|
||||
Using average cost valuation
|
||||
============================
|
||||
|
||||
|
After Width: | Height: | Size: 129 KiB |
|
After Width: | Height: | Size: 167 KiB |
|
Before Width: | Height: | Size: 57 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 71 KiB |
@@ -7,18 +7,20 @@ Payments
|
||||
In Odoo, payments can either be automatically linked to an invoice or bill or be stand-alone records
|
||||
for use at a later date:
|
||||
|
||||
- If a payment is **linked to an invoice or bill**, it reduces/settles the amount due of the
|
||||
invoice. You can have multiple payments related to the same invoice.
|
||||
- If a payment is **linked to an invoice or bill**, it reduces/settles the amount due on the
|
||||
invoice. Multiple payments on the same invoice are possible.
|
||||
|
||||
- If a payment is **not linked to an invoice or bill**, the customer has an outstanding credit with
|
||||
your company, or your company has an outstanding debit with a vendor. You can use those
|
||||
outstanding amounts to reduce/settle unpaid invoices/bills.
|
||||
the company, or the company has an outstanding debit with a vendor. Those outstanding amounts
|
||||
reduce/settle unpaid invoices/bills.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`Internal transfers <payments/internal_transfers>`
|
||||
- :doc:`bank/reconciliation`
|
||||
- `Odoo Tutorials: Bank Configuration
|
||||
<https://www.odoo.com/slides/slide/bank-configuration-1880>`_
|
||||
<https://www.odoo.com/slides/slide/bank-configuration-6832>`_
|
||||
|
||||
.. _accounting/payments/from-invoice-bill:
|
||||
|
||||
Registering payment from an invoice or bill
|
||||
===========================================
|
||||
@@ -27,11 +29,12 @@ When clicking :guilabel:`Register payment` in a customer invoice or vendor bill,
|
||||
journal entry and changes the amount due according to the payment amount. The counterpart is
|
||||
reflected in an :ref:`outstanding <bank/outstanding-accounts>` **receipts** or **payments** account.
|
||||
At this point, the customer invoice or vendor bill is marked as :guilabel:`In payment`. Then, when
|
||||
the outstanding account is reconciled with a bank statement line, the invoice or vendor bill changes
|
||||
to the :guilabel:`Paid` status.
|
||||
the outstanding account is reconciled with a bank transaction line, the invoice or vendor bill
|
||||
changes to the :guilabel:`Paid` status.
|
||||
|
||||
The information icon near the payment line displays more information about the payment. You can
|
||||
access additional information, such as the related journal, by clicking :guilabel:`View`.
|
||||
The :icon:`fa-info-circle` information icon next to the payment line displays more
|
||||
information about the payment. To access additional information, such as the related journal, click
|
||||
:guilabel:`View`.
|
||||
|
||||
.. image:: payments/information-icon.png
|
||||
:alt: See detailed information of a payment.
|
||||
@@ -39,65 +42,89 @@ access additional information, such as the related journal, by clicking :guilabe
|
||||
.. note::
|
||||
- The customer invoice or vendor bill must be in the :guilabel:`Posted` status to register the
|
||||
payment.
|
||||
- If you unreconcile a payment, it still appears in your books but is no longer linked to the
|
||||
- If a payment is unreconciled, it still appears in the books but is no longer linked to the
|
||||
invoice.
|
||||
- If you (un)reconcile a payment in a different currency, a journal entry is automatically
|
||||
- If a payment is (un)reconciled in a different currency, a journal entry is automatically
|
||||
created to post the currency exchange gains/losses (reversal) amount.
|
||||
- If you (un)reconcile a payment and an invoice having cash basis taxes, a journal entry is
|
||||
automatically created to post the cash basis tax (reversal) amount.
|
||||
- If a payment is (un)reconciled and an invoice with cash-basis taxes, a journal entry is
|
||||
automatically created to post the cash-basis tax (reversal) amount.
|
||||
|
||||
.. tip::
|
||||
- If your main bank account is set as an :ref:`outstanding account
|
||||
<bank/outstanding-accounts>`, and the payment is registered in Odoo (not through a related
|
||||
bank statement), invoices and bills are directly registered as :guilabel:`Paid`.
|
||||
If the main bank account is set as an :ref:`outstanding account
|
||||
<bank/outstanding-accounts>`, and the payment is registered in Odoo (not through a related
|
||||
bank transaction), invoices and bills are directly registered as :guilabel:`Paid`.
|
||||
|
||||
.. _accounting/payments/not-tied:
|
||||
|
||||
Registering payments not tied to an invoice or bill
|
||||
===================================================
|
||||
|
||||
When a new payment is registered via :menuselection:`Customers / Vendors --> Payments` menu, it is
|
||||
not directly linked to an invoice or bill. Instead, the account receivable or the account payable is
|
||||
When a new payment is registered via :menuselection:`Customers / Vendors --> Payments`, it is not
|
||||
directly linked to an invoice or bill. Instead, the account receivable or the account payable is
|
||||
matched with the **outstanding account** until it is manually matched with its related invoice or
|
||||
bill.
|
||||
|
||||
.. _accounting/payments/matching-invoices-bills:
|
||||
|
||||
Matching invoices and bills with payments
|
||||
-----------------------------------------
|
||||
|
||||
A blue banner appears when you validate a new invoice/bill and an **outstanding payment** exists for
|
||||
this specific customer or vendor. It can easily be matched from the invoice or bill by clicking
|
||||
:guilabel:`ADD` under :guilabel:`Outstanding Credits` or :guilabel:`Outstanding Debits`.
|
||||
A blue banner appears when validating a new invoice/bill and an **outstanding payment** exists for
|
||||
this specific customer or vendor. To match it with the invoice or bill, click :guilabel:`ADD`
|
||||
under :guilabel:`Outstanding Credits` or :guilabel:`Outstanding Debits`.
|
||||
|
||||
.. image:: payments/add-option.png
|
||||
:alt: Shows the ADD option to reconcile an invoice or a bill with a payment.
|
||||
|
||||
The invoice or bill is now marked as :guilabel:`In payment` until it is reconciled with its
|
||||
corresponding bank statement.
|
||||
corresponding bank transaction.
|
||||
|
||||
.. _payments/batch-payments:
|
||||
.. _accounting/payments/group-payments:
|
||||
|
||||
Batch payment
|
||||
-------------
|
||||
Group payments
|
||||
--------------
|
||||
|
||||
Batch payments allow you to group different payments to ease :doc:`reconciliation
|
||||
<bank/reconciliation>`. They are also useful when you deposit :doc:`checks <payments/checks>` to the
|
||||
bank or for :doc:`SEPA payments <payments/pay_sepa>`. To do so, go to :menuselection:`Accounting -->
|
||||
Customers --> Batch Payments` or :menuselection:`Accounting --> Vendors --> Batch Payments`. In the
|
||||
list view of payments, you can select and group several payments in a batch by clicking
|
||||
:menuselection:`Action --> Create Batch Payment`.
|
||||
Group payments allow combining outgoing and incoming payments from the same contact into a single
|
||||
payment to simplify the process and improve payment usability. To register a group payment:
|
||||
|
||||
#. Go to :menuselection:`Accounting --> Customers --> Invoices/Credit Notes` or
|
||||
:menuselection:`Accounting --> Vendors --> Bills/Refunds`.
|
||||
#. Select the relevant invoices/credit notes or bills/refunds linked to a specific contact.
|
||||
#. Click the :icon:`fa-cog` (:guilabel:`Action menu`) icon and select :guilabel:`Register Payment`.
|
||||
#. In the :guilabel:`Register Payment` window, select the :guilabel:`Journal`, the
|
||||
:guilabel:`Payment Method`, and the :guilabel:`Payment Date`.
|
||||
#. Enable the :guilabel:`Group Payments` option and click :guilabel:`Create payment`.
|
||||
|
||||
The invoices or bills are now marked as :guilabel:`In payment` until they are reconciled with the
|
||||
corresponding bank transactions. The credit notes or refunds are marked as :guilabel:`Paid`.
|
||||
|
||||
.. _accounting/payments/batch-payments:
|
||||
|
||||
Batch payments
|
||||
--------------
|
||||
|
||||
Batch payments allow grouping payments from multiple contacts to ease
|
||||
:doc:`reconciliation <bank/reconciliation>`. They are also useful when depositing :doc:`checks
|
||||
<payments/checks>` to the bank or for :doc:`SEPA payments <payments/pay_sepa>`. To do so, go to
|
||||
:menuselection:`Accounting --> Customers --> Batch Payments` or :menuselection:`Accounting -->
|
||||
Vendors --> Batch Payments`. In the list view of payments, to group several payments in a
|
||||
batch, select them and click :menuselection:`Action --> Create Batch Payment`.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`payments/batch`
|
||||
- :doc:`payments/batch_sdd`
|
||||
|
||||
.. _payments/matching:
|
||||
.. _accounting/payments/matching:
|
||||
|
||||
Payments matching
|
||||
-----------------
|
||||
|
||||
The :guilabel:`Payments matching` tool opens all unreconciled customer invoices or vendor bills and
|
||||
allows you to process them individually, matching all payments and invoices in one place. You can
|
||||
reach this tool from the :menuselection:`Accounting Dashboard --> Customer Invoices / Vendor Bills`,
|
||||
click the drop-down menu button (:guilabel:`⋮`), and select :guilabel:`Payments Matching`, or go to
|
||||
:menuselection:`Accounting --> Accounting --> Reconciliation`.
|
||||
allows them to be processed individually, matching all payments and invoices in one place. Go to the
|
||||
:guilabel:`Accounting Dashboard`, click the :icon:`fa-ellipsis-v` (:guilabel:`dropdown menu`)
|
||||
button from the :guilabel:`Customer Invoices` or :guilabel:`Vendor Bills` journals, and select
|
||||
:guilabel:`Payments Matching`, or go to :menuselection:`Accounting --> Accounting -->
|
||||
Reconciliation`.
|
||||
|
||||
.. image:: payments/payments-journal.png
|
||||
:alt: Payments matching menu in the drop-down menu.
|
||||
@@ -105,39 +132,49 @@ click the drop-down menu button (:guilabel:`⋮`), and select :guilabel:`Payment
|
||||
.. note::
|
||||
During the :doc:`reconciliation <bank/reconciliation>`, if the sum of the debits and credits does
|
||||
not match, there is a remaining balance. This either needs to be reconciled at a later date or
|
||||
needs to be written off directly.
|
||||
written off directly.
|
||||
|
||||
.. _accounting/payments/batch-payments-matching:
|
||||
|
||||
Batch payments matching
|
||||
-----------------------
|
||||
|
||||
You can use the batch reconciliation feature to reconcile several outstanding payments or invoices
|
||||
Use the batch reconciliation feature to reconcile several outstanding payments or invoices
|
||||
simultaneously for a specific customer or vendor. Go to :menuselection:`Accounting --> Reporting -->
|
||||
Aged Receivable / Aged Payable`. You can see all transactions that have not been reconciled yet for
|
||||
that partner, and when you select a customer or vendor, the :guilabel:`Reconcile` option is
|
||||
Aged Receivable / Aged Payable`. All transactions that have not yet been reconciled for that
|
||||
contact are visible, and when a customer or vendor is selected, the :guilabel:`Reconcile` option is
|
||||
displayed.
|
||||
|
||||
.. image:: payments/reconcile-option.png
|
||||
:alt: See the reconcile option.
|
||||
|
||||
.. _accounting/payments/partial-payment:
|
||||
|
||||
Registering a partial payment
|
||||
=============================
|
||||
|
||||
To register a **partial payment**, click :guilabel:`Register payment` from the related invoice or
|
||||
bill, and enter the amount received or paid. Upon entering the amount, a prompt appears to decide
|
||||
whether to :guilabel:`Keep open` the invoice or bill, or :guilabel:`Mark as fully paid`. Select
|
||||
:guilabel:`Keep open` and click :guilabel:`Create payment`. The invoice or bill is now marked as
|
||||
:guilabel:`Partial`. Select :guilabel:`Mark as fully paid` if you wish to settle the invoice or bill
|
||||
with a difference in the amount.
|
||||
To register a partial payment, click on :guilabel:`Register Payment` from the related invoice or
|
||||
bill. In the case of a partial payment (when the :guilabel:`Amount` paid is less than the total
|
||||
remaining amount on the invoice or the bill), the :guilabel:`Payment Difference` field displays the
|
||||
outstanding balance. There are two options:
|
||||
|
||||
.. image:: payments/payment-difference.png
|
||||
:alt: Partial payment of an invoice or bill.
|
||||
- :guilabel:`Keep open`: Keep the invoice or the bill open and mark it with a :guilabel:`Partial`
|
||||
banner;
|
||||
- :guilabel:`Mark as fully paid`: Select an account in the :guilabel:`Post Difference In` field and
|
||||
change the :guilabel:`Label` if needed. A journal entry will be created to balance the accounts
|
||||
payable or receivable with the selected account.
|
||||
|
||||
Reconciling payments with bank statements
|
||||
=========================================
|
||||
.. image:: payments/partial-payment.png
|
||||
:alt: register a partial payment
|
||||
|
||||
.. _accounting/payments/reconciling-payments:
|
||||
|
||||
Reconciling payments with bank transactions
|
||||
===========================================
|
||||
|
||||
Once a payment has been registered, the status of the invoice or bill is :guilabel:`In payment`. The
|
||||
next step is :doc:`reconciling <bank/reconciliation>` it with the related bank statement line to
|
||||
have the transaction finalized and the invoice or bill marked as :guilabel:`Paid`.
|
||||
next step is :doc:`reconciling <bank/reconciliation>` it with the related bank transaction line to
|
||||
finalize the payment workflow and mark the invoice or bill as :guilabel:`Paid`.
|
||||
|
||||
.. toctree::
|
||||
:titlesonly:
|
||||
|
||||
|
After Width: | Height: | Size: 14 KiB |
@@ -30,8 +30,9 @@ Non-EEA territories:
|
||||
- Jersey;
|
||||
- Isle of Man.
|
||||
|
||||
When paying a bill in Odoo, you can select SEPA mandates as a payment option. At the day's end,
|
||||
you can generate the SEPA file containing all bank wire transfers and send it to the bank.
|
||||
When paying a bill in Odoo, you can select SEPA mandates as a payment option. At the end of the day,
|
||||
you can generate the SEPA file containing all bank wire transfers and upload it to your online
|
||||
banking interface to process the payments.
|
||||
|
||||
By default, the file follows the SEPA Credit Transfer **'pain.001.001.03'** specifications. This is
|
||||
a well-defined standard among banks. However, for Swiss and German companies, other formats are used
|
||||
@@ -69,7 +70,7 @@ the BIC (bank identifier code) in the :guilabel:`Journal Entries` tab.
|
||||
Registering payments
|
||||
--------------------
|
||||
|
||||
You can register and vendor payments made with SEPA. To do so, go to :menuselection:`Accounting -->
|
||||
You can register any vendor payments made with SEPA. To do so, go to :menuselection:`Accounting -->
|
||||
Vendors --> Payments`. When creating your payment, select :guilabel:`SEPA Credit Transfer` as the
|
||||
:guilabel:`Payment Method`.
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 4.1 KiB |
@@ -4,30 +4,31 @@
|
||||
Reporting
|
||||
=========
|
||||
|
||||
Main reports available
|
||||
======================
|
||||
|
||||
Odoo includes **generic** and **dynamic** reports available for all countries, regardless of the
|
||||
:doc:`localization package <../../finance/fiscal_localizations>` installed:
|
||||
|
||||
- **Balance Sheet**
|
||||
- **Profit and Loss**
|
||||
- **Executive Summary**
|
||||
- **General Ledger**
|
||||
- **Aged Payable**
|
||||
- **Aged Receivable**
|
||||
- **Cash Flow Statement**
|
||||
- **Tax Report**
|
||||
- :ref:`reporting/balance-sheet`
|
||||
- :ref:`reporting/profit-and-loss`
|
||||
- :ref:`reporting/executive-summary`
|
||||
- :ref:`reporting/general-ledger`
|
||||
- :ref:`reporting/aged-receivable`
|
||||
- :ref:`reporting/aged-payable`
|
||||
- :ref:`reporting/cash-flow-statement`
|
||||
- :ref:`reporting/tax-report`
|
||||
|
||||
Reports can be **annotated, printed, and drilled down** to see details (payments, invoices,
|
||||
journal items, etc.) by clicking the **down** arrow. Reports can also be exported to **PDF** or
|
||||
**XLSX** format by clicking :guilabel:`PDF` or :guilabel:`XLSX` at the top of the page.
|
||||
To expand the lines of a report and view its details, click the :icon:`fa-caret-right`
|
||||
(:guilabel:`right arrow`) on the left. Then click the :icon:`fa-caret-down` (:guilabel:`down arrow`)
|
||||
to the right of the account, journal entry, payment, invoice, etc. to :guilabel:`Annotate` and view
|
||||
the details.
|
||||
|
||||
.. image:: reporting/reporting-annotate.png
|
||||
:alt: Annotate reports.
|
||||
|
||||
You can compare values across periods by using the :guilabel:`Comparison` menu and selecting the
|
||||
periods you want to compare.
|
||||
To export reports in PDF or XLSX format, click :guilabel:`PDF` or :guilabel:`XLSX` at the top of the
|
||||
page.
|
||||
|
||||
To compare values across periods, click the :guilabel:`Comparison` menu and select the periods you
|
||||
want to compare.
|
||||
|
||||
.. image:: reporting/reporting-comparison.png
|
||||
:alt: Comparison menu to compare time periods.
|
||||
@@ -35,119 +36,97 @@ periods you want to compare.
|
||||
.. _reporting/balance-sheet:
|
||||
|
||||
Balance Sheet
|
||||
-------------
|
||||
=============
|
||||
|
||||
The **Balance Sheet** shows a snapshot of your organization's assets, liabilities, and equity at a
|
||||
particular date.
|
||||
|
||||
.. image:: reporting/reporting-balance-sheet.png
|
||||
:alt: Balance sheet report of Odoo.
|
||||
The :guilabel:`Balance Sheet` shows a snapshot of your organization's assets, liabilities, and
|
||||
equity at a particular date.
|
||||
|
||||
.. _reporting/profit-and-loss:
|
||||
|
||||
Profit and Loss
|
||||
---------------
|
||||
===============
|
||||
|
||||
The **Profit and Loss** report (or **Income Statement**) shows your company's net income by
|
||||
The :guilabel:`Profit and Loss` report (or **Income Statement**) shows your company's net income by
|
||||
deducting expenses from revenue for the reporting period.
|
||||
|
||||
.. image:: reporting/reporting-profit-and-loss.png
|
||||
:alt: Profit and Loss report of Odoo
|
||||
|
||||
.. _reporting/executive-summary:
|
||||
|
||||
Executive Summary
|
||||
-----------------
|
||||
=================
|
||||
|
||||
The **Executive Summary** allows a quick look at all the important figures to run your company.
|
||||
The :guilabel:`Executive Summary` provides an overview of all the important figures for overseeing
|
||||
your company's performance.
|
||||
|
||||
In basic terms, this is what each item in the following section reports:
|
||||
It includes the following items:
|
||||
|
||||
- **Performance:**
|
||||
- **Gross profit margin:**
|
||||
The contribution of all sales made by your business **minus** any direct costs needed to
|
||||
- :guilabel:`Performance`:
|
||||
- :guilabel:`Gross profit margin`:
|
||||
The contribution of all sales your business makes **minus** any direct costs needed to
|
||||
make those sales (labor, materials, etc.).
|
||||
- **Net profit margin:**
|
||||
- :guilabel:`Net profit margin`:
|
||||
The contribution of all sales made by your business **minus** any direct costs needed to
|
||||
make those sales *and* fixed overheads your company has (electricity, rent, taxes
|
||||
to be paid as a result of those sales, etc.).
|
||||
- **Return on investment (per annum):**
|
||||
The ratio of net profit made to the amount of assets the company used to make those profits.
|
||||
- **Position:**
|
||||
- **Average debtors days:**
|
||||
- :guilabel:`Return on investment (per annum)`:
|
||||
The ratio of the net profit to the amount of assets the company used to make those profits.
|
||||
- :guilabel:`Position`:
|
||||
- :guilabel:`Average debtors days`:
|
||||
The average number of days it takes your customers to (fully) pay you across all your
|
||||
customer invoices.
|
||||
- **Average creditors days:**
|
||||
- :guilabel:`Average creditors days`:
|
||||
The average number of days it takes you to (fully) pay your suppliers across all your bills.
|
||||
- **Short-term cash forecast:**
|
||||
- :guilabel:`Short-term cash forecast`:
|
||||
How much cash is expected in or out of your business in the next month, i.e., the balance of
|
||||
your **Sales account** for the month **minus** the balance of your **Purchases account** for
|
||||
the month.
|
||||
- **Current assets to liabilities:**
|
||||
Also referred to as **current ratio**, this is the ratio of current assets (:dfn:`assets
|
||||
- :guilabel:`Current assets to liabilities`:
|
||||
Also referred to as the **current ratio**, this is the ratio of current assets (:dfn:`assets
|
||||
that could be turned into cash within a year`) to the current liabilities (:dfn:`liabilities
|
||||
that will be due in the next year`). It is typically used to measure a company's ability to
|
||||
service its debt.
|
||||
|
||||
.. image:: reporting/reporting-executive-summary.png
|
||||
:alt: Executive summary report in Odoo.
|
||||
|
||||
.. _reporting/general-ledger:
|
||||
|
||||
General Ledger
|
||||
--------------
|
||||
==============
|
||||
|
||||
The **General Ledger Report** shows all transactions from all accounts for a chosen date range. The
|
||||
initial summary report shows each account's totals; from here, you can view a detailed transaction
|
||||
report or any exceptions. This report helps check every transaction that occurred during a specific
|
||||
period.
|
||||
|
||||
.. image:: reporting/reporting-general-ledger.png
|
||||
:alt: General Ledger report in Odoo.
|
||||
|
||||
.. _reporting/aged-payable:
|
||||
|
||||
Aged Payable
|
||||
------------
|
||||
|
||||
Run the **Aged Payable Details** report to display information on individual bills, credit notes,
|
||||
and overpayments you owe and how long these have gone unpaid.
|
||||
|
||||
.. image:: reporting/reporting-aged-payable.png
|
||||
:alt: Aged Payable report in Odoo.
|
||||
The :guilabel:`General Ledger` report shows all transactions from all accounts for a selected date
|
||||
range. The initial summary report shows the totals for each account. To expand an account and view
|
||||
its details, click the :icon:`fa-caret-right` (:guilabel:`right arrow`) on the left.
|
||||
This report is useful for reviewing each transaction that occurred during a specific period.
|
||||
|
||||
.. _reporting/aged-receivable:
|
||||
|
||||
Aged Receivable
|
||||
---------------
|
||||
===============
|
||||
|
||||
The **Aged Receivables** report shows the sales invoices awaiting payment during a selected month
|
||||
and several months prior.
|
||||
The :guilabel:`Aged Receivable` report shows the sales invoices awaiting payment during a selected
|
||||
month and several months prior.
|
||||
|
||||
.. image:: reporting/reporting-aged-receivable.png
|
||||
:alt: Aged Receivable report in Odoo.
|
||||
.. _reporting/aged-payable:
|
||||
|
||||
Aged Payable
|
||||
============
|
||||
|
||||
The :guilabel:`Aged Payable` report displays information on individual bills, credit notes, and
|
||||
overpayments you owe and how long these have gone unpaid.
|
||||
|
||||
.. _reporting/cash-flow-statement:
|
||||
|
||||
Cash Flow Statement
|
||||
-------------------
|
||||
===================
|
||||
|
||||
The **Cash Flow Statement** shows how changes in balance sheet accounts and income affect cash and
|
||||
cash equivalents and breaks the analysis down to operating, investing, and financing activities.
|
||||
|
||||
.. image:: reporting/reporting-cash-flow-statement.png
|
||||
:alt: Cash Flow Statement report in Odoo.
|
||||
The :guilabel:`Cash Flow Statement` shows how changes in balance sheet accounts and income affect
|
||||
cash and cash equivalents and breaks the analysis down to operating, investing, and financing
|
||||
activities.
|
||||
|
||||
.. _reporting/tax-report:
|
||||
|
||||
Tax Report
|
||||
----------
|
||||
==========
|
||||
|
||||
This report allows you to see the **net** and **tax amounts** for all the taxes grouped by type
|
||||
(sale/purchase).
|
||||
|
||||
.. image:: reporting/reporting-tax-report.png
|
||||
:alt: Tax report in Odoo.
|
||||
The :guilabel:`Tax Report` shows the :guilabel:`NET` and :guilabel:`TAX` amounts for all the
|
||||
taxes grouped by type (:guilabel:`Sales`/:guilabel:`Purchases`).
|
||||
|
||||
.. toctree::
|
||||
:titlesonly:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
================
|
||||
Financial budget
|
||||
Analytic budgets
|
||||
================
|
||||
|
||||
Managing budgets is an essential part of running a business. Budgets help people become more
|
||||
|
||||
@@ -7,7 +7,7 @@ inalterable**, meaning that once an entry has been posted, it can no longer be c
|
||||
|
||||
To do so, Odoo can use the **SHA-256 algorithm** to create a unique fingerprint for each posted
|
||||
entry. This fingerprint is called a hash. The hash is generated by taking an entry's essential data
|
||||
(the values of the `date`, `journal_id`, `company_id`, `debit`, `credit`, `account_id`, and
|
||||
(the values of the `name`, `date`, `journal_id`, `company_id`, `debit`, `credit`, `account_id`, and
|
||||
`partner_id` fields), concatenating it, and inputting it to the SHA-256 hash function, which then
|
||||
outputs a fixed size (256-bit) string of characters. The hash function is deterministic (:dfn:`the
|
||||
same input always creates the same output`): any minor modification to the original data would
|
||||
|
||||
|
Before Width: | Height: | Size: 40 KiB |
|
Before Width: | Height: | Size: 60 KiB |
|
Before Width: | Height: | Size: 7.0 KiB After Width: | Height: | Size: 7.0 KiB |
|
Before Width: | Height: | Size: 40 KiB |
|
Before Width: | Height: | Size: 52 KiB |
|
Before Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 84 KiB |
|
Before Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 19 KiB |
@@ -60,10 +60,10 @@ Then, to close the fiscal year:
|
||||
<reporting/aged-receivable>` and :ref:`aged payables <reporting/aged-payable>` reports.
|
||||
- Audit all accounts, being sure to fully understand all transactions and their nature, making
|
||||
sure to include loans and fixed assets.
|
||||
- Optionally, run :ref:`payments matching <payments/matching>` to validate any open vendor bills
|
||||
and customer invoices with their payments. While this step is optional, it could assist the
|
||||
year-end closing process if all outstanding payments and invoices are reconciled, potentially
|
||||
finding errors or mistakes in the system.
|
||||
- Optionally, run :ref:`payments matching <accounting/payments/matching>` to validate any open
|
||||
vendor bills and customer invoices with their payments. While this step is optional, it could
|
||||
assist the year-end closing process if all outstanding payments and invoices are reconciled,
|
||||
potentially finding errors or mistakes in the system.
|
||||
|
||||
Next, the accountant likely verifies balance sheet items and book entries for:
|
||||
|
||||
@@ -101,8 +101,9 @@ correctly reporting a balance of zero. If that is the case, set an :guilabel:`Al
|
||||
to the last day of the fiscal year by going to :menuselection:`Accounting --> Accounting --> Lock
|
||||
Dates`.
|
||||
|
||||
.. warning::
|
||||
Setting an :guilabel:`All Users Lock Date` is **irreversible** and cannot be removed.
|
||||
.. tip::
|
||||
Install the :guilabel:`Irreversible Lock Date` (`account_lock`) module to make the :guilabel:`All
|
||||
Users Lock Date` *irreversible* once set.
|
||||
|
||||
.. note::
|
||||
A specific year-end closing entry is **optional** in order to close out the **profit and loss
|
||||
|
||||
@@ -1,74 +1,408 @@
|
||||
:show-content:
|
||||
|
||||
==================
|
||||
Avatax integration
|
||||
AvaTax integration
|
||||
==================
|
||||
|
||||
Avatax is a tax calculation provider that can be integrated in Odoo.
|
||||
Avalara's *AvaTax* is a cloud-based tax software. Integrating *AvaTax* with Odoo provides real-time
|
||||
and region-specific tax calculations when users sell, purchase, and invoice items in Odoo. *AvaTax*
|
||||
tax calculation is supported with every United Nations charted country, including inter-border
|
||||
transactions.
|
||||
|
||||
.. important::
|
||||
*AvaTax* is only available for integration with databases/companies that have locations in the
|
||||
United States and Canada. This means the fiscal position/country of a database can only be set to
|
||||
the United States or Canada. For more information, reference this documentation:
|
||||
:ref:`avatax/fiscal_country`.
|
||||
|
||||
*AvaTax* accounts for location-based tax rates for each state, county, and city. It improves
|
||||
remittance accuracy by paying close attention to laws, rules, jurisdiction boundaries, and special
|
||||
circumstances (like, tax holidays, and product exemptions). Companies who integrate with *AvaTax*
|
||||
can maintain control of tax-calculations in-house with this simple :abbr:`API (application
|
||||
programming interface)` integration.
|
||||
|
||||
.. important::
|
||||
Some limitations exist in Odoo while using *AvaTax* for tax calculation:
|
||||
|
||||
- *AvaTax* is **not** supported in Odoo's *Point of Sale* app, because a dynamic tax calculation
|
||||
model is excessive for transactions within a single delivery address, such as stores or
|
||||
restaurants.
|
||||
- *AvaTax* and Odoo use the company address and **not** the warehouse address.
|
||||
- Exercise tax is **not** supported. This includes tobacco/vape taxes, fuel taxes, and other
|
||||
specific industries.
|
||||
|
||||
.. seealso::
|
||||
Avalara's support documents: `About AvaTax
|
||||
<https://community.avalara.com/support/s/document-item?language=en_US&bundleId=dqa1657870670369_dqa1657870670369&topicId=About_AvaTax.html&_LANG=enus>`_
|
||||
|
||||
Set up on AvaTax
|
||||
================
|
||||
|
||||
To use *AvaTax*, an account with Avalara is required for the setup. If one has not been set up yet,
|
||||
connect with Avalara to purchase a license: `Avalara: Let's Talk
|
||||
<https://www.avalara.com/us/en/get-started.html>`_.
|
||||
|
||||
.. tip::
|
||||
Upon account setup, take note of the *AvaTax* :guilabel:`Account ID`. This will be needed in the
|
||||
:ref:`Odoo setup <avatax/credentials>`. In Odoo, this number is the :guilabel:`API ID`.
|
||||
|
||||
Then, `create a basic company profile
|
||||
<https://community.avalara.com/support/s/document-item?bundleId=dqa1657870670369_dqa1657870670369&topicId=Create_a_Basic_company_profile.html&_LANG=enus>`_.
|
||||
|
||||
Create basic company profile
|
||||
----------------------------
|
||||
|
||||
Collect essential business details for the next step: locations where tax is collected,
|
||||
products/services sold (and their sales locations), and customer tax exemptions, if applicable.
|
||||
Follow the Avalara documentation for creating a basic company profile:
|
||||
|
||||
#. `Add company information
|
||||
<https://community.avalara.com/support/s/document-item?bundleId=dqa1657870670369_dqa1657870670369&topicId=Add_your_company_information.html&_LANG=enus>`_.
|
||||
#. `Tell us where the company collects and pays tax
|
||||
<https://community.avalara.com/support/s/document-item?bundleId=dqa1657870670369_dqa1657870670369&topicId=Tell_us_where_you_collect_and_pay_tax.html&_LANG=enus>`_.
|
||||
#. `Verify jurisdictions and activate the company
|
||||
<https://community.avalara.com/support/s/document-item?bundleId=dqa1657870670369_dqa1657870670369&topicId=Verify_your_jurisdictions_and_activate_your_company.html&_LANG=enus>`_.
|
||||
#. `Add other company locations for location-based filing
|
||||
<https://community.avalara.com/support/s/document-item?bundleId=dqa1657870670369_dqa1657870670369&topicId=Add_other_company_locations_for_location-based_filing.html&_LANG=enus>`_.
|
||||
#. `Add a marketplace to the company profile
|
||||
<https://community.avalara.com/support/s/document-item?bundleId=dqa1657870670369_dqa1657870670369&topicId=Add_marketplace_transactions_to_your_company_profile.html&_LANG=enus>`_.
|
||||
|
||||
.. _avatax/create_avalara_credentials:
|
||||
|
||||
Connect to AvaTax
|
||||
-----------------
|
||||
|
||||
After creating the basic company profile in Avalara, connect to *AvaTax*. This step links Odoo and
|
||||
*AvaTax* bidirectionally.
|
||||
|
||||
Navigate to either Avalara's `sandbox <https://sandbox.admin.avalara.com/>`_ or `production
|
||||
<https://admin.avalara.com/>`_ environment. This will depend on which type of Avalara account the
|
||||
company would like to integrate.
|
||||
|
||||
.. seealso::
|
||||
`Sandbox vs production environments in Avalara
|
||||
<https://knowledge.avalara.com/bundle/fzc1692293626742/page/sandbox-vs-production.html>`_.
|
||||
|
||||
Log in to create the :guilabel:`License Key`. Go to :menuselection:`Settings --> License and API
|
||||
Keys`. Click :guilabel:`Generate License Key`.
|
||||
|
||||
.. note::
|
||||
A warning appears stating: `If your business app is connected to Avalara solutions, the
|
||||
connection will be broken until you update the app with the new license key. This action cannot
|
||||
be undone.`
|
||||
|
||||
Generating a new license key breaks the connection with existing business apps using the *AvaTax*
|
||||
integration. Make sure to update these apps with the new license key.
|
||||
|
||||
If this will be the first :abbr:`API (application programming interface)` integration being made
|
||||
with *AvaTax* and Odoo, then click :guilabel:`Generate license key`.
|
||||
|
||||
If this is an additional license key, ensure the previous connection can be broken. There is
|
||||
**only** one license key associated with each of the Avalara sandbox and production accounts.
|
||||
|
||||
.. important::
|
||||
Copy this key to a safe place. It is **strongly encouraged** to backup the license key for future
|
||||
reference. This key cannot be retrieved after leaving this screen.
|
||||
|
||||
Odoo configuration
|
||||
==================
|
||||
|
||||
Before using *AvaTax*, there are some additional configurations in Odoo to ensure tax calculations
|
||||
are made accurately.
|
||||
|
||||
Verify that the Odoo database contains necessary data. The country initially set up in the database
|
||||
determines the fiscal position, and aids *AvaTax* in calculating accurate tax rates.
|
||||
|
||||
.. _avatax/fiscal_country:
|
||||
|
||||
Fiscal country
|
||||
--------------
|
||||
|
||||
To set the :guilabel:`Fiscal Country`, navigate to :menuselection:`Accounting app --> Configuration
|
||||
--> Settings`.
|
||||
|
||||
.. seealso::
|
||||
:doc:`../../fiscal_localizations`
|
||||
|
||||
Under the :guilabel:`Taxes` section, set the :guilabel:`Fiscal Country` feature to :guilabel:`United
|
||||
States` or :guilabel:`Canada`. Then, click :guilabel:`Save`.
|
||||
|
||||
Company settings
|
||||
----------------
|
||||
|
||||
All companies operating under the Odoo database should have a full and complete address listed in
|
||||
the settings. Navigate to the :menuselection:`Settings app`, and under the :guilabel:`Companies`
|
||||
section, ensure there is only one company operating the Odoo database. Click :guilabel:`Update Info`
|
||||
to open a separate page to update company details.
|
||||
|
||||
If there are multiple companies operating in the database, click :guilabel:`Manage Companies` to
|
||||
load a list of companies to select from. Update company information by clicking into the specific
|
||||
company.
|
||||
|
||||
Database administrators should ensure that the :guilabel:`Street...`, :guilabel:`Street2...`,
|
||||
:guilabel:`City`, :guilabel:`State`, :guilabel:`ZIP`, and :guilabel:`Country` are all updated for
|
||||
the companies.
|
||||
|
||||
This ensures accurate tax calculations and smooth end-of-year accounting operations.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`../../../general/companies`
|
||||
- :doc:`../get_started`
|
||||
|
||||
Module installation
|
||||
-------------------
|
||||
|
||||
Next, ensure that the Odoo *AvaTax* module is installed. To do so, navigate to the
|
||||
:menuselection:`Apps application`. In the :guilabel:`Search...` bar, type in `avatax`, and press
|
||||
:kbd:`Enter`. The following results populate:
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
:widths: 25 25 50
|
||||
|
||||
* - Name
|
||||
- Technical name
|
||||
- Description
|
||||
* - :guilabel:`Avatax`
|
||||
- `account_avatax`
|
||||
- Default *AvaTax* module. This module adds the base *AvaTax* features for tax calculation.
|
||||
* - :guilabel:`Avatax for SO`
|
||||
- `account_avatax_sale`
|
||||
- Includes the information needed for tax calculation on sales orders in Odoo.
|
||||
* - :guilabel:`Avatax for Subscriptions`
|
||||
- `account_avatax_sale_subscription`
|
||||
- This module includes the features required for tax calculation on subscriptions in Odoo.
|
||||
* - :guilabel:`Account Avatax - Ecommerce`
|
||||
- `website_sale_account_avatax`
|
||||
- Includes tax calculation features for the checkout process on Odoo eCommerce.
|
||||
* - :guilabel:`Account AvaTax - Ecommerce - Delivery`
|
||||
- `website_sale_delivery_avatax`
|
||||
- Includes tax calculation features for the delivery process on Odoo eCommerce.
|
||||
|
||||
Click the :guilabel:`Install` button on the module labeled :guilabel:`Avatax`: `account_avatax`.
|
||||
Doing so installs the following modules:
|
||||
|
||||
- :guilabel:`Avatax`: `account_avatax`
|
||||
- :guilabel:`Avatax for SO`: `account_avatax_sale`
|
||||
- :guilabel:`Account Avatax - Ecommerce`: `website_sale_account_avatax`
|
||||
|
||||
Should *AvaTax* be needed for Odoo *Subscriptions*, or for delivery tax in Odoo *eCommerce*, then
|
||||
install those modules individually by clicking on :guilabel:`Install`.
|
||||
|
||||
.. _avatax/credentials:
|
||||
|
||||
Credential configuration
|
||||
========================
|
||||
Odoo AvaTax settings
|
||||
--------------------
|
||||
|
||||
To integrate Avatax with Odoo, go to :menuselection:`Accounting --> Configuration --> Settings -->
|
||||
Taxes` and add your Avatax credentials in the :guilabel:`Avatax` section.
|
||||
|
||||
.. tip::
|
||||
If you do not yet have credentials, click on :guilabel:`How to Get Credentials`.
|
||||
To integrate the *AvaTax* :abbr:`API (application programming interface)` with Odoo, go to
|
||||
:menuselection:`Accounting app --> Configuration --> Settings` section. The :guilabel:`AvaTax`
|
||||
fields in the :guilabel:`Taxes` section is where the *AvaTax* configurations are made and the
|
||||
credentials are entered in.
|
||||
|
||||
.. image:: avatax/avatax-configuration-settings.png
|
||||
:align: center
|
||||
:alt: Configure Avatax settings
|
||||
:alt: Configure AvaTax settings
|
||||
|
||||
.. _avatax/tax-mapping:
|
||||
Prerequisites
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
First, select the :guilabel:`Environment` in which the company wishes to use *AvaTax* in. It can
|
||||
either be :guilabel:`Sandbox` or :guilabel:`Production`.
|
||||
|
||||
.. seealso::
|
||||
For help determining which *AvaTax* environment to use (either :guilabel:`Production` or
|
||||
:guilabel:`Sandbox`), visit: `Sandbox vs Production environments
|
||||
<https://knowledge.avalara.com/bundle/fzc1692293626742/page/sandbox-vs-production.html>`_.
|
||||
|
||||
Credentials
|
||||
~~~~~~~~~~~
|
||||
|
||||
Now, the credentials can be entered in. The *AvaTax* :guilabel:`Account ID` should be entered in the
|
||||
:guilabel:`API ID` field, and the :guilabel:`License Key` should be entered in the :guilabel:`API
|
||||
Key` field.
|
||||
|
||||
.. important::
|
||||
The :guilabel:`Account ID` can be found by logging into the *AvaTax* portal (`sandbox
|
||||
<https://sandbox.admin.avalara.com/>`_ or `production <https://admin.avalara.com/>`_). In the
|
||||
upper-right corner, click on the initials of the user and :guilabel:`Account`. The
|
||||
:guilabel:`Account ID` is listed first.
|
||||
|
||||
To access the :guilabel:`License Key` see this documentation:
|
||||
:ref:`avatax/create_avalara_credentials`.
|
||||
|
||||
For the :guilabel:`Company Code` field, enter the Avalara company code for the company being
|
||||
configured. Avalara interprets this as `DEFAULT`, if it is not set. The :guilabel:`Company Code` can
|
||||
be accessed in the Avalara management portal.
|
||||
|
||||
First, log into the *AvaTax* portal (`sandbox <https://sandbox.admin.avalara.com/>`_ or `production
|
||||
<https://admin.avalara.com/>`_). Then, navigate to :menuselection:`Settings --> Manage Companies`.
|
||||
The :guilabel:`Company Code` value is located in the row of the :guilabel:`Company` in the
|
||||
:guilabel:`Company Code` column.
|
||||
|
||||
.. image:: avatax/company-code.png
|
||||
:align: center
|
||||
:alt: AvaTax company code highlighted on the company details page.
|
||||
|
||||
Transaction options
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
There are two transactional settings in the Odoo *AvaTax* settings that can be configured:
|
||||
:guilabel:`Use UPC` and :guilabel:`Commit Transactions`.
|
||||
|
||||
If the checkbox next to :guilabel:`Use UPC` is ticked, the transactions will use Universal Product
|
||||
Codes (UPC), instead of custom defined codes in Avalara. Consult a certified public accountant (CPA)
|
||||
for specific guidance.
|
||||
|
||||
Should the :guilabel:`Commit Transactions` checkbox be ticked, then, the transactions in the Odoo
|
||||
database will be committed for reporting in *AvaTax*.
|
||||
|
||||
Address validation
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The *Address Validation* feature ensures that the most up-to-date address by postal standards is set
|
||||
on a contact in Odoo. This is important to provide accurate tax calculations for customers.
|
||||
|
||||
.. important::
|
||||
The :guilabel:`Address Validation` feature only works with partners/customers in North America.
|
||||
|
||||
Additionally, tick the checkbox next to the :guilabel:`Address validation` field.
|
||||
|
||||
.. important::
|
||||
For accurate tax calculations, it is best practice to enter a complete address for the contacts
|
||||
saved in the database. However, *AvaTax* can still function by implementing a best effort attempt
|
||||
using only the :guilabel:`Country`, :guilabel:`State`, and :guilabel:`Zip code`. These are the
|
||||
three minimum required fields.
|
||||
|
||||
:guilabel:`Save` the settings to implement the configuration.
|
||||
|
||||
.. tip::
|
||||
Manually :guilabel:`Validate` the address by navigating to the :menuselection:`Contacts app`, and
|
||||
selecting a contact. Now that the *AvaTax* module has been configured on the database, a
|
||||
:guilabel:`Validate` button appears directly below the :guilabel:`Address`.
|
||||
|
||||
Click :guilabel:`Validate`, and a pop-up window appears with a :guilabel:`Validated Address` and
|
||||
:guilabel:`Original Address` listed. If the :guilabel:`Validated Address` is the correct mailing
|
||||
address for tax purposes, click :guilabel:`Save Validated`.
|
||||
|
||||
.. image:: avatax/validate-address.png
|
||||
:align: center
|
||||
:alt: Validate address pop-up window in Odoo with "Save Validated" button and "Validated
|
||||
Address" highlighted.
|
||||
|
||||
.. warning::
|
||||
All previously-entered addresses for contacts in the Odoo database will need to be validated
|
||||
using the manually validate process outlined above. Addresses are not automatically validated if
|
||||
they were entered previously. This only occurs upon tax calculation.
|
||||
|
||||
Test connection
|
||||
~~~~~~~~~~~~~~~
|
||||
|
||||
After entering all the above information into the *AvaTax* setup on Odoo, click :guilabel:`Test
|
||||
connection`. This ensures the :guilabel:`API ID` and :guilabel:`API KEY` are correct, and a
|
||||
connection is made between Odoo and the *AvaTax* application programming interface (API).
|
||||
|
||||
Sync parameters
|
||||
~~~~~~~~~~~~~~~
|
||||
|
||||
Upon finishing the configuration and settings of the *AvaTax* section, click the :guilabel:`Sync
|
||||
Parameters` button. This action synchronizes the exemption codes from *AvaTax*.
|
||||
|
||||
.. _avatax/fiscal_positions:
|
||||
|
||||
Fiscal position
|
||||
---------------
|
||||
|
||||
Next, navigate to :menuselection:`Accounting app --> Configuration --> Accounting: Fiscal
|
||||
Positions`. A :guilabel:`Fiscal Position` is listed named, :guilabel:`Automatic Tax Mapping
|
||||
(AvaTax)`. Click it to open *AvaTax's* fiscal position configuration page.
|
||||
|
||||
Here, ensure that the :guilabel:`Use AvaTax API` checkbox is ticked.
|
||||
|
||||
Optionally, tick the checkbox next to the field labeled: :guilabel:`Detect Automatically`. Should
|
||||
this option be ticked, then, Odoo will automatically apply this :guilabel:`Fiscal Position` for
|
||||
transactions in Odoo.
|
||||
|
||||
Enabling :guilabel:`Detect Automatically` also makes specific parameters, such as :guilabel:`VAT
|
||||
required`, :guilabel:`Foreign Tax ID`, :guilabel:`Country Group`, :guilabel:`Country`,
|
||||
:guilabel:`Federal States`, or :guilabel:`Zip Range` appear. Filling these parameters filters the
|
||||
:guilabel:`Fiscal Position` usage. Leaving them blank ensures all calculations are made using this
|
||||
:guilabel:`Fiscal Position`.
|
||||
|
||||
.. warning::
|
||||
Should the :guilabel:`Detect Automatically` checkbox not be ticked, each customer will need to
|
||||
have the :guilabel:`Fiscal Position` set on their :guilabel:`Sales and Purchase` tab of the
|
||||
contact record. To do so, navigate to :menuselection:`Sales app --> Order --> Customers`, or
|
||||
:menuselection:`Contacts app --> Contacts`. Then, select a customer or contact to set the fiscal
|
||||
position on.
|
||||
|
||||
Navigate to the :guilabel:`Sales and Purchase` tab, and down to the section labeled,
|
||||
:guilabel:`Fiscal Position`. Set the :guilabel:`Fiscal Position` field to the fiscal position
|
||||
for the customer.
|
||||
|
||||
.. seealso::
|
||||
:doc:`fiscal_positions`
|
||||
|
||||
AvaTax accounts
|
||||
~~~~~~~~~~~~~~~
|
||||
|
||||
Upon selecting the checkbox option for :guilabel:`Use AvaTax API` a new :guilabel:`AvaTax` tab
|
||||
appears. Click into this tab to reveal two different settings.
|
||||
|
||||
The first setting is the :guilabel:`AvaTax Invoice Account`, while the second is, :guilabel:`AvaTax
|
||||
Refund Account`. Ensure both accounts are set for smooth end-of-year record keeping. Consult a
|
||||
certified public accountant (CPA) for specific guidance on setting both accounts.
|
||||
|
||||
Click :guilabel:`Save` to implement the changes.
|
||||
|
||||
Tax mapping
|
||||
===========
|
||||
-----------
|
||||
|
||||
The Avatax integration is available on Sale Orders and Invoices with the included Avatax fiscal
|
||||
The *AvaTax* integration is available on sale orders and invoices with the included *AvaTax* fiscal
|
||||
position.
|
||||
|
||||
Product category mapping
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Before using the integration, specify an :guilabel:`Avatax Category` on the product categories.
|
||||
Navigate to :menuselection:`Inventory app --> Configuration --> Product Categories`. Select the
|
||||
product category to add the :guilabel:`AvaTax Category` to. In the :guilabel:`AvaTax Category`
|
||||
field, select a category from the drop-down menu, or :guilabel:`Search More...` to open the complete
|
||||
list of options.
|
||||
|
||||
.. image:: avatax/avatax-category.png
|
||||
:align: center
|
||||
:alt: Specify Avatax Category on products
|
||||
:alt: Specify AvaTax Category on products.
|
||||
|
||||
Avatax Categories may be overridden or set on individual products as well.
|
||||
Product mapping
|
||||
~~~~~~~~~~~~~~~
|
||||
|
||||
*AvaTax* Categories may be set on individual products, as well. To set the :guilabel:`Avatax
|
||||
Category` navigate to :menuselection:`Inventory app --> Products --> Products`. Select the product
|
||||
to add the :guilabel:`Avatax Category` to. Under the :guilabel:`General Information` tab, on the
|
||||
far-right, is a selector field labeled: :guilabel:`Avatax Category`. Finally, click the drop-down
|
||||
menu, and select a category, or :guilabel:`Search More...` to find one that is not listed.
|
||||
|
||||
.. note::
|
||||
If both the product, and its category, have an :guilabel:`AvaTax Category` set, the product's
|
||||
:guilabel:`AvaTax Category` takes precedence.
|
||||
|
||||
.. image:: avatax/override-avatax-product-category.png
|
||||
:align: center
|
||||
:alt: Override product categories as needed
|
||||
:alt: Override product categories as needed.
|
||||
|
||||
.. _avatax/address-mapping:
|
||||
|
||||
Address validation
|
||||
==================
|
||||
|
||||
Manually validate customer addresses by clicking the :guilabel:`Validate address` link in the
|
||||
customer form view.
|
||||
|
||||
.. image:: avatax/validate-customer-address.png
|
||||
:align: center
|
||||
:alt: Validate customer addresses
|
||||
|
||||
If preferred, choose to keep the newly validated address or the original address in the wizard that
|
||||
pops up.
|
||||
|
||||
.. image:: avatax/choose-customer-address.png
|
||||
:align: center
|
||||
:alt: Address validation wizard
|
||||
|
||||
.. _avatax/tax-calculation:
|
||||
|
||||
Tax calculation
|
||||
===============
|
||||
|
||||
Automatically calculate taxes on Odoo quotations and invoices with Avatax by confirming the
|
||||
documents. Alternatively, calculate the taxes manually by clicking the :guilabel:`Compute taxes
|
||||
using Avatax` button while these documents are in draft mode.
|
||||
|
||||
Use the :guilabel:`Avalara Code` field that's available on customers, quotations, and invoices to
|
||||
cross-reference data in Odoo and Avatax.
|
||||
.. important::
|
||||
Mapping an :guilabel:`AvaTax Category` on either the *Product* or *Product Category* should be
|
||||
completed for every *Product* or *Product Category*, depending the route that is chosen.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`fiscal_positions`
|
||||
- :doc:`avatax/avatax_use`
|
||||
- :doc:`avatax/avalara_portal`
|
||||
- `US Tax Compliance: Avatax elearning video
|
||||
<https://www.odoo.com/slides/slide/us-tax-compliance-avatax-2858?fullscreen=1>`_
|
||||
|
||||
.. toctree::
|
||||
:titlesonly:
|
||||
|
||||
avatax/avatax_use
|
||||
avatax/avalara_portal
|
||||
|
||||
@@ -0,0 +1,259 @@
|
||||
|
||||
.. _avatax/portal:
|
||||
|
||||
=======================
|
||||
Avalara (Avatax) portal
|
||||
=======================
|
||||
|
||||
Avalara's (*AvaTax*) management console offers account management options including: viewing/editing
|
||||
the transactions sent from Odoo to *AvaTax*, details on how the taxes are calculated, tax reporting,
|
||||
tax exemption management, and tax return resources.
|
||||
|
||||
.. tip::
|
||||
Avalara is the software developer of the tax software, *AvaTax*.
|
||||
|
||||
To access the console, first, navigate to either Avalara's `sandbox
|
||||
<https://sandbox.admin.avalara.com/>`_ or `production <https://admin.avalara.com/>`_ environment.
|
||||
This will depend on which type of account was set in the :doc:`integration <../avatax>`. Log in to
|
||||
the management console.
|
||||
|
||||
.. image:: avalara_portal/avalara-portal.png
|
||||
:align: center
|
||||
:alt: Avalara dashboard after logging into management portal.
|
||||
|
||||
.. seealso::
|
||||
For more information see Avalara's documentation: `Activate your Communications Customer Portal
|
||||
account
|
||||
<https://community.avalara.com/support/s/document-item?language=en_US&bundleId=qvv1656594440497&topicId=Activate_your_Communications_Customer_Portal_account.html&_LANG=enus>`_.
|
||||
|
||||
.. _avalara/portal-transactions:
|
||||
|
||||
Transactions
|
||||
============
|
||||
|
||||
To access transactions, click in the :guilabel:`Transactions` link on the main dashboard upon
|
||||
logging into the :ref:`avatax/portal`. To manually access the *Transactions* page, while logged into
|
||||
the Avalara console, navigate to :menuselection:`Transactions --> Transactions`.
|
||||
|
||||
.. image:: avalara_portal/avalara-transactions.png
|
||||
:align: center
|
||||
:alt: Avalara portal with the transactions shortcut highlighted.
|
||||
|
||||
Edit transaction
|
||||
----------------
|
||||
|
||||
Click into a transaction to reveal more details about the transaction. These details include
|
||||
sections on :guilabel:`Invoice detail`, :guilabel:`Additional info`, and :guilabel:`Customer info`.
|
||||
Click :icon:`fa-pencil` :guilabel:`Edit document details` to make changes to the transaction.
|
||||
|
||||
A :guilabel:`Discount` can be added to adjust the invoice. This is especially useful in cases where
|
||||
the transaction has already synced with Avalara / *AvaTax*, and changes need to be made afterward.
|
||||
|
||||
.. _avalara/portal-filter:
|
||||
|
||||
Filter
|
||||
------
|
||||
|
||||
Filter transactions on the :guilabel:`Transactions` page, by setting the :guilabel:`From` and
|
||||
:guilabel:`To` fields, and configuring other fields to filter by, including:
|
||||
|
||||
- :guilabel:`Document Status`: any of the following options, :guilabel:`All`, :guilabel:`Voided`,
|
||||
:guilabel:`Committed`, :guilabel:`Uncommitted`, or :guilabel:`Locked`.
|
||||
- :guilabel:`Document Code`: any of the following options, :guilabel:`Exactly match`,
|
||||
:guilabel:`Starts with`, or :guilabel:`Contains`.
|
||||
- :guilabel:`Customer/Vendor Code`: the customer/vendor code in Odoo (e.g. `Contact18`).
|
||||
- :guilabel:`Country`: the country this tax was calculated in; this is a text field.
|
||||
- :guilabel:`Region`: the region of the country, which varies based on the :guilabel:`Country`
|
||||
selection.
|
||||
|
||||
Click :icon:`fa-plus` :guilabel:`Filters` to access the following filter conditions:
|
||||
|
||||
- :guilabel:`Document Type`: any of the following selections, :guilabel:`All`, :guilabel:`Sales
|
||||
Invoice`, :guilabel:`Purchase Invoice`, :guilabel:`Return Invoice`, :guilabel:`Inventory Transfer
|
||||
Inbound Invoice`, :guilabel:`Inventory Transfer Outbound Invoice`, or :guilabel:`Customs
|
||||
Invoice`.
|
||||
- :guilabel:`Import ID`: represents the import ID of the document.
|
||||
|
||||
Sort by
|
||||
-------
|
||||
|
||||
On the :guilabel:`Transactions` page, transactions will be listed below, according to the set
|
||||
:ref:`avalara/portal-filter`, located in the top half of the page. The following columns are
|
||||
available by default, to sort by ascending or descending order:
|
||||
|
||||
- :guilabel:`Doc Code`: either of the following options, :guilabel:`Exactly match`,
|
||||
:guilabel:`Starts with`, or :guilabel:`Contains`.
|
||||
- :guilabel:`Doc Status`: either of the following options, :guilabel:`All`, :guilabel:`Voided`,
|
||||
:guilabel:`Committed`, :guilabel:`Uncommitted`, or :guilabel:`Locked`.
|
||||
- :guilabel:`Cust/Vendor Code` : this is the customer/vendor code in Odoo (e.g. Contact18).
|
||||
- :guilabel:`Region`: this is the region of the country, this will vary based on the
|
||||
:guilabel:`Country` selection.
|
||||
- :guilabel:`Amount`: the numeric amount of the total amount on the Odoo document.
|
||||
- :guilabel:`Tax`: the numeric amount of the tax applied to the total.
|
||||
|
||||
.. image:: avalara_portal/transactions.png
|
||||
:align: center
|
||||
:alt: Transactions page on the Avalara portal with the filter and sort-by options highlighted.
|
||||
|
||||
Customize columns
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
Additional columns can be added by clicking the :icon:`fa-cog` :guilabel:`Customize columns`. On the
|
||||
resulting popover window, click the drop-down menu for the :guilabel:`column` that should be
|
||||
changed.
|
||||
|
||||
The following columns can be added for additional transactional information:
|
||||
|
||||
- :guilabel:`AvaTax calculated`: the amount of tax calculated by *AvaTax*.
|
||||
- :guilabel:`Country`: the country this tax was calculated in; this is a text field.
|
||||
- :guilabel:`Cust/vendor code`: the customer/vendor code in Odoo (e.g. `Contact18`).
|
||||
- :guilabel:`Currency`: the standardized abbreviation for the currency the amount total is in.
|
||||
- :guilabel:`Doc date`: the document's date of creation.
|
||||
- :guilabel:`Doc status`: any of the following options, :guilabel:`All`, :guilabel:`Voided`,
|
||||
:guilabel:`Committed`, :guilabel:`Uncommitted`, or :guilabel:`Locked`.
|
||||
- :guilabel:`Doc type`: any of the following selections, :guilabel:`All`, :guilabel:`Sales
|
||||
Invoice`, :guilabel:`Purchase Invoice`, :guilabel:`Return Invoice`, :guilabel:`Inventory Transfer
|
||||
Inbound Invoice`, :guilabel:`Inventory Transfer Outbound Invoice`, or :guilabel:`Customs
|
||||
Invoice`.
|
||||
- :guilabel:`Import ID`: represents the import ID of the document.
|
||||
- :guilabel:`Last modified`: timestamp of the last time the document was modified.
|
||||
- :guilabel:`Location code`: the location code used to calculate the tax, based on the delivery
|
||||
address.
|
||||
- :guilabel:`PO number`: the purchase order number.
|
||||
- :guilabel:`Reference code`: the Odoo reference code (e.g. NV/2024/00003)
|
||||
- :guilabel:`Region`: the region of the country,which varies based on the :guilabel:`Country`
|
||||
selection.
|
||||
- :guilabel:`Salesperson code`: the numeric ID of the user assigned to the sales order in Odoo.
|
||||
- :guilabel:`Tax date`: the month/day/year of the tax calculation.
|
||||
- :guilabel:`Tax override type`: where an exemption would appear, should there be none, the field
|
||||
populates with :guilabel:`None`.
|
||||
|
||||
To add a new column click the :icon:`fa-plus` :guilabel:`Column`.
|
||||
|
||||
.. seealso::
|
||||
For more information on *AvaTax* transactions, refer to this Avalara documentation: `Transactions
|
||||
<https://community.avalara.com/support/s/document-item?language=en_US&bundleId=qvv1656594440497&topicId=transactions.html&_LANG=enus>`_.
|
||||
|
||||
Import-export
|
||||
-------------
|
||||
|
||||
While on the :ref:`avalara/portal-transactions`, click :icon:`fa-download` :guilabel:`Import
|
||||
transactions` or :icon:`fa-upload` :guilabel:`Export transactions` to import or export transactions.
|
||||
|
||||
Reports
|
||||
-------
|
||||
|
||||
To access reporting, navigate to the :menuselection:`Reports` link in the top menu of the Avalara
|
||||
management console. Next, select from one of the available reporting tabs: :guilabel:`Transactions
|
||||
reports`, :guilabel:`Liability & tax return reports`, or :guilabel:`Exemption reports`.
|
||||
|
||||
.. tip::
|
||||
Additionally, there is a :guilabel:`Favorites` tab and :guilabel:`Downloads` tab. The
|
||||
:guilabel:`Favorites` tab contains any favorited report configurations for the Avalara user. The
|
||||
:guilabel:`Downloads` tab contains a list view where the user can download the high-volume
|
||||
transaction reports created in the last 30 days.
|
||||
|
||||
Make a selection for the :guilabel:`Report Category`, and the :guilabel:`Report Name`, under the
|
||||
:guilabel:`Select a report` section.
|
||||
|
||||
Next, fill out the :guilabel:`Select report details` section. These options will vary based on the
|
||||
tab selected above.
|
||||
|
||||
Depending on the report size, the following two options are available in the section labeled,
|
||||
:guilabel:`Select the approximate number of transactions for your report`: :guilabel:`Create and
|
||||
download the report instantly` (for small reports) and :guilabel:`Create and download the report in
|
||||
the background` (for larger reports). Select one or the other depending on the volume of
|
||||
transactions in this report.
|
||||
|
||||
Finally, under the section labeled, :guilabel:`Report preview and export` make a selection of the
|
||||
file type to download. Either a :guilabel:`.PDF` or :guilabel:`.XLS` can be chosen. Alternatively,
|
||||
the file can be previewed by selecting the :guilabel:`Preview` option.
|
||||
|
||||
After making all the configurations, click :guilabel:`Create report` to download the report. Click
|
||||
:icon:`fa-star-o` :guilabel:`Make this report a favorite` to save the report configuration to the
|
||||
user's favorites.
|
||||
|
||||
After the report is created, click :icon:`fa-download` :guilabel:`Download` to download the file to
|
||||
the device.
|
||||
|
||||
.. tip::
|
||||
Select a pre-configured report from the :guilabel:`Frequently used reports` section of the
|
||||
reporting dashboard.
|
||||
|
||||
Access this list by clicking on the :guilabel:`Reports` option in the top menu of the Avalara
|
||||
management console, and scroll to the bottom of the page.
|
||||
|
||||
.. seealso::
|
||||
`See Avalara's documentation: Reports in AvaTax
|
||||
<https://community.avalara.com/support/s/document-item?language=en_US&bundleId=rjq1671176624730&topicId=Reports_in_AvaTax.html&_LANG=enus>`_.
|
||||
|
||||
Add more jurisdictions
|
||||
======================
|
||||
|
||||
Additional jurisdictions (tax locations) can be added in the Avalara management console. Navigate to
|
||||
either Avalara's `sandbox <https://sandbox.admin.avalara.com/>`_ or `production
|
||||
<https://admin.avalara.com/>`_ environment. This will depend on which type of account was set in the
|
||||
:doc:`integration <../avatax>`.
|
||||
|
||||
Next, navigate to :menuselection:`Settings --> Where you collect tax`. Choose between the three
|
||||
different tabs, depending on the business need. The first tab is :guilabel:`Sales and use tax`,
|
||||
where tax can be collected for the United States. Click the :icon:`fa-plus` :guilabel:`Add to where
|
||||
you collect sales and use tax` to add another location where the company collects sales and use tax.
|
||||
|
||||
The second option, is the :guilabel:`VAT/GST` tab where the :icon:`fa-plus` :guilabel:`Add a country
|
||||
or territory where you collect VAT/GST` can be selected to add another country or territory where
|
||||
the company collects VAT/GST.
|
||||
|
||||
Finally, on the far-right, is the :guilabel:`Customs duty` tab, where a country can be added where
|
||||
the company collects customs duty. Simply click on the :icon:`fa-plus` :guilabel:`Add a country
|
||||
where you calculate customs duty` icon below the tab.
|
||||
|
||||
.. image:: avalara_portal/where-you-collect-tax.png
|
||||
:align: center
|
||||
:alt: AvaTax management console, on the Where you collect tax page, with the add button and
|
||||
sales and use tax tab highlighted.
|
||||
|
||||
.. seealso::
|
||||
`See Avalara's documentation: Add local jurisdiction taxes
|
||||
<https://community.avalara.com/support/s/document-item?language=en_US&bundleId=bla1700809896571_bla1700809896571&topicId=nbw1698727575499.html&_LANG=enus>`_.
|
||||
|
||||
Tax exemption certificate
|
||||
=========================
|
||||
|
||||
Tax exemption certificates for customers can be added into the Avalara management console, so that
|
||||
*AvaTax* is aware of which customers may be exempt from paying certain taxes. To add an *exception
|
||||
certificate* navigate to :menuselection:`Exemptions --> Customer certificates`. From there, click on
|
||||
the :icon:`fa-plus` :guilabel:`Add a certificate` to configure an exemption.
|
||||
|
||||
.. warning::
|
||||
An Avalara subscription to Exemption Certificate Management (ECM) is required in order to attach
|
||||
certificate images, and to be ready for an audit. For more on subscribing to this add-on, visit
|
||||
`Avalara
|
||||
<https://community.avalara.com/support/s/document-item?language=en_US&bundleId=hff1682048150115_hff1682048150115&topicId=fol1682356576230.html&_LANG=enus>`_.
|
||||
|
||||
End-of-year operations
|
||||
======================
|
||||
|
||||
Avalara's services include tax return services, for when it is time to file taxes at the end of the
|
||||
year. To access Avalara's tax services log, into the `management portal
|
||||
<https://admin.avalara.com/>`_. Then, from the main dashboard, click :guilabel:`Returns`. Avalara
|
||||
will prompt the Avalara user to log in for security purposes, and redirect the user to the *Returns*
|
||||
portal.
|
||||
|
||||
.. image:: avalara_portal/avalara-returns.png
|
||||
:align: center
|
||||
:alt: Avalara portal with the returns shortcut highlighted.
|
||||
|
||||
Click :guilabel:`Get started` to begin the tax return process. For more information, refer to this
|
||||
Avalara documentation: `About Managed Returns
|
||||
<https://community.avalara.com/support/s/document-item?language=en_US&bundleId=hps1656397152776_hps1656397152776&topicId=Learn_about_Managed_Returns.html&_LANG=enus>`_.
|
||||
|
||||
.. tip::
|
||||
Alternatively, click on the :menuselection:`Returns` button in the top menu of the Avalara
|
||||
management console.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`../avatax`
|
||||
- :doc:`avatax_use`
|
||||
- `US Tax Compliance: Avatax elearning video
|
||||
<https://www.odoo.com/slides/slide/us-tax-compliance-avatax-2858?fullscreen=1>`_
|
||||
|
After Width: | Height: | Size: 40 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 29 KiB |
|
After Width: | Height: | Size: 33 KiB |
@@ -0,0 +1,164 @@
|
||||
==========
|
||||
AvaTax use
|
||||
==========
|
||||
|
||||
AvaTax is a tax calculation software that can be integrated with Odoo in the United States and
|
||||
Canada. Once the :doc:`integration setup <../avatax>` is complete, the calculated tax is simple and
|
||||
automatic.
|
||||
|
||||
Tax calculation
|
||||
===============
|
||||
|
||||
Automatically calculate taxes on Odoo quotations and invoices with AvaTax by confirming the
|
||||
documents during the sales flow. Alternatively, calculate the taxes manually by clicking the
|
||||
:guilabel:`Compute taxes using Avatax` button while these documents are in draft mode.
|
||||
|
||||
.. tip::
|
||||
Clicking the :guilabel:`Compute taxes using Avatax` button recalculates taxes if any product
|
||||
lines are edited on the invoice.
|
||||
|
||||
.. image:: avatax_use/calculate-avatax.png
|
||||
:align: center
|
||||
:alt: Sales quotation with the confirm and compute taxes using AvaTax buttons highlighted.
|
||||
|
||||
The tax calculation is triggered during the following :ref:`automatic trigger
|
||||
<avatax/automatic-triggers>` and :ref:`manual trigger <avatax/manual-triggers>` circumstances.
|
||||
|
||||
.. _avatax/automatic-triggers:
|
||||
|
||||
Automatic triggers
|
||||
------------------
|
||||
|
||||
- When the sales rep sends the quote by email with :guilabel:`Send by email` button (pop-up).
|
||||
- When the customer views the online quote on the portal.
|
||||
- When a quote is confirmed and becomes a sales order.
|
||||
- When the customer views the invoice on the portal.
|
||||
- When a draft invoice is validated.
|
||||
- When the customer views the subscription in the portal.
|
||||
- When a subscription generates an invoice.
|
||||
- When the customer gets to the last screen of the eCommerce checkout.
|
||||
|
||||
.. _avatax/manual-triggers:
|
||||
|
||||
Manual triggers
|
||||
---------------
|
||||
|
||||
- :guilabel:`Compute taxes using Avatax` button at the bottom of the quote.
|
||||
- :guilabel:`Compute taxes using Avatax` button at the top of the invoice.
|
||||
|
||||
.. tip::
|
||||
Use the :guilabel:`Avalara Partner Code` field that is available on customer records, quotations,
|
||||
and invoices to cross-reference data in Odoo and AvaTax. This field is located under the
|
||||
:menuselection:`Other info` tab of the sales order or quotation in the :guilabel:`Sales` section.
|
||||
|
||||
On the customer record, navigate to *Contacts app* and select a contact. Then open the
|
||||
:guilabel:`Sales & Purchase` tab and the :guilabel:`Avalara Partner Code` under the
|
||||
:guilabel:`Sales` section.
|
||||
|
||||
.. important::
|
||||
The :guilabel:`Automatic Tax Mapping (AvaTax)` fiscal position is also applied on those Odoo
|
||||
documents, like subscriptions.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`../fiscal_positions`
|
||||
|
||||
AvaTax synchronization
|
||||
======================
|
||||
|
||||
Synchronization occurs with AvaTax, when the *invoice* is created in Odoo. This means the sales tax
|
||||
is recorded with Avalara (AvaTax software developer).
|
||||
|
||||
To do so, navigate to :menuselection:`Sales app --> Orders --> Quotations`. Select a quotation from
|
||||
the list.
|
||||
|
||||
After confirming a quotation and validating the delivery, click :guilabel:`Create Invoice`. Indicate
|
||||
whether it is a :guilabel:`Regular invoice`, :guilabel:`Down payment (percentage)`, or
|
||||
:guilabel:`Down payment (fixed amount)`.
|
||||
|
||||
Then click :guilabel:`Create and view invoice`. The recorded taxes can be seen in the
|
||||
:guilabel:`Journal Items` tab of the invoice. There will be different taxes depending on the
|
||||
location of the :guilabel:`Delivery Address`.
|
||||
|
||||
.. image:: avatax_use/journal-items.png
|
||||
:align: center
|
||||
:alt: Journal items highlighted on a invoice in Odoo.
|
||||
|
||||
Finally, press the :guilabel:`Confirm` button to complete the invoice and synchronize with the
|
||||
AvaTax portal.
|
||||
|
||||
.. warning::
|
||||
An invoice cannot be :guilabel:`Reset to draft` because this causes de-synchronization with the
|
||||
AvaTax Portal. Instead, click :guilabel:`Add credit note` and state: `Sync with AvaTax Portal`.
|
||||
See this documentation: :doc:`../../../accounting/customer_invoices/credit_notes`.
|
||||
|
||||
Fixed price discounts
|
||||
=====================
|
||||
|
||||
Add a fixed price discount to a valuable customer by click :guilabel:`Add a line` on the customer's
|
||||
invoice. Add the product discount and set the :guilabel:`Price` to either a positive or negative
|
||||
value. To recalculate the taxes, click :guilabel:`Compute taxes using Avatax`.
|
||||
|
||||
.. tip::
|
||||
Tax calculation can even be done on negative subtotals and credit notes.
|
||||
|
||||
Logging
|
||||
=======
|
||||
|
||||
It is possible to log Avalara/*AvaTax* actions in Odoo for further analysis, or verification of
|
||||
functionality. Logging is accessible through the *AvaTax* settings.
|
||||
|
||||
To start logging *AvaTax* actions, first, navigate to the :menuselection:`Accounting app -->
|
||||
Configuration --> Settings`.
|
||||
|
||||
Then, in the :guilabel:`Taxes` section, under the :guilabel:`AvaTax` settings, click
|
||||
:guilabel:`Start logging for 30 minutes`.
|
||||
|
||||
Upon starting the log process, Odoo will log all Avalara/*AvaTax* actions performed in the database.
|
||||
|
||||
To view the logs, click on :guilabel:`Show logs` to the right of the :guilabel:`Start logging for 30
|
||||
minutes`. This reveals a detailed list of Avalara/*AvaTax* actions. This list is sortable by the
|
||||
following columns:
|
||||
|
||||
- :guilabel:`Created on`: timestamp of the *AvaTax* calculation.
|
||||
- :guilabel:`Created by`: numeric value of the user in the database.
|
||||
- :guilabel:`Database name`: name of the database.
|
||||
- :guilabel:`Type`: two values can be chosen for this field, :guilabel:`Server` or
|
||||
:guilabel:`Client`.
|
||||
- :guilabel:`Name`: Avalara service name. In this case, it will be *AvaTax*.
|
||||
- :guilabel:`Level`: by default, this will be `INFO`.
|
||||
- :guilabel:`Path`: indicates the path taken to make the calculation.
|
||||
- :guilabel:`Line`: indicates the line the calculation is made on.
|
||||
- :guilabel:`Function`: indicates the calculation taken on the line.
|
||||
|
||||
.. image:: avatax_use/logging.png
|
||||
:align: center
|
||||
:alt: Avalara logging page with top row of list highlighted.
|
||||
|
||||
Click into the log line to reveal another field, called :guilabel:`Message`.
|
||||
|
||||
This field populates a raw transcription of the transaction, which involves the creation (or
|
||||
adjustment) of a sales invoice using the Avalara *AvaTax* API.
|
||||
|
||||
The transaction includes details, such as addresses for shipping from and to, line items describing
|
||||
the products or services, tax codes, tax amounts, and other relevant information.
|
||||
|
||||
The :guilabel:`Message` contains the calculated taxes for different jurisdictions and confirms the
|
||||
creation (or adjustment) of the transaction.
|
||||
|
||||
.. tip::
|
||||
Custom fields can be made using Odoo *Studio*. Click the :icon:`fa-ellipsis-v`
|
||||
:guilabel:`(ellipsis)` menu to the far-right of the header row. Then click :icon:`fa-plus`
|
||||
:guilabel:`Add custom field`. This action opens Odoo *Studio*.
|
||||
|
||||
.. important::
|
||||
Odoo *Studio* requires a *custom* pricing plan. Consult the database's customer success manager
|
||||
for more information on switching plans. Or to see if Odoo *Studio* is included in the database's
|
||||
current pricing plan. See this documentation: :doc:`../../../../studio`.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`../avatax`
|
||||
- :doc:`avalara_portal`
|
||||
- `US Tax Compliance: Avatax elearning video
|
||||
<https://www.odoo.com/slides/slide/us-tax-compliance-avatax-2858?fullscreen=1>`_
|
||||
- :doc:`../fiscal_positions`
|
||||
|
||||
|
After Width: | Height: | Size: 41 KiB |
|
After Width: | Height: | Size: 27 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 8.6 KiB |
|
Before Width: | Height: | Size: 13 KiB |
@@ -37,7 +37,7 @@ appropriately completed:
|
||||
- :guilabel:`Vendor`: Odoo automatically fills some information based on the vendor's registered
|
||||
information, previous purchase orders, or bills.
|
||||
- :guilabel:`Bill Reference`: add the sales order reference provided by the vendor and is used to do
|
||||
the :ref:`matching <payments/matching>` when you receive the products.
|
||||
the :ref:`matching <accounting/payments/matching>` when you receive the products.
|
||||
- :guilabel:`Auto-Complete`: select a past bill/purchase order to automatically complete the
|
||||
document. The :guilabel:`Vendor` field should be completed prior to completing this field.
|
||||
- :guilabel:`Bill Date`: is the issuance date of the document.
|
||||
@@ -50,7 +50,6 @@ appropriately completed:
|
||||
<get_started/multi_currency>`.
|
||||
|
||||
.. image:: vendor_bills/bill-completion.png
|
||||
:align: center
|
||||
:alt: filling the vendor bill
|
||||
|
||||
.. note::
|
||||
@@ -72,12 +71,25 @@ Click :guilabel:`Confirm` when the document is completed. The status of your doc
|
||||
Bill Payment
|
||||
============
|
||||
|
||||
Upon payment of the vendor bill, click on :guilabel:`Register Payment`. A new window pops up.
|
||||
Upon payment of the vendor bill, click on :guilabel:`Register Payment` to open a new payment window.
|
||||
|
||||
Select the :guilabel:`Journal`, the :guilabel:`Payment Method`, the :guilabel:`Amount` you wish to
|
||||
pay (full or partial payment), and the :guilabel:`Currency`. Odoo fills the :guilabel:`Memo` field
|
||||
automatically if the :guilabel:`Payment Reference` has been set correctly in the vendor bill. If
|
||||
the field is empty, we recommend you select the vendor invoice number as a reference.
|
||||
pay (full or partial payment), and the :guilabel:`Currency`. In the case of a partial payment (when
|
||||
the :guilabel:`Amount` paid is less than the total remaining amount on the vendor bill), the
|
||||
:guilabel:`Payment Difference` field displays the outstanding balance.
|
||||
You have two options:
|
||||
|
||||
- :guilabel:`Keep open`: to keep the bill open and mark it with a :guilabel:`Partial` banner;
|
||||
- :guilabel:`Mark as fully paid`: In this case, select an account in the
|
||||
:guilabel:`Post Difference In` field and change the :guilabel:`Label` if needed. A journal entry
|
||||
will be created to balance the account receivable with the selected account.
|
||||
|
||||
.. image:: vendor_bills/partial-payment.png
|
||||
:alt: register a partial payment
|
||||
|
||||
The :guilabel:`Memo` field is filled automatically if the :guilabel:`Payment Reference` has been
|
||||
set correctly in the vendor bill. If the field is empty, select the vendor invoice number as a
|
||||
reference.
|
||||
|
||||
Once confirmed, an :guilabel:`In Payment` banner appears on the bill until it is :doc:`reconciled
|
||||
<bank/reconciliation>`.
|
||||
|
||||
@@ -11,8 +11,8 @@ created and populated based on the scanned invoices.
|
||||
|
||||
.. seealso::
|
||||
- `Test Odoo's invoice digitization <https://www.odoo.com/app/invoice-automation>`_
|
||||
- `Odoo Tutorials: Invoice Digitization with OCR
|
||||
<https://www.odoo.com/slides/slide/digitize-bills-with-ocr-1712>`_
|
||||
- `Odoo Tutorials: Vendor Bill Digitization
|
||||
<https://www.odoo.com/slides/slide/vendor-bill-digitization-7065>`_
|
||||
|
||||
Configuration
|
||||
=============
|
||||
|
||||
|
After Width: | Height: | Size: 14 KiB |
@@ -41,7 +41,7 @@ drop-down menu (most products will be set to :guilabel:`Units`).
|
||||
units, miles, nights, etc.). Go to :menuselection:`Sales app --> Configuration --> Settings` and
|
||||
ensure `Units of Measure` is enabled in the `Product Catalog` section. Click on the
|
||||
:guilabel:`Units of Measure` internal link to :doc:`view, create, and edit the units of measure
|
||||
<../inventory_and_mrp/inventory/product_management/product_replenishment/uom>`.
|
||||
<../inventory_and_mrp/inventory/product_management/configure/uom>`.
|
||||
|
||||
.. image:: expenses/new-expense-product.png
|
||||
:align: center
|
||||
|
||||
@@ -615,9 +615,9 @@ document, an automatic validation can be set in :menuselection:`Accounting --> S
|
||||
Argentinean Localization --> Validate document in the AFIP`, considering the following levels:
|
||||
|
||||
- :guilabel:`Not available:` the verification is not done (this is the default value);
|
||||
- :guilabel:`Available:` the verification is done. In case the number is not valid it, only displays
|
||||
- :guilabel:`Available:` the verification is done. In case the number is not valid, it only displays
|
||||
a warning but still allows the vendor bill to be posted;
|
||||
- :guilabel:`Required:` the verification is done and it does not allow the user to post the vendor
|
||||
- :guilabel:`Required:` the verification is done, and it does not allow the user to post the vendor
|
||||
bill if the document number is not valid.
|
||||
|
||||
.. image:: argentina/verify-vendor-bills.png
|
||||
|
||||
@@ -344,14 +344,14 @@ The Odoo POS system is certified for the major versions of databases hosted on *
|
||||
- Odoo Online
|
||||
- Odoo.sh
|
||||
- On-Premise
|
||||
* - Odoo 17.0
|
||||
- Certified
|
||||
- Certified
|
||||
- Not certified
|
||||
* - Odoo 16.0
|
||||
- Certified
|
||||
- Certified
|
||||
- Not certified
|
||||
* - Odoo 15.2
|
||||
- Not certified
|
||||
- Not certified
|
||||
- Not certified
|
||||
* - Odoo 15.0
|
||||
- Certified
|
||||
- Certified
|
||||
|
||||
@@ -509,9 +509,8 @@ Once the invoice is accepted and validated by the :abbr:`SII (Servicio de Impues
|
||||
the PDF is printed, it includes the fiscal elements that indicate that the document is fiscally
|
||||
valid.
|
||||
|
||||
.. image:: chile/sii-validation-elements.png
|
||||
:alt: SII Validation fiscal elements.
|
||||
:align: center
|
||||
.. image:: chile/accepted-invoice-fiscal-information.png
|
||||
:alt: Fiscal elements and barcode printed in accepted invoices.
|
||||
|
||||
.. important::
|
||||
If you are hosted in Odoo SH or On-Premise, you should manually install the `pdf417gen
|
||||
|
||||
|
After Width: | Height: | Size: 69 KiB |
|
Before Width: | Height: | Size: 26 KiB |
@@ -175,7 +175,7 @@ Make sure your products are correctly configured so your e-invoices are valid:
|
||||
|
||||
- :guilabel:`Product Type`: storable products, consumables, or services.
|
||||
- :guilabel:`Unit of Measure`: if you also use Odoo Inventory and have enabled :doc:`Units of
|
||||
Measure <../../inventory_and_mrp/inventory/product_management/product_replenishment/uom>`.
|
||||
Measure <../../inventory_and_mrp/inventory/product_management/configure/uom>`.
|
||||
- :guilabel:`Barcode`: **GS1** or **EGS** barcode
|
||||
- :guilabel:`ETA Item code` (under the :menuselection:`Accounting` tab): if the barcode doesn't
|
||||
match your ETA item code.
|
||||
|
||||
@@ -2,6 +2,11 @@
|
||||
France
|
||||
======
|
||||
|
||||
.. important::
|
||||
You must :doc:`install <../../general/apps_modules>` the **France - Adding Mandatory Invoice
|
||||
Mentions (Decree no. 2022-1299)** (`l10n_fr_invoice_addr`) module to comply with the `local
|
||||
legislation <https://www.legifrance.gouv.fr/jorf/id/JORFTEXT000046383394>`_.
|
||||
|
||||
.. _france/fec:
|
||||
|
||||
FEC - Fichier des Écritures Comptables
|
||||
|
||||
@@ -170,9 +170,8 @@ triggered and is being processed. You have to click on *Refresh State* to check
|
||||
German Tax Accounting Standards: Odoo's guide to GoBD Compliance
|
||||
================================================================
|
||||
|
||||
**GoBD** stands for `Grundsätze zur ordnungsmäßigen Führung und Aufbewahrung von Büchern,
|
||||
Aufzeichnungen und Unterlagen in elektronischer Form sowie zum Datenzugriff
|
||||
<https://www.bundesfinanzministerium.de/Content/DE/Downloads/BMF_Schreiben/Weitere_Steuerthemen/Abgabenordnung/2019-11-28-GoBD.pdf>`_.
|
||||
**GoBD** stands for *Grundsätze zur ordnungsmäßigen Führung und Aufbewahrung von Büchern,
|
||||
Aufzeichnungen und Unterlagen in elektronischer Form sowie zum Datenzugriff*.
|
||||
In short, it is a **guideline for the proper management and storage of books, records, and documents
|
||||
in electronic form, as well as for data access**, that is relevant for the German tax authority, tax
|
||||
declaration, and balance sheet.
|
||||
@@ -191,7 +190,7 @@ What do you need to know about GoBD when relying on accounting software?
|
||||
|
||||
.. note::
|
||||
If you can, the best way to understand GoBD is to Read the `Official GoBD text
|
||||
<https://www.bundesfinanzministerium.de/Content/DE/Downloads/BMF_Schreiben/Weitere_Steuerthemen/Abgabenordnung/2019-11-28-GoBD.pdf>`_.
|
||||
<https://ao.bundesfinanzministerium.de/ao/2021/Anhaenge/BMF-Schreiben-und-gleichlautende-Laendererlasse/Anhang-64/anhang-64.html>`_.
|
||||
It is a bit long but quite readable for non-experts. But in short, here is what to expect:
|
||||
|
||||
The **GoBD is binding for companies that have to present accounts, which includes SMEs, freelancers,
|
||||
@@ -312,7 +311,7 @@ offer our customer any legal certainty.
|
||||
|
||||
.. important::
|
||||
The BMF actually states the following in the `Official GoBD text
|
||||
<https://www.bundesfinanzministerium.de/Content/DE/Downloads/BMF_Schreiben/Weitere_Steuerthemen/Abgabenordnung/2019-11-28-GoBD.pdf>`_:
|
||||
<https://ao.bundesfinanzministerium.de/ao/2021/Anhaenge/BMF-Schreiben-und-gleichlautende-Laendererlasse/Anhang-64/anhang-64.html>`_:
|
||||
|
||||
- 180. Positive attestations on the correctness of the bookkeeping - and thus on the correctness
|
||||
of IT-based bookkeeping systems - are not issued either in the context of a tax field audit or
|
||||
|
||||
@@ -370,19 +370,18 @@ Payment complements
|
||||
Payment policy
|
||||
**************
|
||||
|
||||
One addition of the Mexican localization is the :guilabel:`Payment Policy` field . `According to
|
||||
the SAT documentation <https://www.sat.gob.mx/consultas/92764/comprobante-de-recepcion-de-pagos>`_,
|
||||
there may be 2 types of payments:
|
||||
One addition of the Mexican localization is the :guilabel:`Payment Policy` field. According to
|
||||
the SAT documentation, there are two types of payments:
|
||||
|
||||
- `PUE` (Pago en una Sola Exhibición/Payment in a Single Exhibition)
|
||||
- `PPD` (Pago en Parcialidades o Diferido/Payment in Installements or Deferred)
|
||||
|
||||
.. seealso::
|
||||
:doc:`../../inventory_and_mrp/inventory/warehouses_storage/inventory_valuation/integrating_landed_costs`
|
||||
:doc:`../../inventory_and_mrp/inventory/product_management/inventory_valuation/integrating_landed_costs`
|
||||
|
||||
The difference lies in the *Due Date* or *Payment Terms* of the invoice.
|
||||
|
||||
To configure |PUE| invoices, navigatge to :menuselection:`Accounting --> Customers --> Invoices`,
|
||||
To configure |PUE| invoices, navigate to :menuselection:`Accounting --> Customers --> Invoices`,
|
||||
and either select an invoice :guilabel:`Due Date` within the same month, or choose a payment term
|
||||
that does not imply changing the due month (immediate payment, 15 days, 21 days, all falling within
|
||||
the current month).
|
||||
@@ -909,7 +908,7 @@ Configuration
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
In order to track the correct customs number for a specific invoice, Odoo uses :doc:`landed costs
|
||||
<../../inventory_and_mrp/inventory/warehouses_storage/inventory_valuation/integrating_landed_costs>`.
|
||||
<../../inventory_and_mrp/inventory/product_management/inventory_valuation/integrating_landed_costs>`.
|
||||
Go to :menuselection:`Inventory --> Configuration --> Settings --> Valuation`. Make sure that
|
||||
:guilabel:`Landed Costs` is activated.
|
||||
|
||||
|
||||
@@ -179,8 +179,8 @@ Bank payments
|
||||
|
||||
.. _payment_providers/add_new:
|
||||
|
||||
Enable a payment provider
|
||||
=========================
|
||||
Enabling a payment provider
|
||||
===========================
|
||||
|
||||
To add a new payment provider and make its related payment methods available to your customers,
|
||||
proceed as follows:
|
||||
@@ -244,10 +244,19 @@ In this case, a **payment token** is created in Odoo to be used as a payment met
|
||||
payments without the customer having to enter their payment method details again. This is
|
||||
particularly useful for the eCommerce conversion rate and subscriptions that use recurring payments.
|
||||
|
||||
.. note::
|
||||
You remain fully PCI-compliant when you enable this feature because Odoo does not store the card
|
||||
details directly. Instead, it creates a payment token that only references the card details
|
||||
stored on the payment provider's server.
|
||||
.. tip::
|
||||
To add or delete their saved payment method details, customers can click :guilabel:`Manage
|
||||
payment methods` in the :ref:`customer portal <users-portal-payment-methods>`.
|
||||
|
||||
.. admonition:: PCI DSS and Attestation of Compliance
|
||||
|
||||
Odoo is not `PCI <https://www.pcisecuritystandards.org>`_ DSS-certified because it does not
|
||||
store cardholder data or process payments. Instead, it outsources tokenization and payment to
|
||||
:ref:`external payment providers <payment_providers/online_providers>`, which means that as an
|
||||
Odoo customer, you only need to complete the minimal Self-Assessment Questionnaire (SAQ) with
|
||||
the provider to obtain the Attestation of Compliance (AoC) and achieve PCI compliance. Odoo
|
||||
should not be mentioned as a payment processor or a third-party service provider in the
|
||||
:abbr:`SAQ (Self-Assessment Questionnaire)`.
|
||||
|
||||
.. _payment_providers/manual_capture:
|
||||
|
||||
|
||||
@@ -1,102 +1,68 @@
|
||||
.. _developer-mode:
|
||||
|
||||
===========================
|
||||
Developer Mode (debug mode)
|
||||
Developer mode (debug mode)
|
||||
===========================
|
||||
|
||||
The developer mode (or debug mode) unlocks access to extra and advanced tools in Odoo. There are
|
||||
several ways to activate the developer mode: through the
|
||||
:ref:`settings <general/developer_mode/settings>`, the
|
||||
:ref:`browser extension <general/developer_mode/browser-extension>`, through
|
||||
the :ref:`command palette <general/developer_mode/command-palette>` or the
|
||||
:ref:`URL <general/developer_mode/url>`.
|
||||
The developer mode, also known as debug mode, unlocks access to advanced :ref:`tools and settings
|
||||
<developer-mode/tools>` in Odoo.
|
||||
|
||||
.. _general/developer_mode/settings:
|
||||
|
||||
Activate through the Settings
|
||||
=============================
|
||||
|
||||
The debug mode can be activated in the Odoo database settings. Go to :menuselection:`Settings -->
|
||||
General Settings --> Developer Tools` and click on :guilabel:`Activate the developer mode`. At
|
||||
least one application needs to be installed for the :guilabel:`Developer Tools` section to appear
|
||||
in the :guilabel:`Settings` module.
|
||||
|
||||
.. image:: developer_mode/settings.png
|
||||
:align: center
|
||||
:alt: Overview of the debug options under settings in Odoo.
|
||||
.. warning::
|
||||
Proceed with caution, as some developer tools and technical settings are considered advanced and
|
||||
may have associated risks. Only use them if you understand the implications and are confident in
|
||||
your actions.
|
||||
|
||||
.. note::
|
||||
:guilabel:`Activate the developer mode (with assets)` is used by developers; :guilabel:`Activate
|
||||
the developer mode (with tests assets)` is used by developers and testers.
|
||||
The developer mode is also available with :ref:`assets <frontend/framework/assets_debug_mode>`,
|
||||
which are used to debug JavaScript code, and with :ref:`tests assets
|
||||
<frontend/framework/tests_debug_mode>`, which are used to run test tours.
|
||||
|
||||
.. _developer-mode/activation:
|
||||
|
||||
Activation
|
||||
==========
|
||||
|
||||
To activate it, open the :guilabel:`Settings` app, scroll down to the :guilabel:`Developer Tools`
|
||||
section, and click :guilabel:`Activate the developer mode`.
|
||||
|
||||
Once activated, the :guilabel:`Deactivate the developer mode` option becomes available.
|
||||
|
||||
.. _general/developer_mode/browser-extension:
|
||||
.. image:: developer_mode/settings.png
|
||||
:alt: Activating the developer mode in the Settings app
|
||||
|
||||
Activate through the browser extension
|
||||
======================================
|
||||
To activate the developer mode **from anywhere in the database**, add `?debug=1` to the URL after
|
||||
`/web` (e.g., `https://example.odoo.com/web?debug=1#action=menu&cids=1`). To deactivate it, use
|
||||
`?debug=0` instead.
|
||||
|
||||
Within a web browser, navigate to the browser settings and extensions and search for the `Odoo
|
||||
Debug` extension. Once the extension is installed, a new icon will be shown on the browser's
|
||||
toolbar.
|
||||
|
||||
For the *Odoo Debug* extension, a single click enables a normal version of the mode, while a
|
||||
double click enables it with assets. To deactivate it, use a single click.
|
||||
|
||||
.. image:: developer_mode/developer-mode-monkey.png
|
||||
:align: center
|
||||
:alt: View of Odoo's debug icon in a Google Chrome toolbar.
|
||||
|
||||
.. _general/developer_mode/command-palette:
|
||||
|
||||
Activate through the command palette
|
||||
====================================
|
||||
|
||||
In Odoo, the command palette tool has a command to activate the debug mode. First, open the command
|
||||
palette tool with the keyboard shortcut `ctrl+k` and then type `debug`. A command will show up to
|
||||
activate the debug mode.
|
||||
|
||||
.. image:: developer_mode/command-palette.png
|
||||
:align: center
|
||||
:alt: Command palette with debug command.
|
||||
|
||||
.. _general/developer_mode/url:
|
||||
|
||||
.. _developer-mode/url:
|
||||
|
||||
Activate through the URL
|
||||
========================
|
||||
|
||||
The debug mode can also be activated by adding an extra query string to the database's URL. In the
|
||||
URL, add `?debug=1` or `?debug=true` after `/web`. To deactivate the debug mode, change the
|
||||
value to `?debug=0` instead.
|
||||
|
||||
.. image:: developer_mode/url.png
|
||||
:align: center
|
||||
:alt: Overview of a URL with the debug mode command added.
|
||||
Use `?debug=assets` to activate the developer mode with assets and `?debug=tests` to activate it
|
||||
with tests assets.
|
||||
|
||||
.. tip::
|
||||
Additional modes are available for developers: `?debug=assets` enables the
|
||||
:ref:`assets mode <frontend/framework/assets_debug_mode>`, and `?debug=tests` enables
|
||||
the :ref:`tests mode <frontend/framework/tests_debug_mode>`.
|
||||
Open the **command palette** by pressing `Ctrl + K` or `Cmd ⌘ + K`, then type `debug` to
|
||||
activate the developer mode with assets or deactivate it.
|
||||
|
||||
.. _developer-mode/mode-tools:
|
||||
.. admonition:: Browser extension
|
||||
|
||||
Locate the developer mode tools
|
||||
===============================
|
||||
The `Odoo Debug <https://github.com/Droggol/OdooDebug>`_ browser extension adds an icon to toggle
|
||||
developer mode on or off from the browser's toolbar. It is available on the `Chrome Web Store
|
||||
<https://chromewebstore.google.com/detail/odoo-debug/hmdmhilocobgohohpdpolmibjklfgkbi>`_ and
|
||||
`Firefox Add-ons <https://addons.mozilla.org/firefox/addon/odoo-debug/>`_.
|
||||
|
||||
Once developer mode is activated, the developer mode tools can be accessed from the :guilabel:`Open
|
||||
Developer Tools` button, the bug icon located in the header of the Odoo database.
|
||||
.. _developer-mode/tools:
|
||||
|
||||
.. image:: developer_mode/button-location.png
|
||||
:align: center
|
||||
:alt: Overview of a console page and the debug icon being shown in Odoo.
|
||||
Developer tools and technical menu
|
||||
==================================
|
||||
|
||||
This menu contains additional tools that are useful to understand or edit technical data, such as
|
||||
the views or actions of a page. On a page that has filters, actions, and view options, the
|
||||
developer mode tools contain some useful menu items such as:
|
||||
Once the developer mode is activated, the developer tools can be accessed by clicking the
|
||||
:icon:`fa-bug` :guilabel:`(bug)` icon. The menu contains tools useful for understanding or editing
|
||||
technical data, such as a view's field, filters, or actions. The options available depend on where
|
||||
the menu is accessed from.
|
||||
|
||||
- :guilabel:`Edit Action`
|
||||
- :guilabel:`Manage Filters`
|
||||
- Edit the current view (e.g. Kanban, List, Graph, etc.)
|
||||
- See the :guilabel:`Fields View Get`
|
||||
.. image:: developer_mode/tools.png
|
||||
:alt: Accessing the developer tools
|
||||
|
||||
Database administrators can access the technical menu from the :guilabel:`Settings` app. It contains
|
||||
advanced database settings, such as ones related to the database structure, security, actions, etc.
|
||||
|
||||
.. image:: developer_mode/technical.png
|
||||
:alt: Accessing the technical menu
|
||||
|
||||
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 37 KiB |
|
Before Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 6.1 KiB |
|
After Width: | Height: | Size: 9.4 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 24 KiB |
@@ -34,14 +34,14 @@ registration`. On the :guilabel:`Register an application` screen, rename the :gu
|
||||
and personal Microsoft accounts (e.g. Skype, Xbox)`.
|
||||
|
||||
Under the :guilabel:`Redirect URL` section, select :guilabel:`Web` as the platform, and then input
|
||||
`https://<odoo base url>/microsoft_outlook/confirm` in the :guilabel:`URL` field. The Odoo base URL
|
||||
is the canonical domain at which your Odoo instance can be reached in the URL field.
|
||||
`https://<web base url>/microsoft_outlook/confirm` in the :guilabel:`URL` field. The `web.base.url`
|
||||
is subject to change depending on the URL used to log in to the database.
|
||||
|
||||
.. example::
|
||||
*mydatabase.odoo.com*, where *mydatabase* is the actual prefix of the database's subdomain,
|
||||
assuming it's hosted on Odoo.com
|
||||
.. note::
|
||||
The documentation about the :ref:`web.base.url <domain-name/web-base-url>` explains how to freeze
|
||||
a unique URL. It is also possible to add different redirect URLs on the Microsoft app.
|
||||
|
||||
After the URL has been added to the field, :guilabel:`Register` the application so it is created.
|
||||
After the URL has been added to the field, :guilabel:`Register` the application, so it is created.
|
||||
|
||||
API permissions
|
||||
---------------
|
||||
|
||||
@@ -195,18 +195,26 @@ Connection`.
|
||||
:alt: Odoo outgoing email server settings.
|
||||
|
||||
.. important::
|
||||
In order for the notifications feature to work using Mailjet, there are three settings that need
|
||||
to be set in Odoo.
|
||||
For the notifications feature to work using Mailjet, with a custom domain, the following settings
|
||||
need to be configured:
|
||||
|
||||
#. The :guilabel:`From Filter` needs to be set on the server configuration. It is recommended
|
||||
to set it as a domain and not a full email address. It should match the domain in the two
|
||||
#. The :guilabel:`From Filter` needs to be set on the server configuration. It is recommended to
|
||||
set it as a domain and not a full email address. It should match the domain in the two
|
||||
proceeding steps. More information can be referenced :ref:`here
|
||||
<email_communication/from_filter>`.
|
||||
#. The :guilabel:`mail.default.from` system parameter must have the value
|
||||
`notifications\@yourdomain.com`.
|
||||
#. The :guilabel:`mail.default.from_filter` system parameter must have the value
|
||||
`yourdomain.com`. Replace `yourdomain` with the custom domain for the Odoo database. If there
|
||||
isn't one, then use the :guilabel:`mail.catchall.domain` system parameter.
|
||||
`yourdomain.com`. Replace `yourdomain` with the custom domain.
|
||||
|
||||
If utilizing a database domain, and **not** a custom domain, the following settings need to be
|
||||
configured:
|
||||
|
||||
#. The :guilabel:`From Filter` needs to be set on the server configuration. It should match the
|
||||
domain in the two proceeding steps.
|
||||
#. The :guilabel:`mail.default.from` system parameter must have the value `notifications`.
|
||||
#. The :guilabel:`mail.default.from_filter` system parameter must have the value
|
||||
`yourdomain.odoo.com`.
|
||||
|
||||
For more information see :ref:`Using a default email address <email_communication/default>`.
|
||||
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
:nosearch:
|
||||
:show-content:
|
||||
:show-toc:
|
||||
|
||||
=======
|
||||
Devices
|
||||
@@ -14,3 +16,8 @@ Devices
|
||||
devices/footswitch
|
||||
devices/printer
|
||||
devices/scale
|
||||
|
||||
.. seealso::
|
||||
- :doc:`Worldline payment terminal
|
||||
<../../sales/point_of_sale/payment_methods/terminals/worldline>`
|
||||
- :doc:`Ingenico payment terminal <../../sales/point_of_sale/payment_methods/terminals/ingenico>`
|
||||
|
||||
@@ -1,61 +1,49 @@
|
||||
===============
|
||||
Change language
|
||||
===============
|
||||
================
|
||||
Change languages
|
||||
================
|
||||
|
||||
Odoo provides you with the option to manage Odoo in different languages,
|
||||
and each user can use Odoo in his own language .
|
||||
You select the language of your database upon its creation. However, you can
|
||||
:ref:`add <language/add>` and :ref:`install <language/install>` additional languages to allow users
|
||||
to manage the database in another language or to
|
||||
:doc:`translate <../../websites/website/configuration/translate>` your website.
|
||||
|
||||
Load your desired language
|
||||
==========================
|
||||
.. _language/add:
|
||||
|
||||
The first thing to do is to load your desired language on your Odoo
|
||||
instance.
|
||||
Add languages
|
||||
=============
|
||||
|
||||
From the general dashboard click on the **Settings** app; on the top
|
||||
left of the page select :menuselection:`Translations --> Load a Translation`,
|
||||
select a language to install and click on **LOAD.**
|
||||
To download additional languages:
|
||||
|
||||
.. image:: language/choose_language01.png
|
||||
:align: center
|
||||
- either click the profile icon in the upper-right corner, select :menuselection:`My profile`, and
|
||||
click the :icon:`fa-globe` (:guilabel:`globe`) icon next to the :guilabel:`Language` field;
|
||||
- or go to the **Settings** app, and click :guilabel:`Add Languages` in the :guilabel:`Languages`
|
||||
section.
|
||||
|
||||
.. note::
|
||||
|
||||
If you check the "Websites to translate" checkbox you will have the option
|
||||
to change the navigation language on your website.
|
||||
|
||||
Change your language
|
||||
====================
|
||||
|
||||
You can change the language to the installed language by going to the
|
||||
drop-down menu at the top right side of the screen, choose
|
||||
**Preferences**.
|
||||
|
||||
.. image:: language/choose_language02.png
|
||||
:align: center
|
||||
|
||||
Then change the Language setting to your installed language and click
|
||||
**SAVE.**
|
||||
|
||||
.. image:: language/choose_language03.png
|
||||
:align: center
|
||||
|
||||
Open a new menu to view the changes.
|
||||
|
||||
Change another user's language
|
||||
==============================
|
||||
|
||||
Odoo also gives you the possibility for each user to choose his
|
||||
preferred language.
|
||||
|
||||
To change the language for a different user, choose :menuselection:`Users --> Users`
|
||||
from the Settings app. Here you have a list of all users and you can
|
||||
choose the user who you'd like to change the language for. Select the
|
||||
user and click on **Edit** in the top left corner. Under Preferences you
|
||||
can change the Language to any previously installed language and click
|
||||
**SAVE.**
|
||||
|
||||
.. image:: language/choose_language04.png
|
||||
:align: center
|
||||
You can then select the languages you want from the dropdown menu and click :guilabel:`Add`.
|
||||
|
||||
.. seealso::
|
||||
* :doc:`../../websites/website/configuration/translate`
|
||||
:doc:`Translations <../../websites/website/configuration/translate>`
|
||||
|
||||
.. _language/install:
|
||||
|
||||
Change languages
|
||||
================
|
||||
|
||||
To select their preferred language, users can click the profile icon in the upper-right corner, go
|
||||
to :menuselection:`My profile`, and select a :guilabel:`Language` in the dropdown list.
|
||||
|
||||
Change another user's language
|
||||
------------------------------
|
||||
|
||||
To change the database language for a user:
|
||||
|
||||
#. Go to the :guilabel:`Settings` app and click :guilabel:`Manage Users` in the :guilabel:`Users`
|
||||
section.
|
||||
|
||||
#. Click on the user whose language you want to change.
|
||||
|
||||
#. Go to the :guilabel:`Preferences` tab and select a previously
|
||||
:ref:`installed language <language/add>` from the :guilabel:`Language` dropdown menu.
|
||||
|
||||
.. note::
|
||||
Emails and documents will be sent to the user in the selected language.
|
||||
|
||||
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 13 KiB |
@@ -156,6 +156,8 @@ on :guilabel:`Confirm Password`. Next, activate :abbr:`2FA (two-factor authentic
|
||||
|
||||
Finally, click :guilabel:`Enable two-factor authentication` to complete the setup.
|
||||
|
||||
.. _users-portal-payment-methods:
|
||||
|
||||
Change payment info
|
||||
-------------------
|
||||
|
||||
|
||||
@@ -3,8 +3,8 @@ Contracts
|
||||
=========
|
||||
|
||||
Every employee in Odoo is required to have a contract in order to be paid. A contract outlines the
|
||||
terms of an employee's position, their compensation, their working hours, and any other details
|
||||
about their position.
|
||||
terms of an employee's position, their compensation, working hours, and any other details about
|
||||
their position.
|
||||
|
||||
.. important::
|
||||
Contract documents (PDFs) are uploaded and organized using the *Documents* application, and are
|
||||
@@ -12,10 +12,10 @@ about their position.
|
||||
sign contracts. Please refer to the :doc:`/applications/productivity/documents` and
|
||||
:doc:`/applications/productivity/sign` documentation.
|
||||
|
||||
To view the employee contracts, go to the :menuselection:`Payroll app --> Employees --> Contracts`
|
||||
To view the employee contracts, go to the :menuselection:`Payroll app --> Contracts --> Contracts`
|
||||
from the top menu. All employee contracts, and their current contract status, are displayed in a
|
||||
default kanban view. The default view displays both running contracts and contracts that need
|
||||
action. Expired and canceled contracts are hidden in the default view.
|
||||
Kanban view, by default. The Kanban view displays running contracts, contracts that require action,
|
||||
expired contracts, and cancelled contracts.
|
||||
|
||||
.. image:: contracts/contracts-overview.png
|
||||
:align: center
|
||||
@@ -23,90 +23,96 @@ action. Expired and canceled contracts are hidden in the default view.
|
||||
|
||||
.. note::
|
||||
The list of contracts in the *Payroll* application matches the list of contracts in the
|
||||
*Employees* application. The default contracts view in the *Payroll* application displays running
|
||||
contracts and contracts needing attention, while the default contracts view in the *Employees*
|
||||
application displays all contracts in a kanban view, organized by their stage, regardless of
|
||||
status. All contracts can be viewed by changing the filters.
|
||||
*Employees* application.
|
||||
|
||||
Create a new contract
|
||||
=====================
|
||||
|
||||
In order for an employee to be paid, an active contract is required. If a new contract is needed,
|
||||
click the :guilabel:`Create` button on the contracts dashboard. A contract form appears where the
|
||||
information can be entered. Required fields are underlined in bold.
|
||||
click the :guilabel:`Create` button on the :guilabel:`Contracts` dashboard. A contract form appears
|
||||
where the information can be entered. Required fields are underlined in bold.
|
||||
|
||||
Required fields
|
||||
---------------
|
||||
New contract form
|
||||
-----------------
|
||||
|
||||
.. image:: contracts/required-fields.png
|
||||
:align: center
|
||||
:alt: New contract form to be filled in when creating a new contract.
|
||||
|
||||
- :guilabel:`Contact Reference`: Type in the name or title for the contract, such as `John Smith
|
||||
Contract`.
|
||||
- :guilabel:`Company`: Select the company the contract applies to by clicking on the drop-down menu.
|
||||
A new company can be created by typing the name in the field, then clicking either
|
||||
:guilabel:`Create` to create the new company, or :guilabel:`Create and Edit` to create the new
|
||||
company and edit the company details.
|
||||
- :guilabel:`Salary Structure Type`: Select one of the salary structure types from the drop-down
|
||||
- :guilabel:`Contact Reference`: type in the name or title for the contract, such as `John Smith
|
||||
Contract`. This field is **required**.
|
||||
- :guilabel:`Employee`: name of the employee the contract applies to.
|
||||
- :guilabel:`Contract Start Date`: the date the contract starts. Choose a date by clicking on the
|
||||
drop-down menu, navigating to the correct month and year by using the :icon:`fa-chevron-left`
|
||||
:icon:`fa-chevron-right` :guilabel:`(arrow)` icons, then clicking on the desired date. This field
|
||||
is **required**.
|
||||
- :guilabel:`Contract End Date`: the date the contract ends. Choose a date by clicking on the
|
||||
drop-down menu, navigating to the correct month and year by using the :icon:`fa-chevron-left`
|
||||
:icon:`fa-chevron-right` :guilabel:`(arrow)` icons, then clicking on the desired date. This field
|
||||
is **required**.
|
||||
- :guilabel:`Salary Structure Type`: select one of the salary structure types from the drop-down
|
||||
menu. The default salary structure types are :guilabel:`Employee` or :guilabel:`Worker`. A new
|
||||
salary structure type can be created by typing the name in the field.
|
||||
- :guilabel:`Start Date`: The date the contract starts. Choose a date by clicking on the drop-down
|
||||
menu, navigating to the correct month and year by using the :guilabel:`< > (arrow)` icons, then
|
||||
clicking on the :guilabel:`date`.
|
||||
- :guilabel:`Working Schedule`: Select one of the working schedules from the drop-down menu.
|
||||
|
||||
.. tip::
|
||||
The :guilabel:`Working Schedule` drop-down menu displays all the working times for the selected
|
||||
:guilabel:`Company`. To modify or add to this list, go to :menuselection:`Payroll -->
|
||||
Configuration --> Working Times` and either :guilabel:`Create` a new working time or click on an
|
||||
existing working time and edit it by clicking :guilabel:`Edit`.
|
||||
|
||||
Optional fields
|
||||
---------------
|
||||
|
||||
- :guilabel:`Employee`: Name of the employee that the contract applies to.
|
||||
- :guilabel:`Department`: The department the contract applies to.
|
||||
- :guilabel:`Job Position`: The specific job position the contract applies to.
|
||||
- :guilabel:`Contract Type`: Choose from :guilabel:`CDI`, :guilabel:`CDD`, or :guilabel:`PFI` from
|
||||
salary structure type can be created by typing the name in the field. This field is **required**.
|
||||
- :guilabel:`Working Schedule`: select one of the working schedules from the drop-down menu. This
|
||||
field is **required**.
|
||||
- :guilabel:`Department`: the department the contract applies to.
|
||||
- :guilabel:`Job Position`: the specific job position the contract applies to.
|
||||
- :guilabel:`Wage on Payroll`: the amount to be paid to the employee each month.
|
||||
- :guilabel:`Contract Type`: choose from :guilabel:`CDI`, :guilabel:`CDD`, or :guilabel:`PFI` from
|
||||
the drop-down menu.
|
||||
|
||||
- :guilabel:`CDI` is an open-ended contract with only a start date but no end date.
|
||||
- :guilabel:`CDI` is an open-ended contract with only a start date, but no end date.
|
||||
- :guilabel:`CDD` is a contract with both a start date and an end date.
|
||||
- :guilabel:`PFI` is a Belgian-specific contract used when hiring employees that need training,
|
||||
and covers the training period specifically.
|
||||
|
||||
- :guilabel:`End Date`: If the contract has a specific end date, click the drop-down menu, navigate
|
||||
to the correct month and year using the arrow icons, then click on the date.
|
||||
- :guilabel:`HR Responsible`: If there is a specific person in HR that is responsible for the
|
||||
contract, select the person from the drop-down menu.
|
||||
- :guilabel:`Analytic Account`: This field allows a link between the contract and a specific
|
||||
analytic account for accounting purposes.
|
||||
- :guilabel:`HR Responsible`: if there is a specific person in HR that is responsible for the
|
||||
contract, select the person from the drop-down menu. This field is required.
|
||||
|
||||
.. tip::
|
||||
The :guilabel:`Working Schedule` drop-down menu displays all the working times for the selected
|
||||
:guilabel:`Company`. To modify or add to this list, go to :menuselection:`Payroll app -->
|
||||
Configuration --> Working Times`, and either :guilabel:`Create` a new working time, or click on
|
||||
an existing working time, then edit it by clicking :guilabel:`Edit`.
|
||||
|
||||
Contract details
|
||||
----------------
|
||||
|
||||
The contract details section allows for the addition and editing of a contract, and the ability to
|
||||
send the contract to the employee for approval and signatures.
|
||||
The :guilabel:`Contract Details` tab allows for the addition and editing of a contract, along with
|
||||
specifying which template to use when a new contract is created. These fields **must** be populated
|
||||
in order to create a new contract.
|
||||
|
||||
.. important::
|
||||
To access the various contract template fields in the :guilabel:`Contract Details` tab, the
|
||||
*Salary Configurator* (`hr_contract_salary`) module **must** be :ref:`installed
|
||||
<general/install>`.
|
||||
|
||||
When the *Salary Configurator* module is installed, the *Salary Configurator - Holidays* and
|
||||
*Salary Configurator - Payroll* modules install, as well.
|
||||
|
||||
Once the modules are installed, the database reverts to the main dashboard.
|
||||
|
||||
.. image:: contracts/contract-details.png
|
||||
:align: center
|
||||
:alt: Contract details in optional tabs for a new contract.
|
||||
|
||||
- :guilabel:`Contract Template`: Select a pre-existing contract template from the drop-down menu.
|
||||
- :guilabel:`Analytic Account`: this field allows a link between the contract and a specific
|
||||
analytic account for accounting purposes.
|
||||
- :guilabel:`Contract Template`: select a pre-existing contract template from the drop-down menu.
|
||||
Contract templates are typically created through the *Recruitment* application.
|
||||
- :guilabel:`New Contract Document Template`: Select a contract from the drop-down menu to be
|
||||
- :guilabel:`New Contract Document Template`: select a contract from the drop-down menu to be
|
||||
modified for this new employee contract.
|
||||
- :guilabel:`Contract Update Document Template`: Select a contract from the drop-down menu if the
|
||||
- :guilabel:`Contract Update Document Template`: select a contract from the drop-down menu, if the
|
||||
employee has an existing contract that requires updating.
|
||||
- :guilabel:`Notes`: The notes field is a text field where any notes for the employee contract can
|
||||
- :guilabel:`Notes`: the notes field is a text field where any notes for the employee contract can
|
||||
be entered for future reference.
|
||||
|
||||
Modifying a contract
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
Modify a contract template
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Click the :guilabel:`External Link` button at the end of each line to open the corresponding
|
||||
contract template and make any changes.
|
||||
Click the :icon:`fa-external-link` :guilabel:`(external Link)` icon at the end of either the
|
||||
:guilabel:`New Contract Document Template` or :guilabel:`Contract Update Document Template` to open
|
||||
the corresponding contract template, and proceed to make any desired changes.
|
||||
|
||||
.. image:: contracts/external-link.png
|
||||
:align: center
|
||||
@@ -118,23 +124,26 @@ A pop-up window appears with all the contract details. Modify the fields for the
|
||||
:align: center
|
||||
:alt: Edit the details for the contract.
|
||||
|
||||
- :guilabel:`Tags`: Select any tags associated with the contract.
|
||||
- :guilabel:`Signed Document Workspace`: This is where the signatures are stored. Choose a
|
||||
pre-configured workspace or create a new one.
|
||||
- :guilabel:`Signed Document Tags`: Select or create any tags associated only with the signed
|
||||
contract as opposed to the original unsigned contract.
|
||||
- :guilabel:`Redirect Link`: Enter a redirect link for the employee to access the contract. A
|
||||
redirect link takes the user from one URL to another, in this case, to the newly updated contract
|
||||
specifically written for them.
|
||||
- :guilabel:`Who can Sign`: Select either :guilabel:`All Users` or :guilabel:`On Invitation`.
|
||||
- :guilabel:`Tags`: select any tags associated with the contract.
|
||||
- :guilabel:`Signed Document Workspace`: this is where the signatures are stored. Choose a
|
||||
pre-configured workspace, or create a new one. To create a new :guilabel:`Signed Document
|
||||
Workspace`, type in the name of the workspace, then click either :guilabel:`Create` to add the new
|
||||
workspace, or :guilabel:`Create and Edit` to add the workspace and modify the workspace details.
|
||||
- :guilabel:`Signed Document Tags`: select or create any tags that are only associated with the
|
||||
signed contract, as opposed to the original unsigned contract.
|
||||
- :guilabel:`Redirect Link`: enter a redirect link for the employee to access the contract. A
|
||||
redirect link takes the user from one URL to another. In this case, it takes them to the
|
||||
newly-updated contract specifically written for them.
|
||||
- :guilabel:`Who can Sign`: select either :guilabel:`All Users` or :guilabel:`On Invitation`.
|
||||
|
||||
- :guilabel:`All Users`: Any user in the organization can sign the contract.
|
||||
- :guilabel:`On Invitation`: Only users selected in this field can sign the contract.
|
||||
- :guilabel:`All Users`: any user in the organization can sign the contract.
|
||||
- :guilabel:`On Invitation`: only users selected in this field can sign the contract.
|
||||
|
||||
- :guilabel:`Invited Users`: Select the person(s) that can sign the document.
|
||||
- :guilabel:`Document`: The attached document can be replaced by clicking the :guilabel:`✏️
|
||||
(pencil)` icon. A pop-up window appears so another document can be selected for upload. The file
|
||||
must be a PDF. To remove the document, click the :guilabel:`🗑️ (trash can)` icon.
|
||||
- :guilabel:`Invited Users`: select the person (or people) that can sign the document.
|
||||
- :guilabel:`Document`: the attached document can be replaced by clicking the :icon:`fa-pencil`
|
||||
:guilabel:`(pencil)` icon. A pop-up window appears, so another document can be selected for
|
||||
upload. The file **must** be a PDF. To remove the document, click the :icon:`fa-trash-o`
|
||||
:guilabel:`(trash can)` icon.
|
||||
|
||||
Once the edits are complete, click the :guilabel:`Save` button. All the information for the selected
|
||||
contract template populates the fields in the :guilabel:`Salary Information` tab. Any additional
|
||||
@@ -148,44 +157,25 @@ Salary information
|
||||
:alt: Optional tabs for a new contract.
|
||||
|
||||
This section is where the specific salary details are defined. This section is country-specific, so
|
||||
depending on where the company is located, these fields may vary.
|
||||
these fields vary, depending on where the company is located.
|
||||
|
||||
Enter the amount in the various fields, or check a box to apply a benefit. Some options that can be
|
||||
entered here include :guilabel:`Meal Vouchers`, :guilabel:`Fuel Card`, :guilabel:`Internet`,
|
||||
:guilabel:`Paid Time Off`, etc.
|
||||
Enter the amount in the various fields, or tick a checkbox to apply a benefit. Some options that can
|
||||
be entered here include :guilabel:`Group Insurance Sacrifice Rate` and :guilabel:`Canteen Cost`, for
|
||||
example.
|
||||
|
||||
Some fields may be automatically filled in based off of the contracts selected in the
|
||||
:guilabel:`Contract Details` tab.
|
||||
Some fields may be automatically filled in as other fields are entered. For example, the
|
||||
:guilabel:`Yearly Cost (Real)` and :guilabel:`Monthly Cost (Real)` updates once the :guilabel:`Wage`
|
||||
is populated.
|
||||
|
||||
Attachment of salary
|
||||
--------------------
|
||||
Personal documents
|
||||
------------------
|
||||
|
||||
Any automatic deductions or allocations for an employee, such as child support payments and wage
|
||||
garnishments, are referred to as a *salary attachment*. This section is where all of these
|
||||
deductions or allocations are set.
|
||||
This tab **only** appears after an :guilabel:`Employee` is selected, and houses any documents that
|
||||
are linked to the employee on their employee record. Documents cannot be added to this tab, this tab
|
||||
**only** shows documents that are already uploaded and associated with the employee.
|
||||
|
||||
To add a new deduction, click :guilabel:`Add a line`. Type in a description for the allocation under
|
||||
:guilabel:`Description`.
|
||||
|
||||
.. image:: contracts/garnishment.png
|
||||
:align: center
|
||||
:alt: Enter a new line for each type of garnishment.
|
||||
|
||||
Select the :guilabel:`Garnished Type` from the drop-down menu. Choose from:
|
||||
|
||||
- :guilabel:`Attachment of Salary`: Any payments taken out towards something that is *not* child
|
||||
support. Typically any garnishments such as lawsuit payments, payments toward taxes owed, etc.
|
||||
- :guilabel:`Assignment of Salary`: Any deduction that is not required but voluntary, such as a
|
||||
pre-tax allocation to a college savings account.
|
||||
- :guilabel:`Child Support`: Any payments taken out specifically for child support.
|
||||
|
||||
Enter the start and end dates the entry applies to. Click on the drop-down menu under
|
||||
:guilabel:`From` and :guilabel:`To`, navigate to the correct month and year by using the
|
||||
:guilabel:`< > (arrow)` icons, then click on the :guilabel:`date`.
|
||||
|
||||
Last, enter the :guilabel:`Amount` that each payslip pays towards the entry.
|
||||
|
||||
To delete a line, click the :guilabel:`🗑️ (trash can)` icon at the end of the line.
|
||||
The available documents in this tab can be downloaded. Click the :icon:`fa-download`
|
||||
:guilabel:`(download)` icon next to the document to download it.
|
||||
|
||||
Save and send the contract
|
||||
--------------------------
|
||||
@@ -199,21 +189,21 @@ Click on one of the following buttons to send the contract to the employee:
|
||||
:align: center
|
||||
:alt: Send the contract to the employee via one of the buttons.
|
||||
|
||||
- :guilabel:`Generate Simulation Link`: This option is for Belgian companies only. Clicking this
|
||||
opens a pop-up window that contains the basic information from the contract as well as a link for
|
||||
the contract when using the salary configurator. Click :guilabel:`Send Offer` to send an email to
|
||||
the employee so they can sign the contract.
|
||||
- :guilabel:`Generate Simulation Link`: this option is **only** for Belgian companies. Clicking this
|
||||
opens a pop-up window that contains the basic information from the contract, as well as a link for
|
||||
the contract when using the salary configurator. Click :guilabel:`Send` to send an email to the
|
||||
employee, so they can sign the contract.
|
||||
|
||||
.. image:: contracts/simulation.png
|
||||
:align: center
|
||||
:alt: Sends a link to the employee for the contract.
|
||||
|
||||
.. note::
|
||||
In order to send a contract using the :guilabel:`Generate Simulation Link`, there must be a
|
||||
signature field in the contract PDF being sent to the employee so they can sign it.
|
||||
In order to send a contract using the :guilabel:`Generate Simulation Link`, there **must** be a
|
||||
signature field in the contract PDF being sent to the employee, so they can sign it.
|
||||
|
||||
- :guilabel:`Signature Request`: Click this and a pop-up window appears where an email can be typed
|
||||
to the employee. Select the document, such as a contract, NDA, or Homeworking Policy, from the
|
||||
- :guilabel:`Signature Request`: clicking this reveals a pop-up window, where an email can be typed
|
||||
to the employee. Select the document (such as a contract, NDA, or Homeworking Policy) from the
|
||||
drop-down menu, and fill out the email section. Click :guilabel:`Send` when the email is ready to
|
||||
be sent.
|
||||
|
||||
@@ -221,5 +211,48 @@ Click on one of the following buttons to send the contract to the employee:
|
||||
:align: center
|
||||
:alt: Request a signature for the contract via email.
|
||||
|
||||
- :guilabel:`Credit Time`: This option is for Belgian companies only. When clicked, a pop-up window
|
||||
appears that allows for the changing of working times, and can compute time off.
|
||||
Salary attachments
|
||||
------------------
|
||||
|
||||
Any automatic deductions or allocations for an employee, such as child support payments and wage
|
||||
garnishments, are referred to as a *salary attachment*. This section is where all of these
|
||||
deductions or allocations are set.
|
||||
|
||||
To add a new deduction, first navigate to :menuselection:`Payroll app --> Contracts --> Salary
|
||||
Attachments`. Next, click :guilabel:`Create`, and a new salary attachment form loads.
|
||||
|
||||
.. image:: contracts/garnishment.png
|
||||
:align: center
|
||||
:alt: The salary attachment form with everything filled in for Ronnie Hart's child support.
|
||||
|
||||
Fill out the following fields on the form:
|
||||
|
||||
- :guilabel:`Employee`: using the drop-down menu, select the employee the salary attachment applies
|
||||
to.
|
||||
- :guilabel:`Description`: enter a short description for the salary attachment, such as `Child
|
||||
Support` or `529 Contribution`.
|
||||
- :guilabel:`Type`: using the drop-down menu, select the type of salary attachment being created.
|
||||
Choose from:
|
||||
|
||||
- :guilabel:`Attachment of Salary`: any payments taken out towards something that is *not* child
|
||||
support. Typically any garnishments, such as lawsuit payments, payments toward taxes owed, etc.
|
||||
- :guilabel:`Assignment of Salary`: any deduction that is not required, but voluntary, such as a
|
||||
pre-tax allocation to a college savings account.
|
||||
- :guilabel:`Child Support`: any payments taken out specifically for child support.
|
||||
|
||||
- :guilabel:`Start Date`: the date the salary attachment starts. Choose a date by clicking on the
|
||||
drop-down menu, navigating to the correct month and year by using the :icon:`fa-chevron-left`
|
||||
:icon:`fa-chevron-right` :guilabel:`(arrow)` icons, then clicking on the desired date. This field
|
||||
is **required**.
|
||||
- :guilabel:`Estimated End Date`: this field automatically populates after both the
|
||||
:guilabel:`Monthly Amount` and :guilabel:`Total Amount` fields are populated. This field is
|
||||
**not** modifiable.
|
||||
- :guilabel:`Document`: attach any documents relevant to the salary attachment. Click the
|
||||
:guilabel:`Upload Your File` button, navigate to the desired document in the file explorer, then
|
||||
click :guilabel:`Open` to select the document, and attach it to the form. To change the attached
|
||||
document, click the :icon:`fa-pencil` :guilabel:`(pencil)` icon, and select a different document.
|
||||
To remove a document, click the :icon:`fa-trash-o` :guilabel:`(trash can)` icon.
|
||||
- :guilabel:`Monthly Amount`: enter the amount to be taken out of the employee's paycheck every
|
||||
month for this specific salary attachment.
|
||||
- :guilabel:`Total Amount`: enter the total amount that the employee pays for the salary attachment
|
||||
to be completed.
|
||||
|
||||
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 6.0 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 6.4 KiB After Width: | Height: | Size: 9.5 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 9.4 KiB After Width: | Height: | Size: 11 KiB |