Compare commits
122 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 222426d0a0 | |||
| 112551a0f7 | |||
| 1e90d132a6 | |||
| ac71b91edc | |||
| e3e39a0177 | |||
| f1a3515f83 | |||
| ccc9337f2c | |||
| 7f7ff980ec | |||
| bd285ab701 | |||
| 483cb357d4 | |||
| 57712dfb99 | |||
| 44388a8645 | |||
| b639c62201 | |||
| a3a1be4fb7 | |||
| 07122aa8a8 | |||
| 9490048209 | |||
| c31d61cb5b | |||
| 085613f63e | |||
| 0292755fe1 | |||
| 6d7d9aacb7 | |||
| 71b426177a | |||
| b29eae5102 | |||
| 3218baee71 | |||
| 08a3f15732 | |||
| d458c753b5 | |||
| 740cf75f94 | |||
| 6395455f0b | |||
| 381ae7793b | |||
| 7d8368e553 | |||
| 07ef80ec47 | |||
| 973c9a1f5a | |||
| d7b4114728 | |||
| 2e661006e5 | |||
| 7c2a16b28d | |||
| 44b4138a45 | |||
| 7b6f0d9226 | |||
| 24bf905cd9 | |||
| f3d2381bf4 | |||
| 117aae0771 | |||
| 9c4d9b35dc | |||
| bd5fdcfbb4 | |||
| 8b7c7f4b6e | |||
| eed7e42a14 | |||
| 11cc952979 | |||
| 9049311711 | |||
| 51369b1001 | |||
| 1e551ebb73 | |||
| 9dfef5e151 | |||
| 4a927f0d46 | |||
| 9b3e9a3c8e | |||
| 987a40cb29 | |||
| e6ffeb0da4 | |||
| cfd0fbe6b0 | |||
| dfa899e959 | |||
| 76d6a9a84e | |||
| 343d8cafb4 | |||
| 72ccbd43d7 | |||
| 4caa891ad8 | |||
| dcb48c3dc4 | |||
| 8b7be69be6 | |||
| 81f28e0793 | |||
| f1a607a9c7 | |||
| 9368181d04 | |||
| d87271002b | |||
| 783ab8f2c0 | |||
| da0360cdd5 | |||
| e17d6d7689 | |||
| e174fa9e3e | |||
| 3d2422b3bd | |||
| d7eb8f014b | |||
| 9a2921ba52 | |||
| c42963cda9 | |||
| 38ce2431e5 | |||
| 5c43477540 | |||
| e56cfe5e48 | |||
| 5627bea8aa | |||
| 3f048e7997 | |||
| a13bf9b24f | |||
| 615d282910 | |||
| f820f189a2 | |||
| 1d17ceda3c | |||
| 4b5b008063 | |||
| ba3ba3c93b | |||
| 5765edca11 | |||
| 78225635f4 | |||
| c2e60da73d | |||
| 5144c006ef | |||
| 4df1b8ec7a | |||
| 840a739396 | |||
| 3692e684c4 | |||
| 7e60e64125 | |||
| d35306daca | |||
| 8e23bc4ccb | |||
| ff86bf4e67 | |||
| 8c80d01693 | |||
| 0d4ae20ed8 | |||
| b46e7c8ef0 | |||
| 8c895b05e4 | |||
| 884c0b0c57 | |||
| 279527cb73 | |||
| c6208a51ef | |||
| 16c6c0f492 | |||
| ca39c79dfe | |||
| 196361f8ae | |||
| a5cfacc973 | |||
| cab5ad8532 | |||
| e7b777bebd | |||
| 707b5842cb | |||
| abdb31b852 | |||
| 769793b56c | |||
| f8a114b334 | |||
| ea7fd9b847 | |||
| 33c6784f68 | |||
| 2948da8318 | |||
| a3a667baa9 | |||
| 06135f66b7 | |||
| 985373622a | |||
| ea54d7f4b6 | |||
| 3efe78c40f | |||
| e2a99be2fa | |||
| 28cd889ecb | |||
| d8ee860d02 |
@@ -1,7 +1,7 @@
|
||||
[main]
|
||||
host = https://www.transifex.com
|
||||
|
||||
[o:odoo:p:odoo-17-doc:r:administration]
|
||||
[o:odoo:p:odoo-18-doc:r:administration]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/administration.po
|
||||
source_file = locale/sources/administration.pot
|
||||
type = POT
|
||||
@@ -11,7 +11,7 @@ replace_edited_strings = false
|
||||
keep_translations = false
|
||||
source_lang = en
|
||||
|
||||
[o:odoo:p:odoo-17-doc:r:applications]
|
||||
[o:odoo:p:odoo-18-doc:r:applications]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/applications.po
|
||||
source_file = locale/sources/applications.pot
|
||||
type = POT
|
||||
@@ -21,7 +21,7 @@ replace_edited_strings = false
|
||||
keep_translations = false
|
||||
source_lang = en
|
||||
|
||||
[o:odoo:p:odoo-17-doc:r:essentials]
|
||||
[o:odoo:p:odoo-18-doc:r:essentials]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/essentials.po
|
||||
source_file = locale/sources/essentials.pot
|
||||
type = POT
|
||||
@@ -31,7 +31,7 @@ replace_edited_strings = false
|
||||
keep_translations = false
|
||||
source_lang = en
|
||||
|
||||
[o:odoo:p:odoo-17-doc:r:finance]
|
||||
[o:odoo:p:odoo-18-doc:r:finance]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/finance.po
|
||||
source_file = locale/sources/finance.pot
|
||||
type = POT
|
||||
@@ -41,7 +41,7 @@ replace_edited_strings = false
|
||||
keep_translations = false
|
||||
source_lang = en
|
||||
|
||||
[o:odoo:p:odoo-17-doc:r:general]
|
||||
[o:odoo:p:odoo-18-doc:r:general]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/general.po
|
||||
source_file = locale/sources/general.pot
|
||||
type = POT
|
||||
@@ -51,7 +51,7 @@ replace_edited_strings = false
|
||||
keep_translations = false
|
||||
source_lang = en
|
||||
|
||||
[o:odoo:p:odoo-17-doc:r:hr]
|
||||
[o:odoo:p:odoo-18-doc:r:hr]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/hr.po
|
||||
source_file = locale/sources/hr.pot
|
||||
type = POT
|
||||
@@ -61,7 +61,7 @@ replace_edited_strings = false
|
||||
keep_translations = false
|
||||
source_lang = en
|
||||
|
||||
[o:odoo:p:odoo-17-doc:r:index]
|
||||
[o:odoo:p:odoo-18-doc:r:index]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/index.po
|
||||
source_file = locale/sources/index.pot
|
||||
type = POT
|
||||
@@ -71,7 +71,7 @@ replace_edited_strings = false
|
||||
keep_translations = false
|
||||
source_lang = en
|
||||
|
||||
[o:odoo:p:odoo-17-doc:r:inventory_and_mrp]
|
||||
[o:odoo:p:odoo-18-doc:r:inventory_and_mrp]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/inventory_and_mrp.po
|
||||
source_file = locale/sources/inventory_and_mrp.pot
|
||||
type = POT
|
||||
@@ -81,7 +81,7 @@ replace_edited_strings = false
|
||||
keep_translations = false
|
||||
source_lang = en
|
||||
|
||||
[o:odoo:p:odoo-17-doc:r:marketing]
|
||||
[o:odoo:p:odoo-18-doc:r:marketing]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/marketing.po
|
||||
source_file = locale/sources/marketing.pot
|
||||
type = POT
|
||||
@@ -91,7 +91,7 @@ replace_edited_strings = false
|
||||
keep_translations = false
|
||||
source_lang = en
|
||||
|
||||
[o:odoo:p:odoo-17-doc:r:productivity]
|
||||
[o:odoo:p:odoo-18-doc:r:productivity]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/productivity.po
|
||||
source_file = locale/sources/productivity.pot
|
||||
type = POT
|
||||
@@ -101,7 +101,7 @@ replace_edited_strings = false
|
||||
keep_translations = false
|
||||
source_lang = en
|
||||
|
||||
[o:odoo:p:odoo-17-doc:r:sales]
|
||||
[o:odoo:p:odoo-18-doc:r:sales]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/sales.po
|
||||
source_file = locale/sources/sales.pot
|
||||
type = POT
|
||||
@@ -111,7 +111,7 @@ replace_edited_strings = false
|
||||
keep_translations = false
|
||||
source_lang = en
|
||||
|
||||
[o:odoo:p:odoo-17-doc:r:services]
|
||||
[o:odoo:p:odoo-18-doc:r:services]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/services.po
|
||||
source_file = locale/sources/services.pot
|
||||
type = POT
|
||||
@@ -121,7 +121,7 @@ replace_edited_strings = false
|
||||
keep_translations = false
|
||||
source_lang = en
|
||||
|
||||
[o:odoo:p:odoo-17-doc:r:user_settings]
|
||||
[o:odoo:p:odoo-18-doc:r:user_settings]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/settings.po
|
||||
source_file = locale/sources/settings.pot
|
||||
type = POT
|
||||
@@ -131,7 +131,7 @@ replace_edited_strings = false
|
||||
keep_translations = false
|
||||
source_lang = en
|
||||
|
||||
[o:odoo:p:odoo-17-doc:r:studio]
|
||||
[o:odoo:p:odoo-18-doc:r:studio]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/studio.po
|
||||
source_file = locale/sources/studio.pot
|
||||
type = POT
|
||||
@@ -141,7 +141,7 @@ replace_edited_strings = false
|
||||
keep_translations = false
|
||||
source_lang = en
|
||||
|
||||
[o:odoo:p:odoo-17-doc:r:websites]
|
||||
[o:odoo:p:odoo-18-doc:r:websites]
|
||||
file_filter = locale/<lang>/LC_MESSAGES/websites.po
|
||||
source_file = locale/sources/websites.pot
|
||||
type = POT
|
||||
|
||||
@@ -231,18 +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`
|
||||
@@ -251,7 +245,9 @@ languages_names = {
|
||||
'de': 'DE',
|
||||
'en': 'EN',
|
||||
'es': 'ES',
|
||||
'es_419': 'ES (LATAM)',
|
||||
'fr': 'FR',
|
||||
'id': 'ID',
|
||||
'it': 'IT',
|
||||
'ja': 'JA',
|
||||
'ko': 'KR',
|
||||
@@ -261,6 +257,7 @@ languages_names = {
|
||||
'sv': 'SV',
|
||||
'th': 'TH',
|
||||
'uk': 'UA',
|
||||
'vi': 'VI',
|
||||
'zh_CN': 'ZH (CN)',
|
||||
'zh_TW': 'ZH (TW)'
|
||||
}
|
||||
|
||||
@@ -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.
|
||||
|
||||
|
||||
@@ -31,24 +31,24 @@ This matrix shows the support status of every version.
|
||||
- On-Premise
|
||||
- Release date
|
||||
- End of support
|
||||
* - Odoo saas~17.4
|
||||
* - **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
|
||||
* - 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|
|
||||
@@ -60,31 +60,25 @@ This matrix shows the support status of every version.
|
||||
- |green|
|
||||
- |green|
|
||||
- October 2022
|
||||
- November 2025 (planned)
|
||||
- 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
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ Upgrade
|
||||
=======
|
||||
|
||||
An upgrade involves moving a database from an older version to a newer supported version (e.g., from
|
||||
Odoo 15.0 to Odoo 17.0). Regular upgrades are crucial as each version offers new features, bug
|
||||
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.
|
||||
|
||||
@@ -13,11 +13,11 @@ Depending on the hosting type and Odoo version used, a database upgrade can be *
|
||||
|
||||
.. group-tab:: Odoo Online
|
||||
|
||||
- If a database is on a **major version** (e.g., 15.0, 16.0, 17.0), an upgrade is mandatory
|
||||
- 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
|
||||
three months.
|
||||
two months.
|
||||
|
||||
.. group-tab:: Odoo.sh
|
||||
|
||||
@@ -430,10 +430,8 @@ 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::
|
||||
|
||||
@@ -10,3 +10,4 @@ Odoo essentials
|
||||
essentials/contacts
|
||||
essentials/export_import_data
|
||||
essentials/in_app_purchase
|
||||
essentials/keyboard_shortcuts
|
||||
|
||||
@@ -4,9 +4,9 @@
|
||||
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.
|
||||
Contacts are created in the **Contacts** application 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
|
||||
============
|
||||
|
||||
@@ -0,0 +1,86 @@
|
||||
==================
|
||||
Keyboard shortcuts
|
||||
==================
|
||||
|
||||
Users in Odoo can utilize several keyboard shortcuts to navigate through modules, execute actions,
|
||||
and manage data.
|
||||
|
||||
.. tip::
|
||||
Hold :kbd:`Ctrl` to view the keyboard shortcuts assigned to each element on the interface.
|
||||
|
||||
.. image:: keyboard_shortcuts/menu-shortcuts.png
|
||||
:align: center
|
||||
:alt: A selection of keyboard shortcuts in Odoo.
|
||||
|
||||
.. important::
|
||||
Some keyboard shortcuts may not be available on different versions of Odoo or effective depending
|
||||
on browsers, extensions, or other individual settings.
|
||||
|
||||
Keyboard shortcuts by operating system
|
||||
======================================
|
||||
|
||||
Below is a list of some of the most commonly used keyboard shortcuts within Odoo, listed by
|
||||
operating system.
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
:stub-columns: 1
|
||||
|
||||
* - Description
|
||||
- Windows / Linux
|
||||
- macOS
|
||||
* - Previous breadcrumb
|
||||
- :kbd:`Alt` + :kbd:`B`
|
||||
- :kbd:`Ctrl` + :kbd:`B`
|
||||
* - Create new record
|
||||
- :kbd:`Alt` + :kbd:`C`
|
||||
- :kbd:`Ctrl` + :kbd:`C`
|
||||
* - Odoo Home Page
|
||||
- :kbd:`Alt` + :kbd:`H`
|
||||
- :kbd:`Ctrl` + :kbd:`H`
|
||||
* - Discard changes
|
||||
- :kbd:`Alt` + :kbd:`J`
|
||||
- :kbd:`Ctrl` + :kbd:`J`
|
||||
* - Save changes
|
||||
- :kbd:`Alt` + :kbd:`S`
|
||||
- :kbd:`Ctrl` + :kbd:`S`
|
||||
* - Next page
|
||||
- :kbd:`Alt` + :kbd:`N`
|
||||
- :kbd:`Ctrl` + :kbd:`N`
|
||||
* - Previous page
|
||||
- :kbd:`Alt` + :kbd:`P`
|
||||
- :kbd:`Ctrl` + :kbd:`P`
|
||||
* - Search
|
||||
- :kbd:`Alt` + :kbd:`Q`
|
||||
- :kbd:`Ctrl` + :kbd:`Q`
|
||||
* - Select menus
|
||||
- :kbd:`Alt` + :kbd:`1-9`
|
||||
- :kbd:`Ctrl` + :kbd:`1-9`
|
||||
* - Create a new To-Do
|
||||
- :kbd:`Alt` + :kbd:`Shift` + :kbd:`T`
|
||||
- :kbd:`Ctrl` + :kbd:`Shift` + :kbd:`T`
|
||||
* - Search a Knowledge article
|
||||
- :kbd:`Alt` + :kbd:`F`
|
||||
- :kbd:`Ctrl` + :kbd:`F`
|
||||
* - Share a Knowledge article
|
||||
- :kbd:`Alt` + :kbd:`Shift` + :kbd:`S`
|
||||
- :kbd:`Ctrl` + :kbd:`Shift` + :kbd:`S`
|
||||
* - Open command palette
|
||||
- :kbd:`Ctrl` + :kbd:`K`
|
||||
- :kbd:`Command` + :kbd:`K`
|
||||
|
||||
.. tip::
|
||||
After opening the command palette, search using the following keyboard shortcuts:
|
||||
|
||||
- :kbd:`/`: search for menus, applications, and modules.
|
||||
- :kbd:`@`: search for users.
|
||||
- :kbd:`#`: search for **Discuss** channels.
|
||||
- :kbd:`?`: search for **Knowledge** articles.
|
||||
|
||||
Enter a name (or term) in the search bar, or use the arrow keys to scroll through the available
|
||||
options. Then, click :kbd:`Ctrl` + :kbd:`Enter` to open the selected app, module, or menu in a
|
||||
new tab.
|
||||
|
||||
.. image:: keyboard_shortcuts/command-palete.png
|
||||
:align: center
|
||||
:alt: The command palette in Odoo, with the menu search option selected.
|
||||
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 5.7 KiB |
@@ -193,4 +193,4 @@ Payments` tab. To display the outstanding accounts column, click on the toggle b
|
||||
bank/reconciliation
|
||||
bank/reconciliation_models
|
||||
bank/foreign_currency
|
||||
bank/cash_register
|
||||
bank/loans
|
||||
|
||||
@@ -42,7 +42,7 @@ First synchronization
|
||||
---------------------
|
||||
|
||||
You can start synchronization either by going to the Accounting app and
|
||||
:menuselection:`Accounting Dashboard --> Configuration --> Banks: Add a Bank Account`.
|
||||
:menuselection:`Accounting --> Configuration --> Add a Bank Account`.
|
||||
|
||||
Now you can search for your bank institution. Select it and follow the steps to synchronize with it.
|
||||
|
||||
@@ -70,19 +70,19 @@ By default, transactions fetched from an online source are grouped inside the sa
|
||||
one bank statement is created per month. You can change the bank statement creation periodicity
|
||||
in your journal settings.
|
||||
|
||||
You can find all your synchronizations by going to :menuselection:`Accounting Dashboard -->
|
||||
Configuration --> Accounting: Online Synchronization`.
|
||||
To view all your synchronizations, activate the :ref:`developer mode <developer-mode>` and go to
|
||||
:menuselection:`Accounting --> Configuration --> Online Synchronization`.
|
||||
|
||||
Synchronize manually
|
||||
--------------------
|
||||
|
||||
After your first synchronization, the created journals are synchronized by default every 12 hours.
|
||||
If you wish, you can synchronize manually by clicking on the :guilabel:`Synchronize Now` button on
|
||||
the dashboard.
|
||||
If you wish, you can synchronize them manually by clicking on the :guilabel:`Synchronize Now` button
|
||||
on the dashboard.
|
||||
|
||||
Or you can go to :menuselection:`Accounting Dashboard --> Configuration -->
|
||||
Accounting: Online Synchronization`, select your institution and then click on the
|
||||
:guilabel:`fetch transactions` button.
|
||||
Alternatively, activate the :ref:`developer mode <developer-mode>`, go to
|
||||
:menuselection:`Accounting --> Configuration --> Online Synchronization`, select your institution,
|
||||
and then click the :guilabel:`Fetch transactions` button.
|
||||
|
||||
.. important::
|
||||
Some institutions do not allow transactions to be fetched automatically. For such institutions,
|
||||
@@ -96,9 +96,10 @@ Issues
|
||||
Synchronization in error
|
||||
------------------------
|
||||
|
||||
To report a connection error to the `Odoo support <https://www.odoo.com/help>`_, go to
|
||||
:menuselection:`Accounting Dashboard--> Configuration --> Accounting: Online Synchronization`,
|
||||
select the connection that failed, and copy the error description and the reference.
|
||||
To report a connection error to the `Odoo support <https://www.odoo.com/help>`_, activate the
|
||||
:ref:`developer mode <developer-mode>`, go to :menuselection:`Accounting --> Configuration -->
|
||||
Online Synchronization`, select the connection that failed, and copy the error description and the
|
||||
reference.
|
||||
|
||||
Synchronization disconnected
|
||||
----------------------------
|
||||
@@ -128,14 +129,14 @@ Finally, make sure all your users refresh their Odoo page by pressing CTRL+F5.
|
||||
|
||||
.. Note::
|
||||
|
||||
- All previous synchronizations are disconnected during the installation and won't work anymore.
|
||||
- You can find them directly in the synchronization menu
|
||||
(:menuselection:`Accounting Dashboard --> Configuration -->
|
||||
Accounting: Online Synchronization`). It is not possible to resynchronize these connections;
|
||||
you have to make new ones.
|
||||
- Do not uninstall `account_online_sync`, which is the previous module for online
|
||||
- All previous synchronizations are disconnected during the installation and will not work
|
||||
anymore. To view them, activate the :ref:`developer mode <developer-mode>` and go to
|
||||
:menuselection:`Accounting --> Configuration --> Online Synchronization`). It is not possible
|
||||
to resynchronize these connections; you have to make new ones.
|
||||
- Do not uninstall the `account_online_sync` module, which is the previous module for online
|
||||
synchronization. The new one overrides it.
|
||||
- By default, `account_online_synchronization` is installed automatically with Accounting.
|
||||
- By default, the `account_online_synchronization` module is installed automatically with
|
||||
Accounting.
|
||||
|
||||
FAQ
|
||||
===
|
||||
@@ -145,11 +146,11 @@ The synchronization is not working in real-time. Is that normal?
|
||||
|
||||
The process is not intended to work in real-time as third party providers synchronize your accounts
|
||||
at different intervals. To force the synchronization and fetch the statements, go to your
|
||||
:guilabel:`Accounting Dashboard`, and click on the :guilabel:`Synchronize Now` button. You can also
|
||||
synchronize and fetch transactions through :menuselection:`Accounting Dashboard -->
|
||||
Configuration --> Accounting: Online Synchronization`. Some providers only allow one refresh per
|
||||
day, so it is possible that clicking on :guilabel:`Synchronize Now` does not get your latest
|
||||
transactions if you already performed such action earlier in the day.
|
||||
:guilabel:`Accounting Dashboard`, and click on the :guilabel:`Synchronize Now` button. Synchronize
|
||||
and fetch transactions by activating the :ref:`developer mode <developer-mode>` and going to
|
||||
:menuselection:`Accounting --> Configuration --> Online Synchronization`. Some providers only allow
|
||||
one refresh per day, so it is possible that clicking on :guilabel:`Synchronize Now` does not get
|
||||
your latest transactions if you already performed such action earlier in the day.
|
||||
|
||||
A transaction can be visible on your bank account but not be fetched if it has the status
|
||||
:guilabel:`Pending`. Only transactions with the :guilabel:`Posted` status will be retrieved. If the
|
||||
@@ -158,9 +159,9 @@ transaction is not **Posted** yet, you will have to wait until the status change
|
||||
Is the Online Bank Synchronization feature included in my contract?
|
||||
-------------------------------------------------------------------
|
||||
|
||||
- **Community Version**: No, this feature is not included in the Community Version.
|
||||
- **Online Version**: Yes, even if you benefit from the One App Free contract.
|
||||
- **Enterprise Version**: Yes, if you have a valid enterprise contract linked to your database.
|
||||
- **Community Edition**: No, this feature is not included in the Community Version.
|
||||
- **Online Edition**: Yes, even if you benefit from the One App Free contract.
|
||||
- **Enterprise Edition**: Yes, if you have a valid enterprise contract linked to your database.
|
||||
|
||||
Some banks have a status "Beta." What does this mean?
|
||||
-----------------------------------------------------
|
||||
@@ -186,9 +187,9 @@ Why don't I see any transactions?
|
||||
---------------------------------
|
||||
|
||||
During your first synchronization, you selected the bank accounts you decided to synchronize with
|
||||
Odoo. If you didn't synchronize any of your accounts, you can go to
|
||||
:menuselection:`Accounting Dashboard --> Configuration --> Accounting: Online Synchronization` to
|
||||
click on the :guilabel:`Fetch Account` button on the connection.
|
||||
Odoo. If you didn't synchronize any of your accounts, activate the :ref:`developer mode
|
||||
<developer-mode>`, go to :menuselection:`Accounting --> Configuration --> Online Synchronization`,
|
||||
and click the :guilabel:`Fetch Account` button on the connection.
|
||||
|
||||
There may also be no new transactions.
|
||||
|
||||
@@ -198,9 +199,9 @@ database, please `submit a support ticket <https://www.odoo.com/help>`_.
|
||||
How can I update my bank credentials?
|
||||
-------------------------------------
|
||||
|
||||
You can update your credentials by going to :menuselection:`Accounting Dashboard -->
|
||||
Configuration --> Accounting: Online Synchronization`,open the connection you want to update your
|
||||
credentials and click on the :guilabel:`Update Credentials` button.
|
||||
To update your credentials, activate the :ref:`developer mode <developer-mode>` and go to
|
||||
:menuselection:`Accounting --> Configuration --> Online Synchronization`. Open the connection you
|
||||
want to update your credentials and click the :guilabel:`Update Credentials` button.
|
||||
|
||||
.. toctree::
|
||||
:titlesonly:
|
||||
|
||||
@@ -7,7 +7,6 @@ in one place. It offers non-intrusive connectivity to ASPSPs' official APIs acro
|
||||
storing data.
|
||||
|
||||
.. image:: enablebanking/enablebanking.png
|
||||
:align: center
|
||||
:alt: Enable Banking logo
|
||||
|
||||
**Odoo** synchronizes directly with banks to get access to all bank transactions and automatically
|
||||
@@ -30,7 +29,6 @@ Link bank accounts with Odoo
|
||||
:guilabel:`Continue authentication`;
|
||||
|
||||
.. image:: enablebanking/enablebankingauth.png
|
||||
:align: center
|
||||
:alt: Enable Banking authentication page
|
||||
|
||||
#. Finally, you are redirected to your bank's login page.
|
||||
|
||||
@@ -6,14 +6,11 @@ Ponto
|
||||
place and directly see all their transactions within one app. It is a third-party solution that is
|
||||
continuously expanding the number of bank institutions that can be synchronized with Odoo.
|
||||
|
||||
.. image:: ponto/ponto-logo.png
|
||||
:alt: Logo of the Ponto brand
|
||||
|
||||
**Odoo** can synchronize directly with your bank to get all bank statements imported automatically
|
||||
into your database.
|
||||
|
||||
Ponto is a paid third-party provider that can handle the synchronization between your bank accounts
|
||||
and Odoo. `Its pricing is 4€/month per account/integration <https://myponto.com/en#pricing>`_.
|
||||
and Odoo.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`../bank_synchronization`
|
||||
@@ -32,27 +29,25 @@ Link your bank accounts with Ponto
|
||||
.. image:: ponto/ponto-organization.png
|
||||
:alt: Fill out the form to add an organization in Ponto.
|
||||
|
||||
#. | Go to :menuselection:`Accounts --> Live`, and click on *Add account*.
|
||||
| You might have to add your **Billing Information** first.
|
||||
#. Go to :menuselection:`Accounts --> Live`, and click :guilabel:`Add account`. You might have to
|
||||
add your **Billing Information** first.
|
||||
#. Select your country, your bank institutions, give your consent to Ponto, and follow the steps
|
||||
on-screen to link your bank account with your Ponto account.
|
||||
|
||||
.. image:: ponto/ponto-add-account.png
|
||||
:alt: Add bank accounts to your Ponto account.
|
||||
|
||||
#. Make sure to add all bank accounts you want to synchronize with your Odoo database before moving
|
||||
on to the next steps.
|
||||
#. Add all bank accounts you want to synchronize with your Odoo database and move to the next steps.
|
||||
|
||||
Link your Ponto account with your Odoo database
|
||||
-----------------------------------------------
|
||||
|
||||
#. Go to :menuselection:`Accounting --> Configuration --> Add a Bank Account`.
|
||||
#. Search your institution, make sure to select the right institution. By selecting the institution,
|
||||
you can verify that the third party provider is Ponto.
|
||||
#. Click on *Connect* and follow the steps.
|
||||
#. At some point, you will have to authorize the accounts you want to access in Odoo. Please select
|
||||
**all the accounts** you want to synchronize. Even the ones coming from other banking
|
||||
institutions.
|
||||
#. Search for your institution and select it so you can verify that the third party provider is
|
||||
Ponto.
|
||||
#. Click :guilabel:`Connect` and follow the steps.
|
||||
#. Select **all accounts** you want to access and synchronize in Odoo, even the ones coming from
|
||||
other banking institutions.
|
||||
|
||||
.. image:: ponto/ponto-select-accounts.png
|
||||
:alt: Selection of the accounts you wish to synchronize with Odoo.
|
||||
@@ -66,26 +61,26 @@ Link your Ponto account with your Odoo database
|
||||
Update your synchronization credentials
|
||||
---------------------------------------
|
||||
|
||||
You might have to update your Ponto credentials or modify the synchronization settings.
|
||||
To update your Ponto credentials or modify the synchronization settings, activate the
|
||||
:ref:`developer mode <developer-mode>`, go to :menuselection:`Accounting --> Configuration -->
|
||||
Online Synchronization`, and select the institution from which you want to fetch the other
|
||||
accounts. Click :guilabel:`Fetch Accounts` to start the flow.
|
||||
|
||||
To do so, go to :menuselection:`Accounting --> Configuration --> Online Synchronization` and select
|
||||
the institution you want to fetch the other accounts. Click on *Fetch Accounts* button to start the
|
||||
flow.
|
||||
|
||||
During the update, select **all the accounts** you want to synchronize, even the ones coming
|
||||
from other banking institutions.
|
||||
.. note::
|
||||
During the update, select **all accounts** you want to synchronize, even the ones coming from
|
||||
other banking institutions.
|
||||
|
||||
Fetch new accounts
|
||||
------------------
|
||||
|
||||
You might want to add new online accounts to your connection.
|
||||
To add new online accounts to your connection, activate the :ref:`developer mode <developer-mode>`,
|
||||
go to :menuselection:`Accounting --> Configuration --> Online Synchronization`, and select the
|
||||
institution from which you want to fetch the other accounts. Click :guilabel:`Fetch Accounts` to
|
||||
start the flow.
|
||||
|
||||
To do so, go to :menuselection:`Accounting --> Configuration --> Online Synchronization` and select
|
||||
the institution you want to fetch the other accounts. Click on *Fetch Accounts* button to start the
|
||||
flow.
|
||||
|
||||
Don't forget to keep authorization for existing accounts (for all institutions that you
|
||||
have synchronized with Ponto).
|
||||
.. note::
|
||||
Don't forget to keep authorization for existing accounts (for all institutions that you have
|
||||
synchronized with Ponto).
|
||||
|
||||
FAQ
|
||||
===
|
||||
|
||||
|
Before Width: | Height: | Size: 2.5 KiB |
@@ -6,11 +6,6 @@ Salt Edge
|
||||
from your bank accounts. It supports ~5000 institutions in more than 50
|
||||
countries.
|
||||
|
||||
.. image:: saltedge/saltedge-logo.png
|
||||
:align: center
|
||||
:width: 50%
|
||||
:alt: Salt Edge Logo
|
||||
|
||||
Odoo can synchronize directly with your bank to get all bank statements imported
|
||||
automatically into your database.
|
||||
|
||||
@@ -34,20 +29,17 @@ Link your bank accounts with Odoo
|
||||
account.
|
||||
|
||||
.. image:: saltedge/saltedge-contact-email.png
|
||||
:align: center
|
||||
:alt: Email address to provide to Salt Edge for the creation of your account.
|
||||
|
||||
#. After entering your email address, you are redirected to Salt Edge to continue
|
||||
the synchronization process.
|
||||
|
||||
.. image:: saltedge/saltedge-login-page.png
|
||||
:align: center
|
||||
:alt: Salt Edge Login page.
|
||||
|
||||
#. Make sure you give your consent by checking the consent checkbox.
|
||||
|
||||
.. image:: saltedge/saltedge-give-consent.png
|
||||
:align: center
|
||||
:alt: Salt Edge give consent page.
|
||||
|
||||
#. Complete the synchronization by following the steps.
|
||||
@@ -56,11 +48,10 @@ Link your bank accounts with Odoo
|
||||
Update your credentials
|
||||
-----------------------
|
||||
|
||||
You might have to update your Salt Edge credentials or modify the synchronization settings.
|
||||
|
||||
To do so, go to :menuselection:`Accounting --> Configuration --> Online Synchronization` and
|
||||
select the institution you want to update credentials. Click on the *Update Credentials* button
|
||||
to start the flow and follow the steps.
|
||||
To update your Salt Edge credentials or modify the synchronization settings, activate the
|
||||
:ref:`developer mode <developer-mode>`, go to :menuselection:`Accounting --> Configuration -->
|
||||
Online Synchronization`, and select the institution you want to update credentials. Click
|
||||
:guilabel:`Update Credentials` to start the flow and follow the steps.
|
||||
|
||||
Don't forget to check the consent checkbox. Otherwise, Odoo may not be able to access
|
||||
your information.
|
||||
@@ -68,14 +59,14 @@ your information.
|
||||
Fetch new accounts
|
||||
------------------
|
||||
|
||||
You might want to add new online accounts to your connection.
|
||||
To add new online accounts to your connection, activate the :ref:`developer mode <developer-mode>`,
|
||||
go to :menuselection:`Accounting --> Configuration --> Online Synchronization`, and select the
|
||||
institution to fetch the new accounts. Click :guilabel:`Fetch Accounts` to start the flow and
|
||||
follow the steps.
|
||||
|
||||
To do so, go to :menuselection:`Accounting --> Configuration --> Online Synchronization` and
|
||||
select the institution to fetch the new accounts. Click on the *Fetch Accounts* button
|
||||
to start the flow and follow the steps.
|
||||
|
||||
Don't forget to check the consent checkbox. Otherwise, Odoo may not be able to access
|
||||
your information.
|
||||
.. note::
|
||||
Don't forget to check the consent checkbox. Otherwise, Odoo may not be able to access your
|
||||
information.
|
||||
|
||||
FAQ
|
||||
===
|
||||
@@ -94,15 +85,15 @@ record.
|
||||
I have an error saying that I have already synchronized this account
|
||||
--------------------------------------------------------------------
|
||||
|
||||
You have probably already synchronized your bank account with Salt Edge, please check on your `dashboard
|
||||
<https://www.saltedge.com/dashboard>`_ that you don't already have a connection with the same
|
||||
credentials.
|
||||
You have probably already synchronized your bank account with Salt Edge, please check on your
|
||||
`dashboard <https://www.saltedge.com/dashboard>`_ that you don't already have a connection with the
|
||||
same credentials.
|
||||
|
||||
In case you already have a synchronization with the same credentials present on your Salt Edge
|
||||
dashboard and this synchronization has not been created with Odoo, please delete it and create it
|
||||
from your Odoo database.
|
||||
If you already have a synchronization with the same credentials present on your Salt Edge
|
||||
dashboard and this synchronization has not been created with Odoo, delete it and create it from your
|
||||
Odoo database.
|
||||
|
||||
In case you already have a connection with the same credentials present on your Salt Edge dashboard
|
||||
and this synchronization was created with Odoo, you will normally be able to find it by going to
|
||||
:menuselection:`Accounting --> Configuration --> Online Synchronization`. Please make sure to do an
|
||||
*Update Credentials* to reactivate the connection.
|
||||
If you already have a connection with the same credentials present on your Salt Edge dashboard
|
||||
and this synchronization was created with Odoo, activate the :ref:`developer
|
||||
mode <developer-mode>`, go to :menuselection:`Accounting --> Configuration --> Online
|
||||
Synchronization`, and click :guilabel:`Update Credentials` to reactivate the connection.
|
||||
|
||||
|
Before Width: | Height: | Size: 11 KiB |
@@ -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 |
@@ -0,0 +1,70 @@
|
||||
================
|
||||
Loans management
|
||||
================
|
||||
|
||||
Odoo's loan management gives a comprehensive list of all loans undertaken by your company in order
|
||||
to maintain a holistic and forecasted view of upcoming due dates (e.g., cash forecast). Set up
|
||||
amortization schedules—or import them—and let Odoo automatically handle monthly interest and
|
||||
principal adjustments so that your financial reports are always accurate with minimal effort.
|
||||
|
||||
Create a new loan
|
||||
-----------------
|
||||
|
||||
Create a new loan by going to :menuselection:`Accounting --> Accounting --> Loans`. When creating a
|
||||
new loan, there are three options for how to create amortization schedules:
|
||||
|
||||
- importing it from a supported file;
|
||||
- calculating it from multiple input values (e.g., the :guilabel:`Amount Borrowed`, the
|
||||
:guilabel:`Duration`, etc.) using the :guilabel:`Compute` button;
|
||||
- manually filling in the lines of the schedule.
|
||||
|
||||
In each case, three different fields are required for each line of the amortization schedule: the
|
||||
:guilabel:`Date`, the :guilabel:`Principal`, and the :guilabel:`Interest`.
|
||||
|
||||
The :guilabel:`Amount Borrowed`, :guilabel:`Interest`, and :guilabel:`Duration` fields will be red
|
||||
if the sum of the lines does not match the total of the amortization schedule lines.
|
||||
|
||||
Loan entries mechanism
|
||||
----------------------
|
||||
|
||||
When the amount borrowed is credited to a bank account, it should be transferred to a long-term
|
||||
account (defined in the :guilabel:`Loan Settings` tab). Then, upon the validation of the loan, Odoo
|
||||
creates the necessary journal entries so that there is always a holistic and forecasted view of
|
||||
upcoming due dates. The entire process is completely automated with a long-term and short-term
|
||||
principal reclassification mechanism.
|
||||
|
||||
For each line of the amortization schedule, Odoo creates the following entries:
|
||||
|
||||
A payment entry on the same date that
|
||||
- debits the principal amount to the long-term account;
|
||||
- debits the interest amount to the expense account;
|
||||
- credits the payment amount to the short-term account: this is the amount that will be
|
||||
withdrawn by the bank.
|
||||
|
||||
A reclassification entry on the same date that
|
||||
- debits the sum of the principal amounts of the next 12 months to the long-term account;
|
||||
- credits the sum of the principal amounts of the next 12 months to the short-term account.
|
||||
|
||||
A reversed entry of the reclassification entry on *the next day* that simply reverses the previous
|
||||
one.
|
||||
|
||||
With this mechanism, month after month, the short-term account is always up to date with the
|
||||
current short-term due amounts.
|
||||
|
||||
Closing a loan
|
||||
--------------
|
||||
|
||||
By default, a loan will be closed whenever its last payment entry is posted. However, it can also
|
||||
be manually closed (e.g., because it is being paid off early) by clicking on the :guilabel:`Close`
|
||||
button. A wizard will appear asking from which date the loan should be closed. All draft entries
|
||||
after this date will be deleted too.
|
||||
|
||||
A loan can also be cancelled. In that case, all entries will be deleted even if they were already
|
||||
posted.
|
||||
|
||||
Loans Analysis Report
|
||||
---------------------
|
||||
|
||||
By going to :menuselection:`Accounting --> Reporting --> Loans Analysis`, you can access a
|
||||
report with a pivot view of your ongoing loans. By default, the report shows the principal,
|
||||
interest, and total payment for each year for the loan duration.
|
||||
@@ -33,19 +33,28 @@ Make sure the default settings are correctly configured for your business. To do
|
||||
|
||||
Journal
|
||||
The deferral entries are posted in this journal.
|
||||
Deferred Expense Account
|
||||
Expenses are deferred on this Current Asset account until they are recognized.
|
||||
Deferred Revenue Account
|
||||
Deferred Revenue
|
||||
Revenues are deferred on this Current Liability account until they are recognized.
|
||||
Generate Entries
|
||||
By default, Odoo :ref:`automatically generates <customer_invoices/deferred/generate_on_validation>`
|
||||
the deferral entries when you post a customer invoice. However, you can also choose to
|
||||
:ref:`generate them manually <customer_invoices/deferred/generate_manually>` by selecting the
|
||||
:guilabel:`Manually & Grouped` option instead.
|
||||
Amount Computation
|
||||
Suppose an invoice of $1200 must be deferred over 12 months. The :guilabel:`Equal per month`
|
||||
computation accounts for $100 each month, while the :guilabel:`Based on days` computation
|
||||
accounts for different amounts depending on the number of days in each month.
|
||||
Based on
|
||||
Suppose an invoice of $1200 must be deferred over 12 months.
|
||||
|
||||
- The :guilabel:`Months` option accounts for $100 each month prorated to the number of days in
|
||||
that month (e.g., $50 for the first month if the :guilabel:`Start Date` is set to the 15th of
|
||||
the month).
|
||||
|
||||
- The :guilabel:`Full Months` option considers each month started to be full (e.g., $100 for the
|
||||
first month even if the :guilabel:`Start Date` is set to the 15th of the month); this means that
|
||||
with the :guilabel:`Full Months` option, a full $100 is recognized in the first partial month,
|
||||
eliminating the need for a 13th month to recognize any remainder as would be the case when using
|
||||
the :guilabel:`Months` option.
|
||||
|
||||
- The :guilabel:`Days` option accounts for different amounts depending on the number of days in
|
||||
each month (e.g., ~$102 for January and ~$92 for February).
|
||||
|
||||
.. _customer_invoices/deferred/generate_on_validation:
|
||||
|
||||
|
||||
@@ -69,8 +69,9 @@ When new products arrive, the new average cost for each product is recomputed us
|
||||
- **Incoming Qty**: count of products arriving in the new shipment;
|
||||
- **Purchase Price**: estimated price of products at the reception of products (since vendor bills
|
||||
may arrive later). The amount includes not only the price for the products, but also added costs,
|
||||
such as shipping, taxes, and :ref:`landed costs <inventory/reporting/landed_costs>`. At reception
|
||||
of the vendor bill, this price is adjusted;
|
||||
such as shipping, taxes, and :doc:`landed costs
|
||||
<../../../inventory_and_mrp/inventory/product_management/inventory_valuation/landed_costs>`. At
|
||||
reception of the vendor bill, this price is adjusted;
|
||||
- **Final Qty**: quantity of on-hand stock after the stock move.
|
||||
|
||||
.. _inventory/avg_cost/definite_rule:
|
||||
|
||||
@@ -7,20 +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>`_
|
||||
|
||||
.. _payments/register:
|
||||
.. _accounting/payments/from-invoice-bill:
|
||||
|
||||
Registering payment from an invoice or bill
|
||||
===========================================
|
||||
@@ -29,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.
|
||||
@@ -41,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.
|
||||
@@ -107,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 simultaneously for a specific customer or vendor. Go to your **Accounting Dashboard** and
|
||||
open your **bank journal**. In the **bank reconciliation** view, select a **transaction**, and click
|
||||
the :guilabel:`Batch Payments` tab. From here, you can reconcile your
|
||||
:doc:`batch payments <payments/batch>` with your 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`. 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: The batch payment 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 |
|
Before Width: | Height: | Size: 4.1 KiB |
@@ -4,157 +4,130 @@
|
||||
Reporting
|
||||
=========
|
||||
|
||||
Main reports available
|
||||
======================
|
||||
Odoo includes **generic** and **dynamic** reports available for all countries, regardless of the
|
||||
:doc:`localization package <../../finance/fiscal_localizations>` installed:
|
||||
|
||||
Besides the reports created specifically in each localisation module, a
|
||||
few very useful **generic** and **dynamic reports** are available for all
|
||||
countries :
|
||||
- :ref:`accounting/reporting/balance-sheet`
|
||||
- :ref:`accounting/reporting/profit-and-loss`
|
||||
- :ref:`accounting/reporting/executive-summary`
|
||||
- :ref:`accounting/reporting/general-ledger`
|
||||
- :ref:`accounting/reporting/aged-receivable`
|
||||
- :ref:`accounting/reporting/aged-payable`
|
||||
- :ref:`accounting/reporting/cash-flow-statement`
|
||||
- :ref:`accounting/reporting/tax-report`
|
||||
|
||||
- **Balance Sheet**
|
||||
- **Profit and Loss**
|
||||
- **Executive Summary**
|
||||
- **General Ledger**
|
||||
- **Aged Payable**
|
||||
- **Aged Receivable**
|
||||
- **Cash Flow Statement**
|
||||
- **Tax Report**
|
||||
- **Bank Reconciliation**
|
||||
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.
|
||||
|
||||
You can annotate every reports to print them and report to your adviser.
|
||||
Export to xls to manage extra analysis. Drill down in the reports to see
|
||||
more details (payments, invoices, journal items, etc.).
|
||||
.. image:: reporting/reporting-annotate.png
|
||||
:alt: Annotate reports.
|
||||
|
||||
You can also compare values with another period. Choose how many periods
|
||||
you want to compare the chosen time period with. You can choose up to 12
|
||||
periods back from the date of the report if you don't want to use the
|
||||
default **Previous 1 Period** option.
|
||||
To export reports in PDF or XLSX format, click :guilabel:`PDF` at the top or click the
|
||||
:icon:`fa-caret-down` (:guilabel:`down arrow`) icon next to the :guilabel:`PDF` button and
|
||||
select :guilabel:`XLSX`.
|
||||
|
||||
.. _reporting/balance-sheet:
|
||||
To compare values across periods, click the :guilabel:`Comparison` menu and select the periods you
|
||||
want to compare.
|
||||
|
||||
Balance Sheet
|
||||
-------------
|
||||
|
||||
The **Balance Sheet** shows a snapshot of the assets, liabilities and equity
|
||||
of your organisation as at a particular date.
|
||||
|
||||
.. image:: reporting/main_reports09.png
|
||||
.. image:: reporting/reporting-comparison.png
|
||||
:alt: Comparison menu to compare time periods.
|
||||
|
||||
.. _accounting/reporting/balance-sheet:
|
||||
|
||||
Balance Sheet
|
||||
=============
|
||||
|
||||
The :guilabel:`Balance Sheet` shows a snapshot of your organization's assets, liabilities, and
|
||||
equity at a particular date.
|
||||
|
||||
.. _accounting/reporting/profit-and-loss:
|
||||
|
||||
Profit and Loss
|
||||
---------------
|
||||
===============
|
||||
|
||||
The **Profit and Loss** report (or **Income Statement**) shows your
|
||||
organisation's net income, by deducting expenses from revenue for the
|
||||
report period.
|
||||
|
||||
.. image:: reporting/main_reports10.png
|
||||
The :guilabel:`Profit and Loss` report (or **Income Statement**) shows your company's net income by
|
||||
deducting expenses from revenue for the reporting period.
|
||||
|
||||
.. _accounting/reporting/executive-summary:
|
||||
|
||||
Executive Summary
|
||||
-----------------
|
||||
=================
|
||||
|
||||
The **Executive Summary** allows for a quick look at all the important
|
||||
figures you need to run your company.
|
||||
The :guilabel:`Executive Summary` provides an overview of all the important figures for overseeing
|
||||
your company's performance.
|
||||
|
||||
In very basic terms, this is what each of the items in this section is
|
||||
reporting :
|
||||
It includes the following items:
|
||||
|
||||
- **Performance:**
|
||||
- **Gross profit margin:**
|
||||
The contribution each individual sale made
|
||||
by your business less any direct costs needed to make those sales
|
||||
(things like labour, materials, etc).
|
||||
- **Net profit margin:**
|
||||
The contribution each individual sale made by
|
||||
your business less any direct costs needed to make those sales,
|
||||
as well as any fixed overheads your company has (things like
|
||||
rent, electricity, taxes you need to pay as a result of those
|
||||
sales).
|
||||
- **Return on investment (p.a.):**
|
||||
The ratio of net profit made, to the
|
||||
amount of assets the company used to make those profits.
|
||||
- **Position:**
|
||||
- **Average debtor days:**
|
||||
The average number of days it takes your
|
||||
customers to pay you (fully), across all your customer invoices.
|
||||
- **Average creditor days:**
|
||||
The average number of days it takes you to
|
||||
pay your suppliers (fully) across all your bills.
|
||||
- **Short term cash forecast:**
|
||||
How much cash is expected in or out of
|
||||
your organisation in the next month i.e. balance of your **Sales
|
||||
account** for the month less 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 (assets that could be
|
||||
turned into cash within a year) to the current liabilities
|
||||
(liabilities which will be due in the next year). This is
|
||||
typically used as as a measure of a company's ability to service
|
||||
its debt.
|
||||
- :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.).
|
||||
- :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.).
|
||||
- :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.
|
||||
- :guilabel:`Average creditors days`:
|
||||
The average number of days it takes you to (fully) pay your suppliers across all your bills.
|
||||
- :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.
|
||||
- :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/main_reports01.png
|
||||
.. _accounting/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 the totals for each
|
||||
account and from there you can view a detailed transaction report or any
|
||||
exceptions. This report is useful for checking every transaction that
|
||||
occurred during a certain period of time.
|
||||
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.
|
||||
|
||||
.. image:: reporting/main_reports05.png
|
||||
|
||||
.. _reporting/aged-payable:
|
||||
|
||||
Aged Payable
|
||||
------------
|
||||
|
||||
Run the **Aged Payable Details** report to display information on individual
|
||||
bills, credit notes and overpayments owed by you, and how long these
|
||||
have gone unpaid.
|
||||
|
||||
.. image:: reporting/main_reports02.png
|
||||
|
||||
.. _reporting/aged-receivable:
|
||||
.. _accounting/reporting/aged-receivable:
|
||||
|
||||
Aged Receivable
|
||||
---------------
|
||||
===============
|
||||
|
||||
The **Aged Receivables** report shows the sales invoices that were 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/main_reports07.png
|
||||
.. _accounting/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.
|
||||
|
||||
.. _accounting/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.
|
||||
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.
|
||||
|
||||
.. image:: reporting/main_reports03.png
|
||||
|
||||
.. _reporting/tax-report:
|
||||
.. _accounting/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/main_reports04.png
|
||||
|
||||
Bank Reconciliation
|
||||
-------------------
|
||||
|
||||
.. image:: reporting/main_reports06.png
|
||||
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:
|
||||
|
||||
@@ -3,10 +3,10 @@ Data inalterability check report
|
||||
================================
|
||||
|
||||
Tax authorities in some countries require companies to **prove their posted accounting entries are
|
||||
inalterable**, meaning that once an entry has been posted, it can no longer be changed.
|
||||
unaltered**, meaning that once an entry has been secured, it can no longer be changed.
|
||||
|
||||
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
|
||||
To do so, Odoo creates a unique fingerprint for each secured entry thanks to the **SHA-256 algorithm**.
|
||||
This fingerprint is called a hash. The hash is generated by taking an entry's essential data
|
||||
(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
|
||||
@@ -15,7 +15,7 @@ completely change the resulting hash. Consequently, the SHA-256 algorithm is oft
|
||||
others, for data integrity verification purposes.
|
||||
|
||||
In addition, the previous entry's hash is always added to the next entry to form a **hash chain**.
|
||||
This is used to ensure a new entry is not added afterward between two posted entries, as doing so
|
||||
This is used to ensure a new entry is not added afterward between two secured entries, as doing so
|
||||
would break the hash chain.
|
||||
|
||||
.. note::
|
||||
@@ -24,27 +24,70 @@ would break the hash chain.
|
||||
bigger than the number of atoms in the known universe. This is why hashes are considered unique
|
||||
in practice.
|
||||
|
||||
.. _data-inalterability/lock:
|
||||
.. _data-inalterability/inalterability_features:
|
||||
|
||||
Lock entries with hash
|
||||
======================
|
||||
Inalterability features
|
||||
=======================
|
||||
|
||||
To start using the hashing function, go to :menuselection:`Accounting --> Configuration > Journals`.
|
||||
Open the journal for which you want to activate the feature, go to the :guilabel:`Advanced Settings`
|
||||
tab, and enable :guilabel:`Lock Sent Invoices with Hash` for sale journals, or
|
||||
:guilabel:`Lock Entries Manually` for purchase and general journals.
|
||||
Inalterability features can be enabled by activating the :ref:`secure posted entries with hash
|
||||
<data-inalterability/restricted>` option on any journal or using the :ref:`secure entries wizard
|
||||
<data-inalterability/wizard>`.
|
||||
|
||||
For sale journals, the entry is automatically locked once it is sent. You can also click on the
|
||||
button :guilabel:`Lock` on the invoice to lock it without sending it. For sale, purchase, and
|
||||
general journals, the locking is always done manually using the same button.
|
||||
- Two indicators are added to the journal entry's form view.
|
||||
They show whether the entry is secured or not.
|
||||
|
||||
- A :icon:`fa-lock` or :icon:`fa-unlock` (:guilabel:`lock icon`) next to the :guilabel:`Posted` state.
|
||||
- A :guilabel:`Secured` checkbox in the :guilabel:`Other info` tab.
|
||||
|
||||
- A :guilabel:`Not Secured` filter is available on journal entries and journal items' list views.
|
||||
It can be used to find posted journal entries that are not secured yet.
|
||||
- The option to open the :ref:`secure entries wizard <data-inalterability/wizard>` is displayed in the
|
||||
:guilabel:`Accounting` menu.
|
||||
|
||||
.. _data-inalterability/restricted:
|
||||
|
||||
Secure posted entries with hash
|
||||
===============================
|
||||
|
||||
To activate the hashing function on a specific journal, go to :menuselection:`Accounting -->
|
||||
Configuration --> Journals`. Open a sales, purchase, or miscellaneous journal, go to the
|
||||
:guilabel:`Advanced Settings` tab, and enable :guilabel:`Secure Posted Entries with Hash`.
|
||||
Journals for which the feature is activated are called "restricted".
|
||||
|
||||
To compute the hash of an entry, Odoo retrieves the predecessor entries of the chain (i.e., the
|
||||
entries with the same sequence prefix) and hashes them in a continuous way from the last hashed
|
||||
entry to the new entry to hash.
|
||||
|
||||
.. warning::
|
||||
Once you lock an entry in a locked journal, you cannot disable the feature anymore, nor edit any
|
||||
locked entry.
|
||||
Once you post an entry in a restricted journal, you cannot disable the feature anymore, nor edit
|
||||
any secured entry.
|
||||
|
||||
.. _data-inalterability/wizard:
|
||||
|
||||
Secure entries wizard
|
||||
=====================
|
||||
|
||||
You can also use the :guilabel:`Secure Entries` Wizard to secure all journal entries,
|
||||
in **all** journals, up to a specific date.
|
||||
|
||||
.. note::
|
||||
The wizard operates independently of the journal settings and journal types.
|
||||
|
||||
To open it, activate the :ref:`developer mode <developer-mode>`, go to :menuselection:`Accounting
|
||||
--> Accounting`, and click on :guilabel:`Secure Entries`. If the :ref:`inalterability features
|
||||
<data-inalterability/inalterability_features>` are activated, it is also visible outside the debug
|
||||
mode.
|
||||
|
||||
To secure entries, select a date up to which all entries should be secured and press
|
||||
:guilabel:`Secure Entries`.
|
||||
|
||||
.. warning::
|
||||
After securing the entries, you can no longer edit them.
|
||||
|
||||
.. note::
|
||||
It can happen that entries that are past the selected date are secured.
|
||||
This is possible since the hash chain corresponds to the sequence prefix,
|
||||
ordered by sequence number.
|
||||
|
||||
.. _data-inalterability/report:
|
||||
|
||||
@@ -54,17 +97,18 @@ Report download
|
||||
To download the data inalterability check report, go to :menuselection:`Accounting --> Configuration
|
||||
--> Settings --> Reporting` and click on :guilabel:`Download the Data Inalterability Check Report`.
|
||||
|
||||
The report's first section is an overview of all your journals and their configuration. Under the
|
||||
inalterability check column, you can see whether or not a journal's entries are locked with a hash
|
||||
(V) or not (X). The coverage column tells you when a journal's entries started being locked.
|
||||
The report's first section is an overview of all journal sequence prefixes containing hashed entries.
|
||||
In the :guilabel:`Restricted` column, you can see whether or not a journal has the :ref:`secure
|
||||
posted entries with hash <data-inalterability/restricted>` option (V) activated or not (X). The
|
||||
:guilabel:`Check` column tells you whether all entries are correctly hashed.
|
||||
|
||||
.. image:: data_inalterability/journal-overview.png
|
||||
:align: center
|
||||
:alt: Configuration report for two journals
|
||||
|
||||
The second section gives you the result of the data consistency check for each hashed journal. You
|
||||
can view the first hashed entry and its corresponding hash and the last hashed entry and its
|
||||
corresponding hash.
|
||||
The second section gives a more detailed result of the data consistency check for each hashed
|
||||
journal sequence prefix. You can view the first hashed entry and its corresponding hash,
|
||||
as well as the last hashed entry and its corresponding hash.
|
||||
|
||||
.. image:: data_inalterability/data-consistency-check.png
|
||||
:align: center
|
||||
|
||||
|
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 6.7 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 7.0 KiB |
|
After Width: | Height: | Size: 5.1 KiB |
@@ -52,18 +52,20 @@ Closing a fiscal year
|
||||
|
||||
Then, to close the fiscal year:
|
||||
|
||||
- Run a :ref:`tax report <reporting/tax-report>`, and verify that all tax information is correct.
|
||||
- Reconcile all accounts on the :ref:`balance sheet <reporting/balance-sheet>`:
|
||||
- Run a :ref:`tax report <accounting/reporting/tax-report>`, and verify that all tax information is
|
||||
correct.
|
||||
- Reconcile all accounts on the :ref:`balance sheet <accounting/reporting/balance-sheet>`:
|
||||
|
||||
- Update the bank balances in Odoo according to the actual balances found on the bank statements.
|
||||
- Reconcile all transactions in the cash and bank accounts by running the :ref:`aged receivables
|
||||
<reporting/aged-receivable>` and :ref:`aged payables <reporting/aged-payable>` reports.
|
||||
<accounting/reporting/aged-receivable>` and :ref:`aged payables
|
||||
<accounting/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:
|
||||
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -33,19 +33,28 @@ Make sure the default settings are correctly configured for your business. To do
|
||||
|
||||
Journal
|
||||
The deferral entries are posted in this journal.
|
||||
Deferred Expense Account
|
||||
Deferred Expense
|
||||
Expenses are deferred on this Current Asset account until they are recognized.
|
||||
Deferred Revenue Account
|
||||
Revenues are deferred on this Current Liability account until they are recognized.
|
||||
Generate Entries
|
||||
By default, Odoo :ref:`automatically generates <vendor_bills/deferred/generate_on_validation>`
|
||||
the deferral entries when you post a vendor bill. However, you can also choose to
|
||||
:ref:`generate them manually <vendor_bills/deferred/generate_manually>` by selecting the
|
||||
:guilabel:`Manually & Grouped` option instead.
|
||||
Amount Computation
|
||||
Suppose a bill of $1200 must be deferred over 12 months. The :guilabel:`Equal per month`
|
||||
computation recognizes $100 each month, while the :guilabel:`Based on days` computation recognizes
|
||||
different amounts depending on the number of days in each month.
|
||||
Based on
|
||||
Suppose a bill of $1200 must be deferred over 12 months.
|
||||
|
||||
- The :guilabel:`Months` option accounts for $100 each month prorated to the number of days in
|
||||
that month (e.g., $50 for the first month if the :guilabel:`Start Date` is set to the 15th of
|
||||
the month).
|
||||
|
||||
- The :guilabel:`Full Months` option considers each month started to be full (e.g., $100 for the
|
||||
first month even if the :guilabel:`Start Date` is set to the 15th of the month); this means that
|
||||
with the :guilabel:`Full Months` option, a full $100 is recognized in the first partial month,
|
||||
eliminating the need for a 13th month to recognize any remainder as would be the case when using
|
||||
the :guilabel:`Months` option.
|
||||
|
||||
- The :guilabel:`Days` option accounts for different amounts depending on the number of days in
|
||||
each month (e.g., ~$102 for January and ~$92 for February).
|
||||
|
||||
.. _vendor_bills/deferred/generate_on_validation:
|
||||
|
||||
|
||||
@@ -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
|
||||
=============
|
||||
|
||||
@@ -4,128 +4,163 @@
|
||||
Fiscal localizations
|
||||
====================
|
||||
|
||||
Fiscal localizations are country-specific modules that allow you to be compliant with a country's
|
||||
fiscal requirements. Most of these modules are related to the :ref:`Accounting
|
||||
<fiscal_localizations/accounting>` or :ref:`Payroll <fiscal_localizations/payroll>` app, but they
|
||||
can also be necessary for other apps such as Point of Sale, eCommerce, etc., depending on a
|
||||
country's fiscal requirements.
|
||||
|
||||
.. _fiscal_localizations/packages:
|
||||
|
||||
Fiscal localization packages
|
||||
============================
|
||||
Configuration
|
||||
=============
|
||||
|
||||
**Fiscal Localization Packages** are country-specific modules that install pre-configured taxes,
|
||||
fiscal positions, chart of accounts, and legal statements on your database. Some additional
|
||||
features, such as the configuration of specific certificates, are also added to your Accounting app,
|
||||
following your fiscal administration requirements.
|
||||
Odoo should automatically install the required fiscal localization modules based on the company's
|
||||
country when the related app is installed. Refer to the :ref:`list of countries
|
||||
<fiscal_localizations/countries-list>` to view the currently supported countries and access their
|
||||
specific documentation.
|
||||
|
||||
.. note::
|
||||
Odoo continuously adds new localizations and improves the existing packages.
|
||||
Each company in a multi-company environment can use different fiscal localization modules.
|
||||
|
||||
Configuration
|
||||
-------------
|
||||
.. _fiscal_localizations/accounting:
|
||||
|
||||
Odoo automatically installs the appropriate package for your company, according to the country
|
||||
selected at the creation of the database.
|
||||
Accounting
|
||||
----------
|
||||
|
||||
.. important::
|
||||
As long as you haven't posted any entry, you can still select another package.
|
||||
Verify the right package of modules is installed by going to :menuselection:`Accounting -->
|
||||
Configuration --> Settings` and checking the :guilabel:`Package` field under the :guilabel:`Fiscal
|
||||
Localization` section. Select another one if necessary.
|
||||
|
||||
To select a fiscal localization package for your company, go to :menuselection:`Accounting -->
|
||||
Configuration --> Settings --> Fiscal Localization`, select the appropriate package from the list
|
||||
and save.
|
||||
.. warning::
|
||||
Selecting another package is only possible if no entry has been posted.
|
||||
|
||||
.. image:: fiscal_localizations/package-selection.png
|
||||
:alt: Select your country's fiscal localization package in Odoo Accounting.
|
||||
These packages require fine-tuning the chart of accounts, activating the taxes to be used,
|
||||
configuring the country-specific statements and certifications, and sometimes more.
|
||||
|
||||
Use
|
||||
---
|
||||
.. _fiscal_localizations/payroll:
|
||||
|
||||
These packages require you to fine-tune your chart of accounts according to your needs, activate the
|
||||
taxes you use, and configure your country-specific statements and certifications.
|
||||
Payroll
|
||||
-------
|
||||
|
||||
.. seealso::
|
||||
- :doc:`accounting/get_started/chart_of_accounts`
|
||||
- :doc:`accounting/taxes`
|
||||
Localization settings can be accessed by going to :menuselection:`Payroll --> Configuration -->
|
||||
Settings` and searching for the country's **Localization** section.
|
||||
|
||||
.. _fiscal_localizations/countries-list:
|
||||
|
||||
List of supported countries
|
||||
===========================
|
||||
List of countries
|
||||
=================
|
||||
|
||||
Odoo Accounting can be used in many countries out of the box by installing the appropriate module.
|
||||
Here is a list of all :ref:`fiscal localization package <fiscal_localizations/packages>` that are
|
||||
available on Odoo.
|
||||
Fiscal localization modules are available for the countries listed below.
|
||||
|
||||
- Algeria - Accounting
|
||||
- :doc:`Argentina - Accounting <fiscal_localizations/argentina>`
|
||||
- :doc:`Australian - Accounting <fiscal_localizations/australia>`
|
||||
- :doc:`Austria - Accounting <fiscal_localizations/austria>`
|
||||
- :doc:`Belgium - Accounting <fiscal_localizations/belgium>`
|
||||
- Bolivia - Accounting
|
||||
- :doc:`Brazilian - Accounting <fiscal_localizations/brazil>`
|
||||
- Canada - Accounting
|
||||
- :doc:`Chile - Accounting <fiscal_localizations/chile>`
|
||||
- China - Accounting
|
||||
- :doc:`Colombia - Accounting <fiscal_localizations/colombia>`
|
||||
- Costa Rica - Accounting
|
||||
- Croatia - Accounting (RRIF 2012)
|
||||
- Czech - Accounting
|
||||
- Denmark - Accounting
|
||||
- Dominican Republic - Accounting
|
||||
- :doc:`Ecuadorian - Accounting <fiscal_localizations/ecuador>`
|
||||
- :doc:`Egypt - Accounting <fiscal_localizations/egypt>`
|
||||
- Ethiopia - Accounting
|
||||
- Finnish Localization
|
||||
- :doc:`France - Accounting <fiscal_localizations/france>`
|
||||
- Generic - Accounting
|
||||
.. note::
|
||||
New countries are frequently added to this list and Odoo keeps expanding and improving existing
|
||||
localizations and the related documentation.
|
||||
|
||||
- Algeria
|
||||
- :doc:`Argentina <fiscal_localizations/argentina>`
|
||||
- :doc:`Australia <fiscal_localizations/australia>`
|
||||
- :doc:`Austria <fiscal_localizations/austria>`
|
||||
- Bangladesh
|
||||
- :doc:`Belgium <fiscal_localizations/belgium>`
|
||||
- Benin
|
||||
- Bolivia
|
||||
- :doc:`Brazil <fiscal_localizations/brazil>`
|
||||
- Burkina Faso
|
||||
- Bulgaria
|
||||
- Cameroon
|
||||
- :doc:`Canada <fiscal_localizations/canada>`
|
||||
- Central African Republic
|
||||
- Chad
|
||||
- :doc:`Chile <fiscal_localizations/chile>`
|
||||
- China
|
||||
- :doc:`Colombia <fiscal_localizations/colombia>`
|
||||
- Comoros
|
||||
- Congo
|
||||
- Costa Rica
|
||||
- Croatia
|
||||
- Cyprus
|
||||
- Czech Republic
|
||||
- Democratic Republic of the Congo
|
||||
- Denmark
|
||||
- Dominican Republic
|
||||
- :doc:`Ecuador <fiscal_localizations/ecuador>`
|
||||
- :doc:`Egypt <fiscal_localizations/egypt>`
|
||||
- Equatorial Guinea
|
||||
- Estonia
|
||||
- Ethiopia
|
||||
- Finland
|
||||
- :doc:`France <fiscal_localizations/france>`
|
||||
- Gabon
|
||||
- :doc:`Germany <fiscal_localizations/germany>`
|
||||
- Guinea
|
||||
- Greece
|
||||
- Guatemala
|
||||
- Guinea-Bissau
|
||||
- Honduras
|
||||
- :doc:`Hong Kong <fiscal_localizations/hong_kong>`
|
||||
- Hungary
|
||||
- :doc:`India <fiscal_localizations/india>`
|
||||
- :doc:`Indonesia <fiscal_localizations/indonesia>`
|
||||
- :doc:`Italy <fiscal_localizations/italy>`
|
||||
- Ivory Coast
|
||||
- Japan
|
||||
- Jordan
|
||||
- Kazakhstan
|
||||
- :doc:`Kenya <fiscal_localizations/kenya>`
|
||||
- Kuwait
|
||||
- Latvia
|
||||
- Lithuania
|
||||
- :doc:`Luxembourg <fiscal_localizations/luxembourg>`
|
||||
- Mali
|
||||
- Malta
|
||||
- Mauritius
|
||||
- :doc:`Malaysia <fiscal_localizations/malaysia>`
|
||||
- :doc:`Mexico <fiscal_localizations/mexico>`
|
||||
- Mongolia
|
||||
- Morocco
|
||||
- Mozambique
|
||||
- :doc:`Netherlands <fiscal_localizations/netherlands>`
|
||||
- :doc:`New Zealand <fiscal_localizations/new_zealand>`
|
||||
- Niger
|
||||
- Nigeria
|
||||
- Norway
|
||||
- Pakistan
|
||||
- Panama
|
||||
- :doc:`Peru <fiscal_localizations/peru>`
|
||||
- :doc:`Philippines <fiscal_localizations/philippines>`
|
||||
- Poland
|
||||
- Portugal
|
||||
- Qatar
|
||||
- :doc:`Romania <fiscal_localizations/romania>`
|
||||
- Rwanda
|
||||
- :doc:`Saudi Arabia <fiscal_localizations/saudi_arabia>`
|
||||
- Senegal
|
||||
- Serbia
|
||||
- :doc:`Singapore <fiscal_localizations/singapore>`
|
||||
- Slovakia
|
||||
- Slovenia
|
||||
- South Africa
|
||||
- :doc:`Spain <fiscal_localizations/spain>`
|
||||
- Sweden
|
||||
- :doc:`Switzerland <fiscal_localizations/switzerland>`
|
||||
- Taiwan
|
||||
- Tanzania
|
||||
- :doc:`Thailand <fiscal_localizations/thailand>`
|
||||
- Tunisia
|
||||
- Türkiye
|
||||
- Uganda
|
||||
- Ukraine
|
||||
- :doc:`United Arab Emirates <fiscal_localizations/united_arab_emirates>`
|
||||
- :doc:`United Kingdom <fiscal_localizations/united_kingdom>`
|
||||
- :doc:`United States of America <fiscal_localizations/united_states>`
|
||||
- :doc:`Uruguay <fiscal_localizations/uruguay>`
|
||||
- Venezuela
|
||||
- :doc:`Vietnam <fiscal_localizations/vietnam>`
|
||||
- Zambia
|
||||
|
||||
- Germany SKR03 - Accounting
|
||||
- Germany SKR04 - Accounting
|
||||
|
||||
- Greece - Accounting
|
||||
- Guatemala - Accounting
|
||||
- Honduras - Accounting
|
||||
- :doc:`Hong Kong - Accounting <fiscal_localizations/hong_kong>`
|
||||
- Hungarian - Accounting
|
||||
- :doc:`Indian - Accounting <fiscal_localizations/india>`
|
||||
- :doc:`Indonesian - Accounting <fiscal_localizations/indonesia>`
|
||||
- Ireland - Accounting
|
||||
- Israel - Accounting
|
||||
- :doc:`Italy - Accounting <fiscal_localizations/italy>`
|
||||
- Japan - Accounting
|
||||
- :doc:`Kenya - Accounting <fiscal_localizations/kenya>`
|
||||
- Lithuania - Accounting
|
||||
- :doc:`Luxembourg - Accounting <fiscal_localizations/luxembourg>`
|
||||
- :doc:`Malaysia - Accounting <fiscal_localizations/malaysia>`
|
||||
- Maroc - Accounting
|
||||
- :doc:`Mexico - Accounting <fiscal_localizations/mexico>`
|
||||
- Mongolia - Accounting
|
||||
- :doc:`Netherlands - Accounting <fiscal_localizations/netherlands>`
|
||||
- :doc:`New Zealand - Accounting <fiscal_localizations/new_zealand>`
|
||||
- Norway - Accounting
|
||||
- OHADA - Accounting
|
||||
- Pakistan - Accounting
|
||||
- Panama - Accounting
|
||||
- :doc:`Peru - Accounting <fiscal_localizations/peru>`
|
||||
- :doc:`Philippines - Accounting <fiscal_localizations/philippines>`
|
||||
- Poland - Accounting
|
||||
- Portugal - Accounting
|
||||
- :doc:`Romania - Accounting <fiscal_localizations/romania>`
|
||||
- :doc:`Saudi Arabia - Accounting <fiscal_localizations/saudi_arabia>`
|
||||
- :doc:`Singapore - Accounting <fiscal_localizations/singapore>`
|
||||
- Slovak - Accounting
|
||||
- Slovenian - Accounting
|
||||
- South Africa - Accounting
|
||||
- :doc:`Spain - Accounting (PGCE 2008) <fiscal_localizations/spain>`
|
||||
- Sweden - Accounting
|
||||
- :doc:`Switzerland - Accounting <fiscal_localizations/switzerland>`
|
||||
- Taiwan - Accounting
|
||||
- :doc:`Thailand - Accounting <fiscal_localizations/thailand>`
|
||||
- Turkey - Accounting
|
||||
- :doc:`United Arab Emirates - Accounting <fiscal_localizations/united_arab_emirates>`
|
||||
- :doc:`UK - Accounting <fiscal_localizations/united_kingdom>`
|
||||
- Ukraine - Accounting
|
||||
- :doc:`United States - Accounting <fiscal_localizations/united_states>`
|
||||
- Uruguay - Accounting
|
||||
- Venezuela - Accounting
|
||||
- :doc:`Vietnam - Accounting <fiscal_localizations/vietnam>`
|
||||
.. seealso::
|
||||
:doc:`Employment Hero Payroll documentation <fiscal_localizations/employment_hero>`
|
||||
|
||||
.. toctree::
|
||||
:titlesonly:
|
||||
@@ -135,6 +170,7 @@ available on Odoo.
|
||||
fiscal_localizations/austria
|
||||
fiscal_localizations/belgium
|
||||
fiscal_localizations/brazil
|
||||
fiscal_localizations/canada
|
||||
fiscal_localizations/chile
|
||||
fiscal_localizations/colombia
|
||||
fiscal_localizations/ecuador
|
||||
@@ -163,4 +199,5 @@ available on Odoo.
|
||||
fiscal_localizations/united_arab_emirates
|
||||
fiscal_localizations/united_kingdom
|
||||
fiscal_localizations/united_states
|
||||
fiscal_localizations/uruguay
|
||||
fiscal_localizations/employment_hero
|
||||
|
||||
@@ -619,9 +619,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
|
||||
|
||||
@@ -460,14 +460,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
|
||||
|
||||
@@ -24,6 +24,17 @@ with AvaTax.
|
||||
The localization also includes taxes and a chart of accounts template that can be modified if
|
||||
needed.
|
||||
|
||||
.. seealso::
|
||||
Links to helpful resources for the Brazilian localization, including onboarding materials and
|
||||
videos:
|
||||
|
||||
- `Onboarding checklist for new users
|
||||
<https://docs.google.com/document/d/e/2PACX-1vSNYTYVnR_BzvQKL3kn5YdVzPjjHc-WHw_U3udk5tz_dJXo69woj9QrTMinH_siyOX2rLGjvspvc8AF/pub>`_.
|
||||
- `YouTube playlist - Brazil (Localization)
|
||||
<https://youtube.com/playlist?list=PL1-aSABtP6ADqexw4YNCbKPmpFggajxlX&si=RgmZR3Jco3223Np4>`_.
|
||||
- `YouTube playlist - Tutoriais Odoo em Português
|
||||
<https://youtube.com/playlist?list=PL1-aSABtP6ACGOW2UREePGjHQ2Bgdy-UZ&si=j6tiI36eB7BoKVQB>`_.
|
||||
|
||||
Configuration
|
||||
=============
|
||||
|
||||
@@ -136,6 +147,7 @@ Correction letter, Invalidate invoice number range), an API call is made using c
|
||||
.. note::
|
||||
- Odoo is a certified partner of Avalara Brazil.
|
||||
- You can `buy IAP credit on odoo.com <https://iap.odoo.com/iap/in-app-services/819>`_.
|
||||
- On creation, new databases receive 500 free credits.
|
||||
|
||||
Credential configuration
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
@@ -0,0 +1,311 @@
|
||||
======
|
||||
Canada
|
||||
======
|
||||
|
||||
.. |COA| replace:: :abbr:`CoA (Chart of Accounts)`
|
||||
.. |AR| replace:: :abbr:`AR (Accounts Receivable)`
|
||||
.. |AP| replace:: :abbr:`AP (Accounts Payable)`
|
||||
|
||||
The Odoo Canada localization package provides tailored features and configurations for Canadian
|
||||
businesses.
|
||||
|
||||
A series of videos on the subject of Accounting are available through Odoo's eLearning platform.
|
||||
These videos cover how to start from scratch, set up configurations, complete common workflows, and
|
||||
provide in-depth looks at some specific use cases.
|
||||
|
||||
.. seealso::
|
||||
- `Odoo Tutorials: Accounting & Invoicing
|
||||
<https://www.odoo.com/slides/accounting-and-invoicing-19>`_
|
||||
- `Odoo SmartClass: Accounting <https://www.odoo.com/slides/smartclass-accounting-121>`_
|
||||
|
||||
Configuration
|
||||
=============
|
||||
|
||||
Below are the available modules in Odoo for accounting use in Canada.
|
||||
|
||||
Modules installation
|
||||
--------------------
|
||||
|
||||
:ref:`Install <general/install>` the following modules to get all the features of the Canadian
|
||||
localization:
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
:widths: 25 25 50
|
||||
|
||||
* - Name
|
||||
- Technical name
|
||||
- Description
|
||||
* - :guilabel:`Canada - Accounting`
|
||||
- `l10n_ca`
|
||||
- Base accounting module for Canadian localization.
|
||||
* - :guilabel:`Canada - Accounting Reports`
|
||||
- `l10n_ca_reports`
|
||||
- Adds Canadian accounting reports.
|
||||
* - :guilabel:`Canadian Checks Layout`
|
||||
- `l10n_ca_check_printing`
|
||||
- Enables the printing of payments on pre-printed check paper. Supports the three most common
|
||||
check formats and works natively with the linked checks from `checkdepot.net
|
||||
<https://checkdepot.net/collections/computer-checks/Odoo>`_.
|
||||
|
||||
- `Check on top: Quicken / QuickBooks standard
|
||||
<https://checkdepot.net/collections/computer-checks/odoo+top-check>`_
|
||||
- `Check on middle: Peachtree standard
|
||||
<https://checkdepot.net/collections/computer-checks/odoo+middle-check>`_
|
||||
- `Check on bottom: ADP standard
|
||||
<https://checkdepot.net/collections/computer-checks/odoo+Bottom-Check>`_
|
||||
|
||||
.. _l10n_ca/coa:
|
||||
|
||||
Chart of accounts
|
||||
=================
|
||||
|
||||
The :doc:`chart of accounts (COA) <../accounting/get_started/chart_of_accounts>` for the Canadian
|
||||
localization, in Odoo, has accounts grouped into seven main categories, with corresponding numeric
|
||||
values that prefix individual journal entries:
|
||||
|
||||
- **Receivable**: the balance of money (or credit) due to the business for goods or services
|
||||
delivered or used, but not yet paid for by customers. |AR| is indicated by the journal code
|
||||
labeled (or beginning) with :guilabel:`1`.
|
||||
- **Payable**: the business's short-term obligations owed to its creditors or suppliers, which have
|
||||
not yet been paid. |AP| is indicated by the journal code labeled (or beginning) with
|
||||
:guilabel:`2`.
|
||||
- **Equity**: the amount of money that would be returned to a company's shareholders if all of the
|
||||
assets were liquidated and all of the company's debt was paid off in the case of liquidation.
|
||||
Equity is indicated by the journal code labeled (or beginning) with :guilabel:`3` or
|
||||
:guilabel:`9`.
|
||||
- **Assets**: items listed on the balance sheet that contains economic value or have the ability to
|
||||
generate cash flows in the future, such as a piece of machinery, a financial security, or a
|
||||
patent. Assets are indicated by the journal code labeled (or beginning) with :guilabel:`1`.
|
||||
- **Liability**: refers to a company's financial debts or obligations that arise during the course
|
||||
of business operations. Liabilities are indicated by the journal code labeled (or beginning) with
|
||||
:guilabel:`2`.
|
||||
- **Income**: synonymous with *net income*, this is the profit a company retains after paying off
|
||||
all relevant expenses from sales revenue earned. Income is indicated by the journal code labeled
|
||||
(or beginning) with :guilabel:`4` or :guilabel:`6`.
|
||||
- **Expenses**: the cost of operations that a company incurs to generate revenue. Expenses are
|
||||
indicated by the journal code labeled (or beginning) with a :guilabel:`6`.
|
||||
|
||||
.. tip::
|
||||
Predefined accounts are included in Odoo, as part of the |COA| that's installed with the Canadian
|
||||
localization package. The accounts listed below are preconfigured to perform certain operations
|
||||
within Odoo. It is recommended to **not** delete these accounts; however, if changes are needed,
|
||||
rename the accounts instead.
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
:stub-columns: 1
|
||||
|
||||
* - :guilabel:`Type`
|
||||
- :guilabel:`Account Name`
|
||||
* - :guilabel:`Current Assets`
|
||||
- | :guilabel:`Bank Suspense Account`
|
||||
| :guilabel:`Outstanding Receipts`
|
||||
| :guilabel:`Outstanding Payments`
|
||||
| :guilabel:`Liquidity Transfer`
|
||||
| :guilabel:`Stock Valuation`
|
||||
| :guilabel:`Stock Interim (Received)`
|
||||
| :guilabel:`Stock Interim (Delivered)`
|
||||
| :guilabel:`Cost of Production`
|
||||
* - :guilabel:`Income`
|
||||
- | :guilabel:`Foreign Exchange Gain`
|
||||
| :guilabel:`Cash Difference Gain`
|
||||
| :guilabel:`Cash Discount Gain`
|
||||
* - :guilabel:`Expenses`
|
||||
- | :guilabel:`Cash Discount Loss`
|
||||
| :guilabel:`Foreign Exchange Loss`
|
||||
| :guilabel:`Cash Difference Loss`
|
||||
* - :guilabel:`Current Year Earnings`
|
||||
- :guilabel:`Undistributed Profits/Losses`
|
||||
* - :guilabel:`Receivable`
|
||||
- :guilabel:`Account Receivable`
|
||||
* - :guilabel:`Payable`
|
||||
- :guilabel:`Account Payable`
|
||||
|
||||
.. seealso::
|
||||
- :doc:`../accounting/get_started/chart_of_accounts`
|
||||
- :doc:`../accounting/get_started/cheat_sheet`
|
||||
|
||||
.. _l10n_ca/fiscal-positions:
|
||||
|
||||
Fiscal positions
|
||||
================
|
||||
|
||||
Canadian tax rates and taxable items vary by province and territory. Default fiscal positions are
|
||||
automatically created when the Odoo **Accounting** application is installed. To manage or configure
|
||||
additional fiscal positions, navigate to :menuselection:`Accounting --> Configuration --> Fiscal
|
||||
Positions`.
|
||||
|
||||
The following fiscal positions are available by default:
|
||||
|
||||
- :guilabel:`Alberta (AB)`
|
||||
- :guilabel:`British Columbia (BC)`
|
||||
- :guilabel:`Manitoba (MB)`
|
||||
- :guilabel:`New Brunswick (NB)`
|
||||
- :guilabel:`Newfoundland and Labrador (NL)`
|
||||
- :guilabel:`Nova Scotia (NS)`
|
||||
- :guilabel:`Northwest Territories (NT)`
|
||||
- :guilabel:`Nunavut (NU)`
|
||||
- :guilabel:`Ontario (ON)`
|
||||
- :guilabel:`Prince Edward Islands (PE)`
|
||||
- :guilabel:`Quebec (QC)`
|
||||
- :guilabel:`Saskatchewan (SK)`
|
||||
- :guilabel:`Yukon (YT)`
|
||||
- :guilabel:`International (INTL)`
|
||||
|
||||
.. image:: canada/l10n-ca-fiscal-positions.png
|
||||
:alt: The default fiscal positions for the Canada localization in Odoo Accounting.
|
||||
|
||||
.. note::
|
||||
When considering what taxes to be applied, it is the province where the delivery occurs that
|
||||
matters. Therefore, delivery is the responsibility of the vendor and is accounted for at the
|
||||
customer location.
|
||||
|
||||
.. example::
|
||||
- A delivery is made to a customer from another province.
|
||||
Set the fiscal position on the customer's record to the province of the customer.
|
||||
- A customer from another province comes to pick up products.
|
||||
No fiscal position should be set on the customer's record.
|
||||
- An international vendor doesn't charge any tax, but taxes are charged by the customs broker.
|
||||
Set the fiscal position on the vendor's record to *International*.
|
||||
- An international vendor charges provincial tax.
|
||||
Set the fiscal position on the vendor's record to your position.
|
||||
|
||||
.. seealso::
|
||||
:doc:`../accounting/taxes/fiscal_positions`
|
||||
|
||||
.. _l10n_ca/taxes:
|
||||
|
||||
Taxes
|
||||
=====
|
||||
|
||||
In Canada, tax rates and what is considered taxable vary by province and territory. Default *Sales*
|
||||
and *Purchases* taxes are created automatically when the Odoo **Accounting** application is
|
||||
installed. To manage existing or configure additional taxes, navigate to :menuselection:`Accounting
|
||||
--> Configuration --> Taxes`.
|
||||
|
||||
.. _l10n_ca/taxes-avatax:
|
||||
|
||||
AvaTax
|
||||
------
|
||||
|
||||
**Avalara AvaTax** is a cloud-based tax calculation and compliance software that integrates with
|
||||
Odoo for several localizations, including Canada. Integrating AvaTax with Odoo provides real-time
|
||||
and region-specific tax calculations when items are sold, purchased, and invoiced in the database.
|
||||
|
||||
.. important::
|
||||
AvaTax is available for integration with databases/companies that have locations in Canada and/or
|
||||
the United States. Reference the :ref:`avatax/fiscal_country` documentation for more information.
|
||||
|
||||
.. seealso::
|
||||
Refer to the documentation articles below to integrate and configure an AvaTax account with an
|
||||
Odoo database:
|
||||
|
||||
- :doc:`AvaTax integration <../accounting/taxes/avatax>`
|
||||
- :doc:`Avalara management portal <../accounting/taxes/avatax/avalara_portal>`
|
||||
- :doc:`Calculate taxes with AvaTax <../accounting/taxes/avatax/avatax_use>`
|
||||
- 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>`_
|
||||
|
||||
.. _l10n_ca/reports:
|
||||
|
||||
Reports
|
||||
=======
|
||||
|
||||
A number of :doc:`report selections <../accounting/reporting>` are readily available for the
|
||||
Canadian localization, under the :menuselection:`Accounting app --> Reporting` drop-down menu:
|
||||
|
||||
- :ref:`Balance Sheet <accounting/reporting/balance-sheet>`: a "snapshot" of a company's financial
|
||||
position at a specific point in time, which contains an overview of a company's assets,
|
||||
liabilities, and equity.
|
||||
|
||||
Be sure to select the :menuselection:`Balance sheet (CA)` option from the :icon:`fa-book`
|
||||
:guilabel:`Report` filter.
|
||||
|
||||
.. image:: canada/l10n-ca-balance-sheet.png
|
||||
:alt: Balance sheet report selection for CA localization in Odoo.
|
||||
|
||||
- :ref:`Profit & Loss <accounting/reporting/balance-sheet>`: otherwise known as a *P&L statement* or
|
||||
*income statement*, provides a summary of a company's revenues, expenses, and profits/losses over
|
||||
a given period of time.
|
||||
|
||||
Be sure to select the :menuselection:`Profit and loss (CA)` option from the :icon:`fa-book`
|
||||
:guilabel:`Report` filter.
|
||||
|
||||
.. image:: canada/l10n-ca-profit-loss.png
|
||||
:alt: Profit and loss report selection for CA localization in Odoo.
|
||||
|
||||
- :guilabel:`Cash Flow Statement`: shows how much cash and cash equivalents a company has received
|
||||
and spent in a given period.
|
||||
- :ref:`Executive Summary <accounting/reporting/executive-summary>`: an overview report that covers
|
||||
the key performance indicators of a company's financial position, such as revenue, profit, and
|
||||
debt.
|
||||
- :ref:`Tax Report <accounting/reporting/tax-report>`: an official form filed for a tax authority
|
||||
that reports income, expenses, and other pertinent tax information. Tax reports allow taxpayers to
|
||||
calculate their tax liability, schedule tax payments, or request refunds for the overpayment of
|
||||
taxes. In Odoo, the tax report can be made monthly, every two months, quarterly, every 4 months,
|
||||
semi-annually, and annually.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`Accounting reporting <../accounting/reporting>`
|
||||
- :doc:`../../essentials/search`
|
||||
|
||||
.. _l10n_ca/cash-discount:
|
||||
|
||||
Cash discount
|
||||
=============
|
||||
|
||||
Cash discounts can be configured from :menuselection:`Accounting app --> Payment Terms`. Each
|
||||
payment term can be set up with a cash discount and reduced tax.
|
||||
|
||||
.. seealso::
|
||||
:doc:`../accounting/customer_invoices/cash_discounts`
|
||||
|
||||
Writing checks
|
||||
==============
|
||||
|
||||
The Canadian localization allows users to print checks for vendor payments. Be sure the *Canadian
|
||||
Checks Layout* (`l10n_ca_check_printing`) module for the CA localization is :ref:`installed
|
||||
<general/install>`.
|
||||
|
||||
To enable check printing from Odoo, navigate to :menuselection:`Accounting --> Configuration -->
|
||||
Settings` and find the :guilabel:`Vendor Payments` section. From here, tick the :guilabel:`Checks`
|
||||
checkbox to reveal several fields for check configuration.
|
||||
|
||||
Select a :guilabel:`Check Layout` from the drop-down menu:
|
||||
|
||||
- :guilabel:`Print Check (Top) - CA`
|
||||
- :guilabel:`Print Check (Middle) - CA`
|
||||
- :guilabel:`Print Check (Bottom) - CA`
|
||||
|
||||
Next, choose whether or not to enable the :guilabel:`Multi-Pages Check Stub` checkbox.
|
||||
|
||||
Optionally set a :guilabel:`Check Top Margin`, :guilabel:`Check Left Margin`, or :guilabel:`Check
|
||||
Right Margin` if required.
|
||||
|
||||
Tick the :guilabel:`Print Date Label` checkbox if a date label is required.
|
||||
|
||||
Once all check configurations are complete, :guilabel:`Save` the settings.
|
||||
|
||||
.. tip::
|
||||
Some of the check formats may require pre-printed paper from a third party vendor.
|
||||
`Pre-printed checks from checkdepot.net <https://checkdepot.net/collections/odoo-checks>`_ are
|
||||
recommended.
|
||||
|
||||
.. seealso::
|
||||
:doc:`../accounting/payments/pay_checks`
|
||||
|
||||
Receive pre-authorized debits
|
||||
=============================
|
||||
|
||||
Pre-authorized debits are a method for receiving payments from customers, where the customer
|
||||
authorizes the business to withdraw funds from their bank account on a recurring basis. This
|
||||
functionality is commonly used for subscriptions, recurring invoices, and other regular payments.
|
||||
|
||||
In the Odoo Canadian localization, pre-authorized debits are facilitated through an
|
||||
:doc:`integration with Stripe <../payment_providers/stripe>`.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`Setting up payment providers <../payment_providers>`
|
||||
- `Stripe's pre-authorized debit payments documentation
|
||||
<https://docs.stripe.com/payments/acss-debit>`_
|
||||
|
After Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 31 KiB |
|
After Width: | Height: | Size: 18 KiB |
@@ -39,12 +39,9 @@ localization.
|
||||
- Adds the *Propuesta F29* and *Balance Tributario (8 columnas)* reports.
|
||||
* - :guilabel:`Chile - E-invoicing`
|
||||
- `l10n_cl_edi`
|
||||
- Includes all technical and functional requirements to generate and receive electronic
|
||||
invoices online based on the :abbr:`SII (Servicio de Impuestos Internos)` regulations.
|
||||
* - :guilabel:`Chile - Electronic Receipt`
|
||||
- `l10n_cl_boletas`
|
||||
- Includes all technical and functional requirements to generate and receive electronic
|
||||
invoices digitally based on the :abbr:`SII (Servicio de Impuestos Internos)` regulations.
|
||||
- Includes all technical and functional requirements to receive and generate **electronic
|
||||
receipts** and **invoices** online based on the :abbr:`SII (Servicio de Impuestos Internos)`
|
||||
regulations.
|
||||
* - :guilabel:`Electronic Exports of Goods for Chile`
|
||||
- `l10n_cl_edi_exports`
|
||||
- Includes technical and functional requirements to generate electronic invoices for exporting
|
||||
|
||||
@@ -3,23 +3,38 @@ Colombia
|
||||
========
|
||||
|
||||
.. |DIAN| replace:: :abbr:`DIAN (Dirección de Impuestos y Aduanas Nacionales)`
|
||||
.. |NIT| replace:: :abbr:`NIT (El Número de Identificación Tributaria)`
|
||||
|
||||
Odoo's Colombian localization package provides accounting, fiscal, and legal features for databases
|
||||
in Colombia – such as chart of accounts, taxes, and electronic invoicing.
|
||||
in Colombia - such as chart of accounts, taxes, and electronic invoicing. The localization has the
|
||||
following `prerequisites
|
||||
<https://micrositios.dian.gov.co/sistema-de-facturacion-electronica/que-requieres-para-factura-electronicamente/>`_
|
||||
when using the `DIAN Own Software
|
||||
<https://micrositios.dian.gov.co/sistema-de-facturacion-electronica/como-puedes-facturar-electronicamente/>`_
|
||||
solution with Odoo:
|
||||
|
||||
In addition, a series of videos on the subject is also available. These videos cover how to start
|
||||
from scratch, set up configurations, complete common workflows, and provide in-depth looks at some
|
||||
specific use cases as well.
|
||||
- Be registered in the `RUT
|
||||
<https://www.dian.gov.co/tramitesservicios/tramites-y-servicios/tributarios/Paginas/RUT.aspx>`_
|
||||
(Registro Único Tributario) with a valid |NIT|.
|
||||
- Have a valid digital signature certificate `approved by the ONAC
|
||||
<https://onac.org.co/directorio-de-acreditados/>`_.
|
||||
- `Register and get enabled
|
||||
<https://micrositios.dian.gov.co/sistema-de-facturacion-electronica/proceso-de-registro-y-habilitacion-como-facturador-electronico/>`_
|
||||
by completing the certification process required by the |DIAN|.
|
||||
|
||||
.. seealso::
|
||||
`Smart Tutorial - Colombian Localization
|
||||
<https://www.odoo.com/slides/smart-tutorial-localizacion-de-colombia-132>`_.
|
||||
- For more information on how to complete the certification process for the |DIAN| module, review
|
||||
the following `webinar <https://www.youtube.com/watch?v=l0G6iDc7NQA>`_.
|
||||
- `Smart Tutorial - Colombian Localization
|
||||
<https://www.odoo.com/slides/smart-tutorial-localizacion-de-colombia-132>`_.
|
||||
|
||||
.. _colombia/configuration:
|
||||
.. _localization/colombia/configuration:
|
||||
|
||||
Configuration
|
||||
=============
|
||||
|
||||
.. _localization/colombia/modules:
|
||||
|
||||
Modules installation
|
||||
--------------------
|
||||
|
||||
@@ -38,155 +53,148 @@ localization:
|
||||
- Default :ref:`fiscal localization package <fiscal_localizations/packages>`. This module adds
|
||||
the base accounting features for the Colombian localization: chart of accounts, taxes,
|
||||
withholdings, and identification document type.
|
||||
* - :guilabel:`Electronic invoicing for Colombia with DIAN`
|
||||
- `l10n_co_dian`
|
||||
- This module includes the features required for integration with the |DIAN| as its own
|
||||
software, and adds the ability to generate electronic invoices and support documents based on
|
||||
|DIAN| regulations.
|
||||
* - :guilabel:`Colombian - Accounting Reports`
|
||||
- `l10n_co_reports`
|
||||
- Includes accounting reports for sending certifications to suppliers for withholdings applied.
|
||||
- This module includes accounting reports for sending certifications to suppliers for
|
||||
withholdings applied.
|
||||
* - :guilabel:`Electronic invoicing for Colombia with Carvajal`
|
||||
- `l10n_co_edi`
|
||||
- This module includes the features required for integration with Carvajal, and
|
||||
generates the electronic invoices and support documents related to the vendor bills, based on
|
||||
|DIAN| regulations.
|
||||
- This module includes the features required for integration with Carvajal. Adds the ability to
|
||||
generate the electronic invoices and support documents, based on |DIAN| regulations.
|
||||
* - :guilabel:`Colombian - Point of Sale`
|
||||
- `l10n_co_pos`
|
||||
- Includes Point of Sale receipts for Colombian localization.
|
||||
- This module includes **Point of Sale** receipts for Colombian localization.
|
||||
|
||||
.. note::
|
||||
When `Colombia` is selected for a company's :guilabel:`Fiscal Localization`, Odoo automatically
|
||||
installs certain modules.
|
||||
.. _localization/colombia/configuration/company:
|
||||
|
||||
Company configuration
|
||||
---------------------
|
||||
Company information
|
||||
-------------------
|
||||
|
||||
To configure your company information, go to the :menuselection:`Contacts` app, and search for your
|
||||
company.
|
||||
To configure your company information:
|
||||
|
||||
Alternatively, activate :ref:`developer mode <developer-mode>` and navigate to
|
||||
:menuselection:`General Setting --> Company --> Update Info --> Contact`. Then, edit the contact
|
||||
form and configure the following information:
|
||||
#. Access your company's contact form:
|
||||
|
||||
- :guilabel:`Company Name`.
|
||||
- :guilabel:`Address`: Including :guilabel:`City`, :guilabel:`Department` and :guilabel:`ZIP` code.
|
||||
- :guilabel:`Identification Number`: Select the :guilabel:`Identification Type` (`NIT`, `Cédula de
|
||||
Ciudadanía`, `Registro Civil`, etc.). When the :guilabel:`Identification Type` is `NIT`, the
|
||||
:guilabel:`Identification Number` **must** have the *verification digit* at the end of the ID
|
||||
prefixed by a hyphen (`-`).
|
||||
- Go to the :guilabel:`Contacts` app and search for your company or;
|
||||
- Go to the :guilabel:`Settings` app, activate the :ref:`developer mode <developer-mode>`, and in
|
||||
the :guilabel:`Companies` section, click :guilabel:`Update Info`. Then, in the
|
||||
:guilabel:`Contact` field, click on the company name.
|
||||
|
||||
Next, configure the :guilabel:`Fiscal Information` in the :guilabel:`Sales & Purchase` tab:
|
||||
#. Configure the following information:
|
||||
|
||||
- :guilabel:`Obligaciones y Responsabilidades`: Select the fiscal responsibility for the company
|
||||
(`O-13` Gran Contribuyente, `O-15` Autorretenedor, `O-23` Agente de retención IVA, `O-47` Regimen
|
||||
de tributación simple, `R-99-PN` No Aplica).
|
||||
- :guilabel:`Gran Contribuyente`: If the company is *Gran Contribuyente* this option should be
|
||||
selected.
|
||||
- :guilabel:`Fiscal Regimen`: Select the Tribute Name for the company (`IVA`, `INC`, `IVA e INC`,
|
||||
or `No Aplica`)
|
||||
- :guilabel:`Commercial Name`: If the company uses a specific commercial name, and it needs to be
|
||||
displayed in the invoice.
|
||||
- :guilabel:`Company Name`.
|
||||
- :guilabel:`Address`: Including :guilabel:`City`, :guilabel:`Department`, and :guilabel:`ZIP`
|
||||
code.
|
||||
- :guilabel:`Identification Number`: Select the :guilabel:`Identification Type` (:guilabel:`NIT`,
|
||||
:guilabel:`Cédula de Ciudadanía`, :guilabel:`Registro Civil`, etc.). When the
|
||||
:guilabel:`Identification Type` is :guilabel:`NIT`, the
|
||||
:guilabel:`Identification Number` **must** have the *verification digit* at the end of the ID
|
||||
prefixed by a hyphen (`-`).
|
||||
|
||||
Carjaval credentials configuration
|
||||
----------------------------------
|
||||
#. Go to the :guilabel:`Sales & Purchase` tab and configure the :guilabel:`Fiscal Information`:
|
||||
|
||||
Once the modules are installed, the user credentials **must** be configured, in order to connect
|
||||
with Carvajal Web Service. To do so, navigate to :menuselection:`Accounting --> Configuration -->
|
||||
Settings` and scroll to the :guilabel:`Colombian Electronic Invoicing` section. Then, fill in the
|
||||
required configuration information provided by Carvajal:
|
||||
|
||||
- :guilabel:`Username` and :guilabel:`Password`: Username and password (provided by Carvajal) to the
|
||||
company.
|
||||
- :guilabel:`Company Registry`: Company's NIT number *without* the verification code.
|
||||
- :guilabel:`Account ID`: Company's NIT number followed by `_01`.
|
||||
- :guilabel:`Colombia Template Code`: Select one of the two available templates (`CGEN03` or
|
||||
`CGNE04`) to be used in the PDF format of the electronic invoice.
|
||||
|
||||
Enable the :guilabel:`Test mode` checkbox to connect with the Carvajal testing environment.
|
||||
|
||||
Once Odoo and Carvajal are fully configured and ready for production, deactivate the :guilabel:`Test
|
||||
mode` checkbox to use the production database.
|
||||
|
||||
.. image:: colombia/carvajal-configuration.png
|
||||
:align: center
|
||||
:alt: Configure credentials for Carvajal web service in Odoo.
|
||||
|
||||
.. important::
|
||||
:guilabel:`Test mode` must **only** be used on duplicated databases, **not** the production
|
||||
environment.
|
||||
|
||||
Report data configuration
|
||||
-------------------------
|
||||
|
||||
Report data can be defined for the fiscal section and bank information of the PDF as part of the
|
||||
configurable information sent in the XML.
|
||||
|
||||
Navigate to :menuselection:`Accounting --> Configuration --> Settings`, and scroll to the
|
||||
:guilabel:`Colombian Electronic Invoicing` section, in order to find the :guilabel:`Report
|
||||
Configuration` fields. Here the header information for each report type can be configured.
|
||||
|
||||
- :guilabel:`Gran Contribuyente`
|
||||
- :guilabel:`Tipo de Régimen`
|
||||
- :guilabel:`Retenedores de IVA`
|
||||
- :guilabel:`Autorretenedores`
|
||||
- :guilabel:`Resolución Aplicable`
|
||||
- :guilabel:`Actividad Económica`
|
||||
- :guilabel:`Bank Information`
|
||||
|
||||
.. _colombia/master-data:
|
||||
|
||||
Master data configuration
|
||||
-------------------------
|
||||
|
||||
Partner
|
||||
~~~~~~~
|
||||
|
||||
Partner contacts can be created in the *Contacts* app. To do so, navigate to
|
||||
:menuselection:`Contacts`, and click the :guilabel:`Create` button.
|
||||
|
||||
Then, name the contact, and using the radio buttons, select the contact type, either
|
||||
:guilabel:`Individual` or :guilabel:`Company`.
|
||||
|
||||
Complete the full :guilabel:`Address`, including the :guilabel:`City`, :guilabel:`State`, and
|
||||
:guilabel:`ZIP` code. Then, complete the identification and fiscal information.
|
||||
|
||||
Identification information
|
||||
**************************
|
||||
|
||||
Identification types, defined by the |DIAN|, are available on the partner form, as part of the
|
||||
Colombian localization. Colombian partners **must** have their :guilabel:`Identification Number`
|
||||
(VAT) and :guilabel:`Document Type` set.
|
||||
- :guilabel:`Obligaciones y Responsabilidades`: Select the fiscal responsibility for the company.
|
||||
(:guilabel:`O-13` Gran Contribuyente, :guilabel:`O-15` Autorretenedor,
|
||||
:guilabel:`O-23` Agente de retención IVA, :guilabel:`O-47` Regimen de tributación simple,
|
||||
:guilabel:`R-99-PN` No Aplica).
|
||||
- :guilabel:`Gran Contribuyente`: If the company is *Gran Contribuyente*, enable this option.
|
||||
- :guilabel:`Fiscal Regimen`: Select the Tribute Name for the company (:guilabel:`IVA`,
|
||||
:guilabel:`INC`, :guilabel:`IVA e INC`, or :guilabel:`No Aplica`)
|
||||
- :guilabel:`Commercial Name`: If the company uses a specific commercial name and it needs to be
|
||||
displayed in the invoice.
|
||||
|
||||
.. tip::
|
||||
When the :guilabel:`Document Type` is `NIT`, the :guilabel:`Identification Number` needs to be
|
||||
configured in Odoo, including the *verification digit at the end of the ID, prefixed by a hyphen
|
||||
(`-`)*.
|
||||
The data configured in the :guilabel:`Fiscal Information` section is printed in the valid fiscal
|
||||
PDF reports.
|
||||
|
||||
Fiscal information
|
||||
******************
|
||||
.. _localization/colombia/einvoice-configuration:
|
||||
|
||||
The partner's responsibility codes (section 53 in the :abbr:`RUT (Registro único tributario)`
|
||||
document) are included as part of the electronic invoicing module, as it is required by the |DIAN|.
|
||||
Electronic invoicing credentials and |DIAN| environment
|
||||
-------------------------------------------------------
|
||||
|
||||
The required fields can be found under :menuselection:`Partner --> Sales & Purchase Tab --> Fiscal
|
||||
Information section`:
|
||||
To configure the user credentials to be used to connect with the |DIAN|'s web service and the
|
||||
|DIAN| environment, navigate to :menuselection:`Accounting --> Configuration --> Settings` and
|
||||
scroll to the :guilabel:`Colombian Electronic Invoicing` section. Then, follow these steps:
|
||||
|
||||
- :guilabel:`Obligaciones y Responsabilidades`: Select the fiscal responsibility for the company
|
||||
(`O-13` Gran Contribuyente, `O-15` Autorretenedor, `O-23` Agente de retención IVA, `O-47` Regimen
|
||||
de tributación simple, or `R-99-PN` No Aplica).
|
||||
- :guilabel:`Gran Contribuyente`: If the company is *Gran Contribuyente* this option should be
|
||||
selected.
|
||||
- :guilabel:`Fiscal Regimen`: Select the tribute name for the company (`IVA`, `INC`, `IVA e INC`, or
|
||||
`No Aplica`)
|
||||
- :guilabel:`Commercial Name`: If the company uses a specific commercial name, and it needs to be
|
||||
displayed in the invoice.
|
||||
#. Select :guilabel:`DIAN: Free Service` as the :guilabel:`Electronic Invoicing Provider`.
|
||||
#. Configure the :guilabel:`Operation Modes` for the respective types of documents
|
||||
(*electronic invoices* or *support documents*) to be generated from Odoo. Click
|
||||
:guilabel:`Add a line`, then fill in the fields:
|
||||
|
||||
- :guilabel:`Software Mode`: the type of document to be generated with the operation mode.
|
||||
- :guilabel:`Software ID`: the ID generated by |DIAN| for the specific operation mode.
|
||||
- :guilabel:`Software PIN`: the PIN selected in the operation mode configuration in the |DIAN|
|
||||
portal.
|
||||
- :guilabel:`Testing ID`: the testing ID generated by |DIAN| and obtained after testing the
|
||||
operation mode.
|
||||
|
||||
#. Configure the available :guilabel:`Certificates` to sign the electronic documents. Click
|
||||
:guilabel:`Add a line`, then fill in the fields:
|
||||
|
||||
- :guilabel:`Name`: the name of the certificate.
|
||||
- :guilabel:`Certificate`: upload the certificate file in PEM format. In the :guilabel:`Private
|
||||
Key` field that appears on the screen, select an existing private key or create a new one. To
|
||||
do so, enter a key name and select :guilabel:`Create and edit`. Then, in the :guilabel:`Create
|
||||
Private Key` wizard, upload a valid :guilabel:`Key file` and click :guilabel:`Save & Close`.
|
||||
|
||||
.. image:: colombia/dian-credentials-configuration.png
|
||||
:alt: Colombian electronic invoicing credentials configured.
|
||||
|
||||
#. Configure the |DIAN| environment; the |DIAN| electronic invoicing module offers three different
|
||||
|DIAN| environments to connect with:
|
||||
|
||||
- **Certification environment**: This environment is useful to pass the |DIAN| certification
|
||||
process and obtain the *Enabled* status to invoice from Odoo. To activate it, enable both the
|
||||
:guilabel:`Test environment` and the :guilabel:`Activate the certification process` checkboxes.
|
||||
|
||||
- **Testing environment**: This environment allows reproducing electronic invoicing flows
|
||||
and validations in the |DIAN| testing portal. To activate it, enable only the :guilabel:`Test
|
||||
Environment` checkbox.
|
||||
|
||||
- **Production environment**: Activate production databases to generate valid electronic documents.
|
||||
To activate it, disable both the :guilabel:`Test environment` and the :guilabel:`Activate the
|
||||
certification process` checkboxes.
|
||||
|
||||
.. note::
|
||||
In a multi-company database, each company can have its own certificate.
|
||||
|
||||
.. seealso::
|
||||
For electronic invoicing configurations using the Carvajal solution, review the following video:
|
||||
`Configuración de Facturación Electrónica - Localización de Colombia
|
||||
<https://www.youtube.com/watch?v=bzweMwTEbfY&list=PL1-aSABtP6ABxZshems3snMjx7bj_7ZsZ&index=3>`_.
|
||||
|
||||
.. _localization/colombia/master-data:
|
||||
|
||||
Master data
|
||||
-----------
|
||||
|
||||
.. _localization/colombia/contacts:
|
||||
|
||||
Contacts
|
||||
~~~~~~~~
|
||||
|
||||
Configure the following fields on the :doc:`contact form <../../essentials/contacts>`:
|
||||
|
||||
- :guilabel:`Identification Number` (VAT): Select the identification number type and enter the
|
||||
identification number. If the identification number type is :guilabel:`NIT`, the identification
|
||||
number must include the verification digit at the end, prefixed by a hyphen (`-`).
|
||||
- :ref:`Fiscal Information fields <localization/colombia/configuration/company>` in the
|
||||
:guilabel:`Sales & Purchase` tab.
|
||||
|
||||
.. _localization/colombia/products:
|
||||
|
||||
Products
|
||||
~~~~~~~~
|
||||
|
||||
To manage products, navigate to :menuselection:`Accounting --> Customers --> Products`, then click
|
||||
on a product.
|
||||
Access the product's form via :menuselection:`Accounting --> Customers --> Products` and ensure
|
||||
that either the :guilabel:`UNSPSC Category` field (found in the :guilabel:`Accounting tab`) or the
|
||||
:guilabel:`Internal Reference` field (in the :guilabel:`General Information` tab) is configured.
|
||||
|
||||
When adding general information on the product form, it is required that either the
|
||||
:guilabel:`UNSPSC Category` (:guilabel:`Accounting` tab), or :guilabel:`Internal Reference`
|
||||
(:guilabel:`General Information` tab) field is configured. Be sure to :guilabel:`Save` the product
|
||||
once configured.
|
||||
.. _localization/colombia/taxes:
|
||||
|
||||
Taxes
|
||||
~~~~~
|
||||
@@ -194,91 +202,103 @@ Taxes
|
||||
To create or modify taxes, go to :menuselection:`Accounting --> Configuration --> Taxes`, and select
|
||||
the related tax.
|
||||
|
||||
If sales transactions include products with taxes, the :guilabel:`Value Type` field in the
|
||||
:guilabel:`Advanced Options` tab needs to be configured per tax. Retention tax types
|
||||
(:guilabel:`ICA`, :guilabel:`IVA`, :guilabel:`Fuente`) are also included. This configuration is used
|
||||
to display taxes correctly in the invoice PDF.
|
||||
If sales transactions include products with taxes, configure the :guilabel:`Value Type` field in the
|
||||
:guilabel:`Advanced Options` tab. Retention tax types (:guilabel:`ICA`, :guilabel:`IVA`,
|
||||
:guilabel:`Fuente`) are also included. This configuration is used to display taxes correctly on the
|
||||
invoice.
|
||||
|
||||
.. image:: colombia/retention-tax-types.png
|
||||
:align: center
|
||||
:alt: The ICA, IVA and Fuente fields in the Advanced Options tab in Odoo.
|
||||
.. image:: colombia/dian-taxes-configuration.png
|
||||
:alt: Specific tax configurations per DIAN regulations.
|
||||
|
||||
.. _co-journals:
|
||||
.. _localization/colombia/co-journals:
|
||||
|
||||
Sales journals
|
||||
~~~~~~~~~~~~~~
|
||||
|
||||
Once the |DIAN| has assigned the official sequence and prefix for the electronic invoice resolution,
|
||||
the sales journals related to the invoice documents **must** be updated in Odoo. To do so, navigate
|
||||
to :menuselection:`Accounting --> Configuration --> Journals`, and select an existing sales journal,
|
||||
the sales journals related to the invoices **must** be updated in Odoo. To do so, navigate
|
||||
to :menuselection:`Accounting --> Configuration --> Journals` and select an existing sales journal
|
||||
or create a new one with the :guilabel:`Create` button.
|
||||
|
||||
On the sales journal form, input the :guilabel:`Journal Name`, :guilabel:`Type`, and set a unique
|
||||
:guilabel:`Short Code` in the :guilabel:`Journals Entries` tab. Then, configure the following data
|
||||
in the :guilabel:`Advanced Settings` tab:
|
||||
On the sales journal form, enter the :guilabel:`Journal Name` and :guilabel:`Type`, then set a
|
||||
unique :guilabel:`Short Code` in the :guilabel:`Journals Entries` tab. Then, configure the following
|
||||
data in the :guilabel:`Advanced Settings` tab:
|
||||
|
||||
- :guilabel:`Electronic invoicing`: Enable :guilabel:`UBL 2.1 (Colombia)`.
|
||||
- :guilabel:`Invoicing Resolution`: Resolution number issued by |DIAN| to the company.
|
||||
- :guilabel:`Resolution Date`: Initial effective date of the resolution.
|
||||
- :guilabel:`Resolution end date`: End date of the resolution's validity.
|
||||
- :guilabel:`Range of Numbering (minimum)`: First authorized invoice number.
|
||||
- :guilabel:`Range of Numbering (maximum)`: Last authorized invoice number.
|
||||
- :guilabel:`Electronic invoicing`: enable UBL 2.1 (Colombia).
|
||||
- :guilabel:`Invoicing Resolution`: resolution number issued by |DIAN| to the company via their test
|
||||
set.
|
||||
- :guilabel:`Resolution Date`: initial effective date of the resolution.
|
||||
- :guilabel:`Resolution End Date`: end date of the resolution's validity.
|
||||
- :guilabel:`Range of Numbering (minimum)`: first authorized invoice number.
|
||||
- :guilabel:`Range of Numbering (maximum)`: last authorized invoice number.
|
||||
- :guilabel:`Technical Key`: control key received from the |DIAN| portal test set or from their web
|
||||
service in case of the production environment.
|
||||
|
||||
.. note::
|
||||
The sequence and resolution of the journal **must** match the one configured in Carvajal and the
|
||||
|DIAN|.
|
||||
When the database is configured for the :ref:`production environment
|
||||
<localization/colombia/einvoice-configuration>`, instead of configuring these fields manually,
|
||||
click the :guilabel:`Reload DIAN configuration` button to obtain the |DIAN| resolution information
|
||||
from the |DIAN| web service.
|
||||
|
||||
Invoice sequence
|
||||
****************
|
||||
.. image:: colombia/reload-dian-configuration-button.png
|
||||
:alt: Reload DIAN configuration button in sale journals.
|
||||
|
||||
The invoice sequence and prefix **must** be correctly configured when the first document is created.
|
||||
.. important::
|
||||
- The short code and resolution of the journal **must** match the ones received in the |DIAN|
|
||||
portal test set or from the MUISCA portal.
|
||||
- The :ref:`invoice sequence and prefix <localization/colombia/invoice-creation>` **must** be
|
||||
correctly configured when the first invoice is created. Odoo automatically assigns a prefix
|
||||
and sequence to the following invoices.
|
||||
|
||||
.. note::
|
||||
Odoo automatically assigns a prefix and sequence to the following invoices.
|
||||
.. _localization/colombia/purchase-journals:
|
||||
|
||||
Purchase journals
|
||||
*****************
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
Once the |DIAN| has assigned the official sequence and prefix for the *support document* related to
|
||||
vendor bills, the purchase journals related to their supporting documents need to be updated in
|
||||
Odoo. The process is similar to the configuration of the :ref:`sales journals <co-journals>`.
|
||||
Odoo. The process is similar to the configuration of the :ref:`sales journals
|
||||
<localization/colombia/co-journals>`.
|
||||
|
||||
.. seealso::
|
||||
For more information on support document journals using the Carvajal solution, review the
|
||||
`Documento Soporte - Localización de Colombia video
|
||||
<https://www.youtube.com/watch?v=UmYsFcD7xzE&list=PL1-aSABtP6ABxZshems3snMjx7bj_7ZsZ&index=8>`_.
|
||||
|
||||
.. _localization/colombia/chart-of-accounts:
|
||||
|
||||
Chart of accounts
|
||||
*****************
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
The :doc:`chart of accounts </applications/finance/accounting/get_started/chart_of_accounts>` is
|
||||
installed by default as part of the localization module, the accounts are mapped automatically in
|
||||
installed by default as part of the localization module. The accounts are mapped automatically in
|
||||
taxes, default account payable, and default account receivable. The chart of accounts for Colombia
|
||||
is based on the PUC (Plan Unico de Cuentas).
|
||||
|
||||
.. _colombia/workflows:
|
||||
.. _localization/colombia/workflows:
|
||||
|
||||
Main workflows
|
||||
==============
|
||||
|
||||
.. _localization/colombia/electronic-invoices:
|
||||
|
||||
Electronic invoices
|
||||
-------------------
|
||||
|
||||
The following is a breakdown of the main workflow for electronic invoices with the Colombian
|
||||
localization:
|
||||
|
||||
#. Sender creates an invoice.
|
||||
#. Electronic invoice provider generates the legal XML file.
|
||||
#. Electronic invoice provider creates the CUFE (Invoice Electronic Code) with the electronic
|
||||
signature.
|
||||
#. Electronic invoice provider sends a notification to |DIAN|.
|
||||
#. The user creates an invoice.
|
||||
#. Odoo generates the legal XML file.
|
||||
#. Odoo generates the CUFE (Invoice Electronic Code) with the electronic signature.
|
||||
#. Odoo sends a notification to DIAN.
|
||||
#. |DIAN| validates the invoice.
|
||||
#. |DIAN| accepts or rejects the invoice.
|
||||
#. Electronic invoice provider generates the PDF invoice with a QR code.
|
||||
#. Electronic invoice provider sends invoice to the acquirer.
|
||||
#. Acquirer sends a receipt of acknowledgement, and accepts or rejects the invoice.
|
||||
#. Sender downloads a :file:`.zip` file with the PDF and XML.
|
||||
#. Odoo generates the PDF invoice with a QR code.
|
||||
#. Odoo compresses the attached document (containing the sent XML file and the DIAN validation
|
||||
response) and the fiscal valid PDF into a :file:`.zip` file.
|
||||
#. The user sends the invoice (:file:`.zip` file) via Odoo to the acquirer.
|
||||
|
||||
.. image:: colombia/workflow-electronic-invoice.png
|
||||
:align: center
|
||||
:alt: Electronic invoice workflow for Colombian localization.
|
||||
|
||||
.. _colombia/invoice-creation:
|
||||
.. _localization/colombia/invoice-creation:
|
||||
|
||||
Invoice creation
|
||||
~~~~~~~~~~~~~~~~
|
||||
@@ -287,58 +307,62 @@ Invoice creation
|
||||
The functional workflow taking place before an invoice validation does **not** alter the main
|
||||
changes introduced with the electronic invoice.
|
||||
|
||||
Electronic invoices are generated and sent to both the |DIAN| and customer through Carvajal's web
|
||||
service integration. These documents can be created from your sales order or manually generated. To
|
||||
create a new invoice, go to :menuselection:`Accounting --> Customers --> Invoices`, and select
|
||||
:guilabel:`Create`. On the invoice form configure the following fields:
|
||||
Electronic invoices are generated and sent to both the |DIAN| and the customer. These documents can
|
||||
be created from the sales order or manually generated. To create a new invoice, go to
|
||||
:menuselection:`Accounting --> Costumers --> Invoices`, and select :guilabel:`Create`. On the
|
||||
invoice form, configure the following fields:
|
||||
|
||||
- :guilabel:`Customer`: Customer's information.
|
||||
- :guilabel:`Journal`: Journal used for electronic invoices.
|
||||
- :guilabel:`Customer`: customer's information.
|
||||
- :guilabel:`Journal`: journal used for electronic invoices.
|
||||
- :guilabel:`Electronic Invoice Type`: Select the type of document. By default, :guilabel:`Factura
|
||||
de Venta` is selected.
|
||||
- :guilabel:`Invoice Lines`: Specify the products with the correct taxes.
|
||||
|
||||
.. important::
|
||||
When creating the first invoice related to an electronic invoicing journal, it is required to
|
||||
manually change the *sequence* of the invoice to the |DIAN| format: `Prefix + Sequence`.
|
||||
|
||||
For example, format the sequence from `SETP/2024/00001` to `SETP1`.
|
||||
|
||||
When done, click :guilabel:`Confirm`.
|
||||
|
||||
.. _colombia/invoice-validation:
|
||||
.. _localization/colombia/send-electronic-invoice:
|
||||
|
||||
Invoice validation
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
Electronic invoice sending
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
After the invoice confirmation, an XML file is created and sent automatically to Carvajal. The
|
||||
invoice is then processed asynchronously by the E-invoicing service UBL 2.1 (Colombia). The file is
|
||||
also displayed in the chatter.
|
||||
After the :ref:`invoice confirmation <localization/colombia/invoice-creation>`, click
|
||||
:guilabel:`Print & Send`. In the wizard that appears, make sure to enable the :guilabel:`DIAN` and
|
||||
:guilabel:`Email` checkboxes to send an XML to the |DIAN| web service and the validated invoice to
|
||||
the client fiscal email and click :guilabel:`Print & Send`. Then:
|
||||
|
||||
.. image:: colombia/invoice-sent.png
|
||||
:align: center
|
||||
:alt: Carvajal XML invoice file in Odoo chatter.
|
||||
- The XML document is created.
|
||||
- The CUFE is generated.
|
||||
- The XML is processed synchronously by the |DIAN|.
|
||||
- If accepted, the file is displayed in the chatter and the email to the client with the
|
||||
corresponding :file:`.zip` file.
|
||||
|
||||
The :guilabel:`Electronic Invoice Name` field is now displayed in the :guilabel:`EDI Documents` tab,
|
||||
with the name of the XML file. Additionally, the :guilabel:`Electronic Invoice Status` field is
|
||||
displayed with the initial value :guilabel:`To Send`. To process the invoice manually, click on the
|
||||
:guilabel:`Process Now` button.
|
||||
.. image:: colombia/zip-xml-chatter-colombia.png
|
||||
:alt: EDI documents available in the chatter.
|
||||
|
||||
.. _colombia/invoice-xml:
|
||||
The :guilabel:`DIAN` tab then displays the following:
|
||||
|
||||
Reception of legal XML and PDF
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
- :guilabel:`Signed Date`: timestamp recorded of the XML creation.
|
||||
- :guilabel:`Status`: Status result obtained in the |DIAN| response. If the invoice was
|
||||
rejected, the error messages can be seen here.
|
||||
- :guilabel:`Testing Environment`: To know if the document sent was delivered to the |DIAN| testing
|
||||
environment.
|
||||
- :guilabel:`Certification Process`: To know if the document was sent as part of the certification
|
||||
process with the |DIAN|.
|
||||
- :guilabel:`Download`: To download the sent XML file, even if the |DIAN| result was
|
||||
rejected.
|
||||
- :guilabel:`Fetch Attached Document`: To download the generated attached document file included in
|
||||
the delivered :file:`.zip` file to the client.
|
||||
|
||||
The electronic invoice vendor (Carvajal) receives the XML file, and proceeds to validate its
|
||||
structure and information.
|
||||
.. image:: colombia/dian-tab-electronic-document.png
|
||||
:alt: EDI document record available in DIAN tab.
|
||||
|
||||
After validating the electronic invoice, proceed to generate a legal XML which includes a digital
|
||||
signature and a unique code (CUFE), a PDF invoice that includes a QR code and the CUFE is also
|
||||
generated. If everything is correct the :guilabel:`Electronic Invoicing` field value changes to
|
||||
:guilabel:`Sent`.
|
||||
|
||||
A :file:`.zip` containing the legal electronic invoice (in XML format) and the invoice in (PDF
|
||||
format) is downloaded and displayed in the invoice chatter:
|
||||
|
||||
.. image:: colombia/invoice-zip.png
|
||||
:align: center
|
||||
:alt: ZIP file displayed in the invoice chatter in Odoo.
|
||||
|
||||
The electronic invoice status changes to :guilabel:`Accepted`.
|
||||
.. _localization/colombia/credit-notes:
|
||||
|
||||
Credit notes
|
||||
------------
|
||||
@@ -364,6 +388,8 @@ an invoice, go to :menuselection:`Accounting --> Customers --> Invoices`. On the
|
||||
|
||||
Once reviewed, click the :guilabel:`Reverse` button.
|
||||
|
||||
.. _localization/colombia/debit-notes:
|
||||
|
||||
Debit notes
|
||||
-----------
|
||||
|
||||
@@ -380,6 +406,8 @@ invoice, go to :menuselection:`Accounting --> Customers --> Invoices`. On the in
|
||||
|
||||
When done, click :guilabel:`Create Debit Note`.
|
||||
|
||||
.. _localization/colombia/support-document:
|
||||
|
||||
Support document for vendor bills
|
||||
---------------------------------
|
||||
|
||||
@@ -397,26 +425,34 @@ Support documents for vendor bills can be created from your purchase order or ma
|
||||
Once reviewed, click the :guilabel:`Confirm` button. Upon confirmation, an XML file is created and
|
||||
automatically sent to Carvajal.
|
||||
|
||||
.. _colombia/common-errors:
|
||||
.. _localization/colombia/common-errors:
|
||||
|
||||
Common errors
|
||||
-------------
|
||||
|
||||
During the XML validation, the most common errors are related to missing master data (*Contact Tax
|
||||
ID*, *Address*, *Products*, *Taxes*). In such cases, error messages are shown in the chatter after
|
||||
updating the electronic invoice status.
|
||||
During the XML validation, the most common errors are related to missing :ref:`master data
|
||||
<localization/colombia/master-data>`. In such cases, a validation error message is displayed and
|
||||
sending is blocked.
|
||||
|
||||
After the master data is corrected, it's possible to reprocess the XML with the new data and send
|
||||
the updated version, using the :guilabel:`Retry` button.
|
||||
If the invoice was sent and set as *Rejected* by the |DIAN|, the error messages are visible by
|
||||
clicking the :icon:`fa-info-circle` :guilabel:`(info circle)` icon next to the :guilabel:`Status`
|
||||
field in the :guilabel:`DIAN` tab. Using the reported error codes, it is possible to review
|
||||
solutions to apply before re-sending.
|
||||
|
||||
.. image:: colombia/xml-validation-error.png
|
||||
:alt: XML validation errors shown in the invoice chatter in Odoo.
|
||||
.. image:: colombia/rejected-invoice-error-message.png
|
||||
:alt: Example of error messages on rejected invoices.
|
||||
|
||||
.. _colombia/reports:
|
||||
After the master data or other issues are corrected, it is possible to reprocess the XML again. Do
|
||||
so by following the :ref:`electronic invoice sending <localization/colombia/send-electronic-invoice>`
|
||||
flow.
|
||||
|
||||
.. _localization/colombia/reports:
|
||||
|
||||
Financial reports
|
||||
=================
|
||||
|
||||
.. _localization/colombia/certificado-ica:
|
||||
|
||||
Certificado de Retención en ICA
|
||||
-------------------------------
|
||||
|
||||
@@ -424,10 +460,14 @@ This report is a certification to vendors for withholdings made for the Colombia
|
||||
Commerce (ICA) tax. The report can be found under :menuselection:`Accounting --> Reporting -->
|
||||
Colombian Statements --> Certificado de Retención en ICA`.
|
||||
|
||||
.. image:: colombia/ica-report.png
|
||||
:align: center
|
||||
Click the :icon:`fa-cog` :guilabel:`(gear)` icon to display options to :guilabel:`Download Excel`
|
||||
and :guilabel:`Copy to Documents`.
|
||||
|
||||
.. image:: colombia/retencion-ica-dian.png
|
||||
:alt: Certificado de Retención en ICA report in Odoo Accounting.
|
||||
|
||||
.. _localization/colombia/certificado-iva:
|
||||
|
||||
Certificado de Retención en IVA
|
||||
-------------------------------
|
||||
|
||||
@@ -435,10 +475,14 @@ This report issues a certificate on the amount withheld from vendors for VAT wit
|
||||
can be found under :menuselection:`Accounting --> Reporting --> Colombian Statements --> Certificado
|
||||
de Retención en IVA`.
|
||||
|
||||
.. image:: colombia/iva-report.png
|
||||
:align: center
|
||||
Click the :icon:`fa-cog` :guilabel:`(gear)` icon to display options to :guilabel:`Download Excel`
|
||||
and :guilabel:`Copy to Documents`.
|
||||
|
||||
.. image:: colombia/retencion-iva-dian.png
|
||||
:alt: Certificado de Retención en IVA report in Odoo Accounting.
|
||||
|
||||
.. _localization/colombia/certificado-fuente:
|
||||
|
||||
Certificado de Retención en la Fuente
|
||||
-------------------------------------
|
||||
|
||||
@@ -446,6 +490,8 @@ This certificate is issued to partners for the withholding tax that they have ma
|
||||
be found under :menuselection:`Accounting --> Reporting --> Colombian Statements --> Certificado de
|
||||
Retención en Fuente`.
|
||||
|
||||
.. image:: colombia/fuente-report.png
|
||||
:align: center
|
||||
Click the :icon:`fa-cog` :guilabel:`(gear)` icon to display options to :guilabel:`Download Excel`
|
||||
and :guilabel:`Copy to Documents`.
|
||||
|
||||
.. image:: colombia/retencion-fuente-dian.png
|
||||
:alt: Certificado de Retención en Fuente report in Odoo Accounting.
|
||||
|
||||
|
Before Width: | Height: | Size: 9.7 KiB |
|
After Width: | Height: | Size: 46 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 25 KiB |
|
Before Width: | Height: | Size: 7.1 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 21 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 26 KiB |
|
After Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 8.6 KiB |
|
Before Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 47 KiB |
|
After Width: | Height: | Size: 30 KiB |
@@ -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://ao.bundesfinanzministerium.de/ao/2021/Anhaenge/BMF-Schreiben-und-gleichlautende-Laendererlasse/Anhang-64/anhang-64.html>`_.
|
||||
**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
|
||||
|
||||
@@ -25,6 +25,9 @@ localization:
|
||||
* - :guilabel:`Indian E-waybill`
|
||||
- `l10n_in_edi_ewaybill`
|
||||
- :ref:`Indian E-way bill integration <india/e-waybill>`
|
||||
* - :guilabel:`Indian - Check GST Number Status`
|
||||
- `l10n_in_gstin_status`
|
||||
- :ref:`Indian Check GST Number Status <india/gstin_status>`
|
||||
* - :guilabel:`Indian - GSTR India eFiling`
|
||||
- `l10n_in_reports_gstr`
|
||||
- :ref:`Indian GST Return filing <india/gstr>`
|
||||
@@ -46,6 +49,13 @@ localization:
|
||||
|
||||
.. _india/e-invoicing:
|
||||
|
||||
Indian Configuration
|
||||
====================
|
||||
|
||||
In :menuselection:`Settings --> Users & Companies --> Companies`, add your :guilabel:`PAN` and
|
||||
:guilabel:`GSTIN`. The PAN is essential for determining the type of taxpayer,
|
||||
while GSTIN is required for generating e-Invoices and E-waybills.
|
||||
|
||||
e-Invoice system
|
||||
================
|
||||
|
||||
@@ -286,9 +296,8 @@ Workflow
|
||||
Send an E-Way bill
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
You can manually send an E-Way bill by clicking :guilabel:`Send E-Way bill`. To send the E-Way bill
|
||||
automatically when an invoice or a bill is confirmed, enable :guilabel:`E-Way bill (IN)` in your
|
||||
:ref:`Sales or Purchase journal <india/e-invoicing-journals>`.
|
||||
To send an E-Way bill, confirm the customer invoice/vendor bill and click :guilabel:`Send E-Way
|
||||
bill`.
|
||||
|
||||
.. image:: india/e-waybill-send-button.png
|
||||
:alt: Send E-waybill button on invoices
|
||||
@@ -298,8 +307,8 @@ automatically when an invoice or a bill is confirmed, enable :guilabel:`E-Way bi
|
||||
Invoice validation
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Once an invoice has been issued and sent via :guilabel:`Send E-Way bill`, a confirmation message is
|
||||
displayed.
|
||||
Once an invoice/bill has been issued and sent via :guilabel:`Send E-Way bill`, a confirmation
|
||||
message is displayed.
|
||||
|
||||
.. image:: india/e-waybill-process.png
|
||||
:alt: Indian e-Way bill confirmation message
|
||||
@@ -307,7 +316,7 @@ displayed.
|
||||
.. note::
|
||||
- You can find the JSON-signed file in the attached files in the chatter.
|
||||
- Odoo automatically uploads the JSON-signed file to the government portal after some time. Click
|
||||
:guilabel:`Process now` if you want to process the invoice immediately.
|
||||
:guilabel:`Process now` if you want to process the invoice/bill immediately.
|
||||
|
||||
Invoice PDF report
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
@@ -323,9 +332,9 @@ You can print the invoice PDF report once you have submitted the E-Way bill. The
|
||||
E-Way bill cancellation
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
If you want to cancel an E-Way bill, go to the :guilabel:`E-Way bill` tab of the related invoice and
|
||||
fill out the :guilabel:`Cancel reason` and :guilabel:`Cancel remarks` fields. Then, click
|
||||
:guilabel:`Request EDI Cancellation`.
|
||||
If you want to cancel an E-Way bill, go to the :guilabel:`E-Way bill` tab of the related
|
||||
invoice/bill and fill out the :guilabel:`Cancel reason` and :guilabel:`Cancel remarks` fields. Then,
|
||||
click :guilabel:`Request EDI Cancellation`.
|
||||
|
||||
.. important::
|
||||
Doing so cancels both the :ref:`e-Invoice <india/e-invoicing>` (if applicable) and the
|
||||
@@ -341,6 +350,26 @@ fill out the :guilabel:`Cancel reason` and :guilabel:`Cancel remarks` fields. Th
|
||||
the government portal. You can click :guilabel:`Process Now` if you want to process the invoice
|
||||
immediately.
|
||||
|
||||
.. _india/gstin_status:
|
||||
|
||||
Indian Check GSTIN Status
|
||||
=========================
|
||||
|
||||
The :guilabel:`Indian - Check GST Number Status` module allows you to verify the status of a
|
||||
:abbr:`GSTIN (Goods and Services Tax Identification Number)` directly from Odoo.
|
||||
|
||||
To verify the status of a contact's GST number, access the customer's/vendor's form and click
|
||||
:guilabel:`Check GSTIN Status` next to the :guilabel:`GSTIN` field.
|
||||
|
||||
To verify the status of a GST number entered on an invoice/bill, access the invoice/bill and click
|
||||
the :icon:`fa-refresh` (:guilabel:`refresh`) button next to the :guilabel:`GST Status` field.
|
||||
|
||||
.. image:: india/gstin-status-invoice.png
|
||||
:alt: Check GSTIN status of an invoice
|
||||
|
||||
A notification is displayed to confirm the status update and the GSTIN status and verification date
|
||||
are logged in the contact's chatter.
|
||||
|
||||
.. _india/gstr:
|
||||
|
||||
Indian GST Return filing
|
||||
@@ -560,3 +589,95 @@ goods (i.e :guilabel:`Opening Stock` + purchases during the period - :guilabel:`
|
||||
|
||||
.. image:: india/profit-and-loss-report.png
|
||||
:alt: Profit and Loss report
|
||||
|
||||
.. _india/tds-tcs-threshold:
|
||||
|
||||
TDS/TCS threshold alert
|
||||
=======================
|
||||
|
||||
:abbr:`TDS (tax deducted at source)` and :abbr:`TCS (tax collected at source)` are tax provisions
|
||||
under Indian law, triggered when transaction amounts exceed specified thresholds. This alert
|
||||
notifies users when the value of invoices or bills surpasses these limits, prompting the application
|
||||
of the appropriate TDS/TCS.
|
||||
|
||||
To configure Odoo to advise you on when to apply TDS/TCS, set the :guilabel:`TDS/TCS section`
|
||||
field on the corresponding account in the chart of accounts. Odoo will display a banner suggesting
|
||||
the TDS/TCS section under which tax might be applicable when recording an invoice or bill.
|
||||
|
||||
Configuration
|
||||
-------------
|
||||
|
||||
#. Navigate to :menuselection:`Accounting --> Configuration --> Settings`
|
||||
#. In the :guilabel:`Indian Integration` section, enable the :guilabel:`TDS and TCS` feature.
|
||||
#. Navigate to :menuselection:`Accounting --> Configuration --> Chart of Accounts`.
|
||||
#. Click :guilabel:`View` on the desired account, and set the :guilabel:`TDS/TCS Section` field.
|
||||
|
||||
.. note::
|
||||
The TDS/TCS sections are pre-configured with threshold limits. If you need to modify these
|
||||
limits, go to :menuselection:`Accounting --> Configuration --> Taxes`. In the :guilabel:`Advanced
|
||||
Options` tab, click on the :icon:`fa-arrow-right` :guilabel:`(internal link)` icon of the
|
||||
:guilabel:`Section` field.
|
||||
|
||||
.. image:: india/tds-tcs-section-modify.png
|
||||
:alt: TDS/TCS section modify
|
||||
|
||||
Applying TCS/TDS on invoices and bills
|
||||
--------------------------------------
|
||||
|
||||
Based on the account used on the customer invoice or vendor bill, Odoo checks the TCS/TDS threshold
|
||||
limit. If the limit specified in the :guilabel:`TCS/TDS Section` of the account is exceeded, Odoo
|
||||
displays an alert that suggests applying the appropriate TCS/TDS. The alert will disappear once the
|
||||
TCS/TDS is applied.
|
||||
|
||||
.. image:: india/tcs-warning.png
|
||||
:alt: TCS advice
|
||||
|
||||
**TCS** is directly applicable in the tax on the invoice lines. To apply **TDS**, click the
|
||||
:guilabel:`TDS Entry` smart button on the vendor bill/payment. The popup window allows specifying
|
||||
the TDS details. Confirm the entry to apply the TDS.
|
||||
|
||||
.. image:: india/tds-apply.png
|
||||
:alt: TDS application
|
||||
|
||||
In Odoo, the aggregate total is calculated for partners sharing the same PAN number, across all company branches.
|
||||
|
||||
.. example::
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
:widths: 10 20 10 20 15
|
||||
|
||||
* - **Branch**
|
||||
- **Customer**
|
||||
- **Invoice**
|
||||
- **Transaction Amount (₹)**
|
||||
- **PAN Number**
|
||||
* - IN - MH
|
||||
- XYZ Enterprise - GJ
|
||||
- Invoice 1
|
||||
- ₹50,000
|
||||
- ABCPX1234E
|
||||
* - IN - MH
|
||||
- XYZ Enterprise - GJ
|
||||
- Invoice 2
|
||||
- ₹30,000
|
||||
- ABCPX1234E
|
||||
* - IN - MH
|
||||
- XYZ Enterprise - MH
|
||||
- Invoice 3
|
||||
- ₹40,000
|
||||
- ABCPX1234E
|
||||
* - IN - DL
|
||||
- XYZ Enterprise - GJ
|
||||
- Invoice 4
|
||||
- ₹20,000
|
||||
- ABCPX1234E
|
||||
* - IN - GJ
|
||||
- XYZ Enterprise - MH
|
||||
- Invoice 5
|
||||
- ₹60,000
|
||||
- ABCPX1234E
|
||||
|
||||
- **Aggregate total** = 50,000 + 30,000 + 40,000 + 20,000 + 60,000 = ₹200,000
|
||||
- The aggregate total for all customers (XYZ Enterprise - GJ, MH, DL) sharing the PAN number
|
||||
ABCPX1234E across all branches is ₹200,000.
|
||||
|
||||
|
After Width: | Height: | Size: 5.7 KiB |
|
After Width: | Height: | Size: 5.9 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 9.2 KiB |
@@ -147,7 +147,6 @@ According to the requirements of the CFDI 4.0, the name of the main company cont
|
||||
coincide with your business name registered in the |SAT|, without the legal entity abbreviation.
|
||||
|
||||
.. image:: mexico/mx-company-info.png
|
||||
:align: center
|
||||
:alt: Main company contact requirements for a correct invoicing.
|
||||
|
||||
.. important::
|
||||
@@ -161,7 +160,6 @@ Regime`, then select the regime that applies to your company from the drop-down
|
||||
:guilabel:`Save`.
|
||||
|
||||
.. image:: mexico/mx-fiscal-regime.png
|
||||
:align: center
|
||||
:alt: Fiscal regime configuration in the Accounting settings.
|
||||
|
||||
.. tip::
|
||||
@@ -197,7 +195,6 @@ Taxes`, then enable the :guilabel:`Factor Type` field in the :guilabel:`Advanced
|
||||
all records, with the :guilabel:`Tax Type` set as :guilabel:`Sales`.
|
||||
|
||||
.. image:: mexico/mx-factor-type.png
|
||||
:align: center
|
||||
:alt: Factor Type Sales tax type configuration.
|
||||
|
||||
.. tip::
|
||||
@@ -223,7 +220,6 @@ To use the `03` value, navigate to :menuselection:`Contacts --> your customer's
|
||||
tab`, and activate the :guilabel:`No Tax Breakdown` checkbox.
|
||||
|
||||
.. image:: mexico/mx-tax-breakdown.png
|
||||
:align: center
|
||||
:alt: No Tax Breakdown option on the MX EDI tab of the customer's invoice.
|
||||
|
||||
.. important::
|
||||
@@ -244,7 +240,6 @@ the correct :guilabel:`Tax Grids` for it (`IVA`, `ISR` or `IEPS`). Odoo **only**
|
||||
three groups of taxes.
|
||||
|
||||
.. image:: mexico/mx-taxes-config.png
|
||||
:align: center
|
||||
:alt: Tax accounts available for Odoo.
|
||||
|
||||
Products
|
||||
@@ -275,7 +270,6 @@ Accounting --> Electronic Invoicing (MX)`. Under the :guilabel:`MX PAC` section,
|
||||
your |PAC| with your credentials (:guilabel:`PAC username` and :guilabel:`PAC password`).
|
||||
|
||||
.. image:: mexico/mx-pac-account.png
|
||||
:align: center
|
||||
:alt: Configuring PAC credentials from the Accounting settings.
|
||||
|
||||
.. tip::
|
||||
@@ -296,7 +290,6 @@ your digital :guilabel:`Certificate` (:file:`.cer` file), your :guilabel:`Certif
|
||||
& Close`.
|
||||
|
||||
.. image:: mexico/mx-certificates.png
|
||||
:align: center
|
||||
:alt: Certificate and key upload inputs.
|
||||
|
||||
.. tip::
|
||||
@@ -357,7 +350,6 @@ Because of this requirement, the field :guilabel:`CFDI Origin` adds this relatio
|
||||
followed by the fiscal folio of the original invoice.
|
||||
|
||||
.. image:: mexico/mx-creating-credit-note.png
|
||||
:align: center
|
||||
:alt: Example CFDI Origin number.
|
||||
|
||||
.. tip::
|
||||
@@ -377,7 +369,7 @@ the SAT documentation, there are two types of payments:
|
||||
- `PPD` (Pago en Parcialidades o Diferido/Payment in Installements or Deferred)
|
||||
|
||||
.. seealso::
|
||||
:doc:`../../inventory_and_mrp/inventory/product_management/inventory_valuation/integrating_landed_costs`
|
||||
:doc:`../../inventory_and_mrp/inventory/product_management/inventory_valuation/landed_costs`
|
||||
|
||||
The difference lies in the *Due Date* or *Payment Terms* of the invoice.
|
||||
|
||||
@@ -387,7 +379,6 @@ that does not imply changing the due month (immediate payment, 15 days, 21 days,
|
||||
the current month).
|
||||
|
||||
.. image:: mexico/mx-pue-payment.png
|
||||
:align: center
|
||||
:alt: Example of an invoice with the PUE requirements.
|
||||
|
||||
.. tip::
|
||||
@@ -399,7 +390,6 @@ select an invoice with a :guilabel:`Due Date` after the first day of the followi
|
||||
applies if your :guilabel:`Payment Term` is due in the following month.
|
||||
|
||||
.. image:: mexico/mx-ppd-payment.png
|
||||
:align: center
|
||||
:alt: Example of an invoice with the PPD requirements.
|
||||
|
||||
.. important::
|
||||
@@ -444,7 +434,6 @@ generates the corresponding payment complement automatically, once you click :gu
|
||||
Now`.
|
||||
|
||||
.. image:: mexico/mx-signed-complement.png
|
||||
:align: center
|
||||
:alt: CFDI (4.0) E-invoicing service process payment now message.
|
||||
|
||||
.. warning::
|
||||
@@ -503,11 +492,9 @@ to accept the cancellation in their “Buzón Tributario” directly from the `S
|
||||
method 04 reason for cancellation.
|
||||
|
||||
.. image:: mexico/mx-01-invoice-cancellation-substitute.png
|
||||
:align: center
|
||||
:alt: Old invoice with CFDI Origin.
|
||||
|
||||
.. image:: mexico/mx-01-invoice-cancellation.png
|
||||
:align: center
|
||||
:alt: Invoice with the Substituted By field referencing the CFDI Origin invoice.
|
||||
|
||||
02 - invoices sent with errors without a relation
|
||||
@@ -557,7 +544,6 @@ generic |RFC| is set as `XAXX010101000`, and the :guilabel:`Fiscal Regime` of yo
|
||||
set as: `Sin obligaciones fiscales`.
|
||||
|
||||
.. image:: mexico/mx-cfdi-to-public.png
|
||||
:align: center
|
||||
:alt: CFDI to Public Customer field configuration.
|
||||
|
||||
Multicurrency
|
||||
@@ -581,7 +567,6 @@ It is highly recommended to use :doc:`a bank account for each currency
|
||||
JPY.
|
||||
|
||||
.. image:: mexico/mx-multicurrency-1.png
|
||||
:align: center
|
||||
:alt: Multi-currency configuration in the Accounting settings.
|
||||
|
||||
Down payments
|
||||
@@ -670,7 +655,6 @@ company directly in :menuselection:`Settings --> General Settings --> Companies`
|
||||
have to coincide with the data in the |SAT|.
|
||||
|
||||
.. image:: mexico/mx-external-trade-rescompany.png
|
||||
:align: center
|
||||
:alt: Optional external trade company fields.
|
||||
|
||||
To configure the contact data for a foreign receiving client, navigate to :menuselection:`Accounting
|
||||
@@ -691,7 +675,6 @@ following fields completed to avoid errors:
|
||||
are required for external trade contact configuration.
|
||||
|
||||
.. image:: mexico/mx-external-trade-customer-contact.png
|
||||
:align: center
|
||||
:alt: Required external trade customer fields.
|
||||
|
||||
.. note::
|
||||
@@ -711,7 +694,6 @@ to external trade.
|
||||
#. The :guilabel:`UMT Aduana` corresponds to the :guilabel:`Tariff Fraction`.
|
||||
|
||||
.. image:: mexico/mx-external-trade-product.png
|
||||
:align: center
|
||||
:alt: Required external trade product fields.
|
||||
|
||||
.. tip::
|
||||
@@ -734,7 +716,6 @@ Currency`, the only fields left are :guilabel:`Incoterm` and the optional :guila
|
||||
Source` in the :guilabel:`Other Info` tab.
|
||||
|
||||
.. image:: mexico/mx-external-trade-other-info.png
|
||||
:align: center
|
||||
:alt: External trade Other Info tab of a product.
|
||||
|
||||
Finally, sign the invoice with the same process as a regular invoice, and click the
|
||||
@@ -790,7 +771,6 @@ with the `Official SAT Catalog for Carta Porte <sat-catalog_>_`.
|
||||
The field, :guilabel:`Locality`, is optional for both addresses.
|
||||
|
||||
.. image:: mexico/mx-delivery-guide-contacts.png
|
||||
:align: center
|
||||
:alt: Delivery guide contact configuration.
|
||||
|
||||
.. important::
|
||||
@@ -812,7 +792,6 @@ In the :guilabel:`Intermediaries` section, you must add the operator of the vehi
|
||||
mandatory fields for this contact are the :guilabel:`VAT` and :guilabel:`Operator Licence`.
|
||||
|
||||
.. image:: mexico/mx-delivery-guide-vehicle.png
|
||||
:align: center
|
||||
:alt: Delivery guide vehicle configuration.
|
||||
|
||||
Products
|
||||
@@ -831,7 +810,6 @@ this, there are two extra configurations for products involved in delivery guide
|
||||
products, and create the delivery order (and delivery guide) again with the correct amounts.
|
||||
|
||||
.. image:: mexico/mx-delivery-guide-products.png
|
||||
:align: center
|
||||
:alt: Delivery guide product configuration.
|
||||
|
||||
Sales and inventory flow
|
||||
@@ -857,7 +835,6 @@ appears. There, enter a value in :guilabel:`Distance to Destination (KM)` bigger
|
||||
select the :guilabel:`Vehicle Setup` used for this delivery.
|
||||
|
||||
.. image:: mexico/mx-delivery-guide-federal-transport.png
|
||||
:align: center
|
||||
:alt: Delivery guide MX EDI tab configuration.
|
||||
|
||||
Dangerous hazards
|
||||
@@ -873,7 +850,6 @@ First, select your product from :menuselection:`Inventory --> Products --> Produ
|
||||
:guilabel:`Hazardous Packaging (MX)` must be filled with the correct code from the |SAT| catalog.
|
||||
|
||||
.. image:: mexico/mx-delivery-guide-hazards-designation.png
|
||||
:align: center
|
||||
:alt: Delivery guide hazardous material product required fields.
|
||||
|
||||
In :menuselection:`Inventory --> Settings --> Mexico --> Vehicle Setup`, the data from the
|
||||
@@ -881,7 +857,6 @@ In :menuselection:`Inventory --> Settings --> Mexico --> Vehicle Setup`, the dat
|
||||
well. After this, continue with the regular process to create a delivery guide.
|
||||
|
||||
.. image:: mexico/mx-delivery-guide-hazards-environment.png
|
||||
:align: center
|
||||
:alt: Delivery Guide environment insurer required fields.
|
||||
|
||||
Customs numbers
|
||||
@@ -908,8 +883,8 @@ Configuration
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
In order to track the correct customs number for a specific invoice, Odoo uses :doc:`landed costs
|
||||
<../../inventory_and_mrp/inventory/product_management/inventory_valuation/integrating_landed_costs>`.
|
||||
Go to :menuselection:`Inventory --> Configuration --> Settings --> Valuation`. Make sure that
|
||||
<../../inventory_and_mrp/inventory/product_management/inventory_valuation/landed_costs>`. Go to
|
||||
:menuselection:`Inventory --> Configuration --> Settings --> Valuation`. Make sure that
|
||||
:guilabel:`Landed Costs` is activated.
|
||||
|
||||
Begin by creating a *service*-type product called, `Pedimento`. In the :guilabel:`Purchase` tab,
|
||||
@@ -926,11 +901,9 @@ products, and make sure the :guilabel:`Product Category` has the following confi
|
||||
- :guilabel:`Stock Output Account`: :guilabel:`115.05.01 Mercancías en tránsito`
|
||||
|
||||
.. image:: mexico/mx-landing-configuration.png
|
||||
:align: center
|
||||
:alt: Storable products general configuration.
|
||||
|
||||
.. image:: mexico/mx-landing-configuration-category.png
|
||||
:align: center
|
||||
:alt: Storable product category configuration.
|
||||
|
||||
Purchase and sales flow
|
||||
@@ -954,7 +927,6 @@ Optionally, you can add a cost amount. After this, validate the landed cost. Onc
|
||||
number with the transfer(s).
|
||||
|
||||
.. image:: mexico/mx-landing-inventory.png
|
||||
:align: center
|
||||
:alt: Customs number on a landed costs Inventory record.
|
||||
|
||||
Now, create a sales order, and confirm it. This should trigger a :guilabel:`Delivery` smart button.
|
||||
@@ -965,7 +937,6 @@ product has a customs number in it. This number should match the customs number
|
||||
*Landed Costs* record you created earlier.
|
||||
|
||||
.. image:: mexico/mx-landing-invoice.png
|
||||
:align: center
|
||||
:alt: Customs number on confirmed sales order product.
|
||||
|
||||
Electronic accounting
|
||||
@@ -996,9 +967,6 @@ In order to use these reports, the modules :guilabel:`l10n_mx_reports`,
|
||||
:guilabel:`l10n_mx_xml_polizas_edi` have to be installed, as well as the :doc:`Accounting
|
||||
<../accounting/get_started>`.
|
||||
|
||||
You can find the *Chart of accounts*, *Trial Balance Month 13*, and *DIOT* reports in
|
||||
:menuselection:`Accounting --> Reporting --> Mexico`.
|
||||
|
||||
.. important::
|
||||
The specific characteristics and obligations of the reports that you send might change according
|
||||
to your fiscal regime. Always contact your accountant before sending any documents to the
|
||||
@@ -1029,9 +997,10 @@ Once you create all your accounts, make sure the correct :guilabel:`Tags` are ad
|
||||
You cannot use any pattern that ends a section with a 0 (such as `100.01.01`, `301.00.003` or
|
||||
`604.77.00`). This triggers errors in the report.
|
||||
|
||||
Once everything is set up, you can go to :menuselection:`Accounting --> Reporting --> Mexico -->
|
||||
COA`, and click the :guilabel:`SAT (XML)` button to generate an XML file containing all of your
|
||||
accounts, which will be ready to upload to the |SAT| website.
|
||||
Once everything is set up, go to :menuselection:`Accounting --> Reporting --> Trial Balance`,
|
||||
click the :icon:`fa-caret-down` (:guilabel:`down arrow`) next to the :guilabel:`PDF` button, and
|
||||
select :guilabel:`COA SAT (XML)`. This generates an XML file with your accounts, which you can
|
||||
upload directly to the |SAT| website.
|
||||
|
||||
Trial balance
|
||||
~~~~~~~~~~~~~
|
||||
@@ -1039,36 +1008,34 @@ Trial balance
|
||||
The trial balance reports the initial balance, credit, and total balance of your accounts, provided
|
||||
that you added their correct :ref:`encoding group <l10n_mx/chart-of-accounts>`.
|
||||
|
||||
This report can be generated monthly, and a corresponding XML file is created, if you go to
|
||||
:menuselection:`Accounting --> Reporting --> Mexico --> Trial Balance`, and click the
|
||||
:guilabel:`SAT (XML)` button. Select the month you want to download beforehand.
|
||||
To generate this report in an XML format, go to :menuselection:`Accounting --> Reporting -->
|
||||
Trial Balance`. Select the month you want to download in the calendar, then click the
|
||||
:icon:`fa-caret-down` (:guilabel:`down arrow`) next to the :guilabel:`PDF` button, and select
|
||||
:guilabel:`SAT (XML)`.
|
||||
|
||||
.. image:: mexico/mx-reports-trial-balance.png
|
||||
:align: center
|
||||
:alt: Trial balance report.
|
||||
|
||||
.. note::
|
||||
Odoo does not generate the *Balanza de Comprobación Complementaria*.
|
||||
|
||||
An additional report is the *Month 13*: a closing balance sheet that shows any adjustments or
|
||||
movements made in the accounting to close the year.
|
||||
Month 13 trial balance
|
||||
**********************
|
||||
|
||||
To generate this XML document, navigate to :menuselection:`Accounting --> Accounting -->
|
||||
Miscellaneous --> Journal Entries`, and create a new document. Here, add all amounts to modify, and
|
||||
balance the debit and/or credit of each one.
|
||||
The *Month 13* report is a closing balance sheet that shows any adjustments or movements made in the
|
||||
accounting to close the year.
|
||||
|
||||
After this is done, click :guilabel:`Mark as Closing Entry`, and the report found in
|
||||
:menuselection:`Accounting --> Reporting --> Mexico --> Trial Balance Month 13`, contains the total
|
||||
amount of the year, plus all the additions of the journal entry.
|
||||
To generate it, proceed as follows:
|
||||
|
||||
The XML file is generated by pressing the :guilabel:`SAT (XML)` button.
|
||||
|
||||
.. image:: mexico/mx-reports-trial-balance-13.png
|
||||
:align: center
|
||||
:alt: Trial Balance Month 13 setup.
|
||||
#. Go to :menuselection:`Accounting --> Accounting --> Journal Entries` and create a new entry for
|
||||
all the amounts to be changed, balancing the debit and/or credit of each one.
|
||||
#. In the :guilabel:`Other Info` tab, enable the :guilabel:`Month 13 Closing` option.
|
||||
#. Go to :menuselection:`Accounting --> Reporting --> Trial Balance`, click the calendar, and select
|
||||
:guilabel:`Month 13`.
|
||||
#. Click the :icon:`fa-caret-down` (:guilabel:`down arrow`) next to the :guilabel:`PDF` button, and
|
||||
select :guilabel:`SAT (XML)`.
|
||||
|
||||
.. image:: mexico/mx-reports-trial-balance-13-report.png
|
||||
:align: center
|
||||
:alt: Trial Balance Month 13 report.
|
||||
|
||||
General ledger
|
||||
@@ -1081,16 +1048,17 @@ to comply with |SAT|'s audits and/or tax refunds.
|
||||
.. tip::
|
||||
You can filter by period, or by journal, according to your current needs.
|
||||
|
||||
To create the XML, go to :menuselection:`Accounting --> Reporting --> Audit Reports --> General
|
||||
Ledger`, and click :guilabel:`XML (Polizas)`. Here, you can select between four types of
|
||||
:guilabel:`Export` types:
|
||||
To create the XML, go to :menuselection:`Accounting --> Reporting --> General Ledger`, click the
|
||||
:icon:`fa-caret-down` (:guilabel:`down arrow`) next to the :guilabel:`PDF` button, and select
|
||||
:guilabel:`XML (Polizas)`. In the :guilabel:`XML Polizas Export Options` window, choose between four
|
||||
different :guilabel:`Export` types:
|
||||
|
||||
- :guilabel:`Tax audit`
|
||||
- :guilabel:`Audit certification`
|
||||
- :guilabel:`Return of goods`
|
||||
- :guilabel:`Compensation`
|
||||
|
||||
For :guilabel:`Tax audit`, or :guilabel:`Audit certification`, you need to write the
|
||||
For :guilabel:`Tax audit` or :guilabel:`Audit certification`, you need to write the
|
||||
:guilabel:`Order Number` provided by the |SAT|. For :guilabel:`Return of goods`, or
|
||||
:guilabel:`Compensation`, you need to write your :guilabel:`Process Number`, also provided by the
|
||||
|SAT|.
|
||||
@@ -1115,23 +1083,18 @@ The transactions file contains the total amount of your payments registered in v
|
||||
down into the corresponding types of IVA. The :guilabel:`VAT` and :guilabel:`Country` is mandatory
|
||||
for all vendors.
|
||||
|
||||
To get the |DIOT| report, go to :menuselection:`Accounting --> Reports --> Mexico --> Transactions
|
||||
with third parties [DIOT]`. Select the month that suits you, and click :guilabel:`DIOT (TXT)` to
|
||||
download the :file:`.txt` file.
|
||||
To generate the |DIOT| report, go to :menuselection:`Accounting --> Reporting --> Tax Reports`.
|
||||
Select the month you want to download in the calendar, then click the :icon:`fa-caret-down`
|
||||
(:guilabel:`down arrow`) next to the :guilabel:`PDF` button to select :guilabel:`Report: DIOT (MX)`
|
||||
and download the :file:`.txt` file.
|
||||
|
||||
.. image:: mexico/mx-reports-diot-example.png
|
||||
:align: center
|
||||
:alt: A Vendor Bill that is In Payment.
|
||||
|
||||
.. image:: mexico/mx-reports-diot-example-download.png
|
||||
:align: center
|
||||
:alt: DIOT (TXT) download button.
|
||||
|
||||
.. important::
|
||||
You need to fill the field, :guilabel:`L10N Mx Type of Operation`, in the :guilabel:`Accounting`
|
||||
You need to fill the :guilabel:`L10N Mx Type of Operation` field in the :guilabel:`Accounting`
|
||||
tab of each one of your vendors to prevent validation errors. Make sure that your foreign
|
||||
customers have their country set up for :guilabel:`L10N Mx Nationality` to appear automatically.
|
||||
|
||||
.. image:: mexico/mx-reports-diot-contact.png
|
||||
:align: center
|
||||
:alt: DIOT information on a vendor contact.
|
||||
|
||||
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 3.9 KiB |
|
Before Width: | Height: | Size: 4.2 KiB |
@@ -2,33 +2,80 @@
|
||||
Peru
|
||||
====
|
||||
|
||||
.. |SUNAT| replace:: :abbr:`SUNAT (Superintendencia Nacional de Aduanas y de Administración Tributaria)`
|
||||
.. |SUNAT| replace:: :abbr:`SUNAT (Superintendencia Nacional de Aduanas y de Administración
|
||||
Tributaria)`
|
||||
.. |GRE| replace:: :abbr:`GRE (Guía de Remisión Electrónica)`
|
||||
.. |RUS| replace:: :abbr:`RUS (Régimen Único Simplificado)`
|
||||
.. |EDI| replace:: :abbr:`EDI (Electronic Data Interchange)`
|
||||
|
||||
Introduction
|
||||
============
|
||||
Modules
|
||||
=======
|
||||
|
||||
The Peruvian localization has been improved and extended, in this version the next modules are
|
||||
available:
|
||||
:ref:`Install <general/install>` the following modules to utilize all the current features of the
|
||||
Peruvian localization.
|
||||
|
||||
- **l10n_pe**: Adds accounting features for the Peruvian localization, which represent the minimal
|
||||
configuration required for a company to operate in Peru and under the SUNAT regulations and
|
||||
guidelines. The main elements included in this module are: Chart of account, taxes,
|
||||
document types.
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
- **l10n_pe_edi**: includes all technical and functional requirements to generate and validate
|
||||
Electronic Invoice, based on the SUNAT specification to create and process valid electronic
|
||||
documents, for more technical detail you can access the
|
||||
`SUNAT EDI specifications <https://cpe.sunat.gob.pe/node/88/>`_,
|
||||
that keeps track of new changes and updates.
|
||||
The features of this module are based on the resolutions published on the
|
||||
`SUNAT Legislation <https://www.sunat.gob.pe/legislacion/general/index.html/>`_.
|
||||
* - Name
|
||||
- Technical name
|
||||
- Description
|
||||
* - :guilabel:`Peru - Accounting`
|
||||
- `l10n_pe`
|
||||
- Adds accounting features for the Peruvian localization, which represent the minimal
|
||||
configuration required for a company to operate in Peru and under the SUNAT regulations and
|
||||
guidelines. The main elements included in this module are the chart of accounts, taxes,
|
||||
document types.
|
||||
* - :guilabel:`Peru - E-invoicing`
|
||||
- `l10n_pe_edi`
|
||||
- Includes all technical and functional requirements to generate and receive electronic
|
||||
invoices online based on the SUNAT regulations.
|
||||
* - :guilabel:`Peru - Accounting Reports`
|
||||
- `l10n_pe_reports`
|
||||
- Includes the following financial reports:
|
||||
|
||||
- 1st set of main financial reports:
|
||||
|
||||
- Registro de Ventas e Ingresos (RVIE) - 14.4
|
||||
- Registro de Compras Electrónico (RCE) - 8.4
|
||||
- Registro de Compras Electrónico - Información de Operaciones con Sujetos no Domiciliados
|
||||
(RCE) - 8.5
|
||||
|
||||
- 2nd set of financial reports:
|
||||
|
||||
- PLE 5.1 General Journal
|
||||
- PLE 5.3 Chart of Accounts
|
||||
- PLE 6.1 General Ledger
|
||||
|
||||
- 3rd set of financial reports:
|
||||
|
||||
- PLE 1.1 Libro de Caja
|
||||
- PLE 1.2 Libro de Bancos
|
||||
|
||||
* - :guilabel:`Peruvian - Electronic Delivery Note`
|
||||
- `l10n_pe_edi_stock`
|
||||
- Adds the delivery guide (Guía de Remisión), which is needed as proof that you are sending
|
||||
goods between A and B. It is only when a delivery order is validated that the delivery guide
|
||||
can be created.
|
||||
* - :guilabel:`Peruvian eCommerce`
|
||||
- `l10n_pe_website_sale`
|
||||
- Enables the identification type in eCommerce checkout forms and the ability to generate
|
||||
electronic invoices.
|
||||
* - :guilabel:`Peruvian - Point of Sale with PE Doc`
|
||||
- `l10n_pe_pos`
|
||||
- Enables contact fiscal information to be editable from a PoS Session to generate electronic
|
||||
invoices and refunds.
|
||||
|
||||
.. note::
|
||||
- Odoo automatically installs the appropriate package for the company according to the country
|
||||
selected at the creation of the database.
|
||||
- The *Peruvian - Electronic Delivery Guide* module depends on the *Inventory* application to be
|
||||
installed.
|
||||
|
||||
.. seealso::
|
||||
- `App Tour - Localización de Peru <https://youtu.be/Ic3mGovkf8Y>`_
|
||||
- `Smart Tutorial - Localización de Peru <https://www.odoo.com/slides/smart-tutorial-localizacion-de-peru-133>`_
|
||||
- `Smart Tutorial - Localización de Peru (videos for workflows and configurations)
|
||||
<https://www.odoo.com/slides/smart-tutorial-localizacion-de-peru-133>`_
|
||||
|
||||
Configuration
|
||||
=============
|
||||
@@ -41,7 +88,6 @@ dependency with *Peru - Accounting*. In case this last one is not installed, Odo
|
||||
automatically within EDI.
|
||||
|
||||
.. image:: peru/peru-modules.png
|
||||
:align: center
|
||||
:alt: The "Module" filter is set on "Peru"
|
||||
|
||||
.. note::
|
||||
@@ -57,9 +103,7 @@ the establishment code assigned by the SUNAT when companies register their RUC (
|
||||
Registration):
|
||||
|
||||
.. image:: peru/peru-company.png
|
||||
:align: center
|
||||
:alt: Company data for Peru including RUC and Address type code
|
||||
|
||||
:alt: Company data for Peru including RUC and Address type code.
|
||||
|
||||
.. tip::
|
||||
In case the Address type code is unknown, you can set it as the default value: 0000. Be aware
|
||||
@@ -68,7 +112,6 @@ Registration):
|
||||
.. note::
|
||||
The NIF should be set following the RUC format.
|
||||
|
||||
|
||||
Chart of Account
|
||||
~~~~~~~~~~~~~~~~
|
||||
|
||||
@@ -105,7 +148,6 @@ Here are some terms that are essential on the Peruvian localization:
|
||||
- **SOL Credentials**: Sunat Operaciones en Línea. User and password are provided by the SUNAT and
|
||||
grant access to Online Operations systems.
|
||||
|
||||
|
||||
Signature Provider
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
@@ -126,8 +168,7 @@ This is the default and the suggested option, considering the digital ceritifica
|
||||
part of the service.
|
||||
|
||||
.. image:: peru/peru-IAP.png
|
||||
:align: center
|
||||
:alt: IAP option as signature providers
|
||||
:alt: IAP option as signature providers.
|
||||
|
||||
What is the IAP?
|
||||
^^^^^^^^^^^^^^^^
|
||||
@@ -190,8 +231,7 @@ document validation directly to Digiflow. In this case you need to consider:
|
||||
- Provide your SOL credentials.
|
||||
|
||||
.. image:: peru/peru-Digiflow.png
|
||||
:align: center
|
||||
:alt: Digiflow
|
||||
:alt: Digiflow.
|
||||
|
||||
SUNAT
|
||||
*****
|
||||
@@ -230,18 +270,16 @@ certificate with the extension ``.pfx`` is required. Proceed to this section and
|
||||
password.
|
||||
|
||||
.. image:: peru/peru-Certificate.png
|
||||
:align: center
|
||||
:alt: EDI Certificate wizard
|
||||
:alt: EDI Certificate wizard.
|
||||
|
||||
Multicurrency
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
The official currency exchange rate in Peru is provided by the Bank of Peru. Odoo can connect
|
||||
directly to its services and get the currency rate either automatically or manually.
|
||||
The official currency exchange rate in Peru is provided by the SUNAT. Odoo can connect directly to
|
||||
its services and get the currency rate either automatically or manually.
|
||||
|
||||
.. image:: peru/peru-multicurrency.png
|
||||
:align: center
|
||||
:alt: Bank of Peru is displayed in Multicurrency Service option
|
||||
.. image:: peru/l10n-pe-banksync-sunat.png
|
||||
:alt: SUNAT displayed in Multicurrency Service option.
|
||||
|
||||
Please refer to the next section in our documentation for more information about
|
||||
:doc:`multicurrencies <../accounting/get_started/multi_currency>`.
|
||||
@@ -258,8 +296,7 @@ As part of the localization module the taxes are created automatically with thei
|
||||
financial account and electronic invoice configuration.
|
||||
|
||||
.. image:: peru/peru-taxes.png
|
||||
:align: center
|
||||
:alt: List of default taxes
|
||||
:alt: List of default taxes.
|
||||
|
||||
EDI Configuration
|
||||
*****************
|
||||
@@ -269,9 +306,7 @@ the taxes created by default have this data included, but in case you create new
|
||||
sure you fill in the fields:
|
||||
|
||||
.. image:: peru/peru-taxes-edi.png
|
||||
:align: center
|
||||
:alt: Taxes EDI data for Peru
|
||||
|
||||
:alt: Taxes EDI data for Peru.
|
||||
|
||||
Fiscal Positions
|
||||
~~~~~~~~~~~~~~~~
|
||||
@@ -297,8 +332,7 @@ The information required for the document types is included by default so the us
|
||||
to fill anything on this view:
|
||||
|
||||
.. image:: peru/peru-document-type.png
|
||||
:align: center
|
||||
:alt: Document Type list
|
||||
:alt: Document Type list.
|
||||
|
||||
.. warning::
|
||||
Currently the documents supported on customer invoices are: Invoice, Boleta, Debit Note and
|
||||
@@ -324,8 +358,7 @@ This section indicates which EDI workflow is used in the invoice, for Peru we mu
|
||||
“Peru UBL 2.1”.
|
||||
|
||||
.. image:: peru/peru-journal-edi.png
|
||||
:align: center
|
||||
:alt: Journal EDI field
|
||||
:alt: Journal EDI field.
|
||||
|
||||
.. warning::
|
||||
By default, the value Factur-X (FR) is always displayed, make sure you can uncheck it manually.
|
||||
@@ -341,9 +374,7 @@ available on the Partner form, this information is essential for most transactio
|
||||
the sender company and in the customer, make sure you fill in this information in your records.
|
||||
|
||||
.. image:: peru/peru-id-type.png
|
||||
:align: center
|
||||
:alt: Partner identification type
|
||||
|
||||
:alt: Partner identification type.
|
||||
|
||||
Product
|
||||
~~~~~~~
|
||||
@@ -352,9 +383,7 @@ Additional to the basic information in your products, for the Peruvian localizat
|
||||
Code on the product is a required value to be configured.
|
||||
|
||||
.. image:: peru/peru-unspc-code.png
|
||||
:align: center
|
||||
:alt: UNSPC Code on products
|
||||
|
||||
:alt: UNSPC Code on products.
|
||||
|
||||
Usage and testing
|
||||
=================
|
||||
@@ -374,16 +403,14 @@ fields required as part of the Peru EDI:
|
||||
document type if needed and select Boleta for example.
|
||||
|
||||
.. image:: peru/peru-invoice-document-type.png
|
||||
:align: center
|
||||
:alt: Invoice document type field on invoices
|
||||
:alt: Invoice document type field on invoices.
|
||||
|
||||
- **Operation type**: This value is required for Electronic Invoice and indicates the transaction
|
||||
type, the default value is “Internal Sale” but another value can be selected manually when needed,
|
||||
for example Export of Goods.
|
||||
|
||||
.. image:: peru/peru-operation-type.png
|
||||
:align: center
|
||||
:alt: Invoice operation type field on invoices
|
||||
:alt: Invoice operation type field on invoices.
|
||||
|
||||
- **EDI Affectation Reason**: In the invoice lines, additional to the Tax there is a field “EDI
|
||||
Affectation Reason” that determines the tax scope based on the SUNAT list that is displayed.
|
||||
@@ -391,8 +418,7 @@ fields required as part of the Peru EDI:
|
||||
you can manually select another one when creating the invoice.
|
||||
|
||||
.. image:: peru/peru-tax-affectation-reason.png
|
||||
:align: center
|
||||
:alt: Tax affectation reason in invoice line
|
||||
:alt: Tax affectation reason in invoice line.
|
||||
|
||||
Invoice validation
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
@@ -402,8 +428,7 @@ action registers the account move and triggers the Electronic invoice workflow t
|
||||
OSE and the SUNAT. The following message is displayed at the top of the invoice:
|
||||
|
||||
.. image:: peru/peru-posted-invoice.png
|
||||
:align: center
|
||||
:alt: Sending of EDI Invoice in blue
|
||||
:alt: Sending of EDI Invoice in blue.
|
||||
|
||||
Asynchronous means that the document is not sent automatically after the invoice has been posted.
|
||||
|
||||
@@ -417,16 +442,14 @@ done either automatically by Odoo with a *cron* that runs every hour, or the use
|
||||
immediately by clicking on the button “Sent now”.
|
||||
|
||||
.. image:: peru/peru-sent-manual.png
|
||||
:align: center
|
||||
:alt: Send EDI manually
|
||||
:alt: Send EDI manually.
|
||||
|
||||
**Sent**: Indicates the document was sent to the OSE and was successfully validated. As part of
|
||||
the validation a ZIP file is downloaded and a message is logged in the chatter indicating the
|
||||
correct Government validation.
|
||||
|
||||
.. image:: peru/peru-invoice-sent.png
|
||||
:align: center
|
||||
:alt: Message on chatter when the invoice is valid
|
||||
:alt: Message on chatter when the invoice is valid.
|
||||
|
||||
In case there is a validation error the Electronic Invoice status remains in “To be sent” so the
|
||||
corrections can be made and the invoice can be sent again.
|
||||
@@ -453,8 +476,7 @@ If a validation error is received, you have two options:
|
||||
changes, and then send the invoice again to the SUNAT for another validation.
|
||||
|
||||
.. image:: peru/peru-errors.png
|
||||
:align: center
|
||||
:alt: List of common errors on invoices
|
||||
:alt: List of common errors on invoices.
|
||||
|
||||
For more detail please refert to `Common errors in SUNAT
|
||||
<https://www.nubefact.com/codigos-error-sunat/>`_.
|
||||
@@ -466,8 +488,7 @@ After the invoice is accepted and validated by the SUNAT, the invoice PDF report
|
||||
The report includes a QR code, indicating the invoice is a valid fiscal document.
|
||||
|
||||
.. image:: peru/peru-PDF.png
|
||||
:align: center
|
||||
:alt: Invoice PDF report
|
||||
:alt: Invoice PDF report.
|
||||
|
||||
IAP Credits
|
||||
~~~~~~~~~~~
|
||||
@@ -480,8 +501,7 @@ additional credits are required, you can easily buy them by accessing the link p
|
||||
the message.
|
||||
|
||||
.. image:: peru/peru-credits-IAP.png
|
||||
:align: center
|
||||
:alt: Buying credits in the IAP
|
||||
:alt: Buying credits in the IAP.
|
||||
|
||||
In the IAP service includes packages with different pricing based on the number of credits.
|
||||
The price list in the IAP is always displayed in EUR.
|
||||
@@ -497,8 +517,7 @@ If the invoice was already sent and validated by the SUNAT, the correct way to p
|
||||
clicking on the button Request Cancellation:
|
||||
|
||||
.. image:: peru/peru-cancellation.png
|
||||
:align: center
|
||||
:alt: Request invoice cancellation button
|
||||
:alt: Request invoice cancellation button.
|
||||
|
||||
In order to cancel an invoice, please provide a cancellation Reason.
|
||||
|
||||
@@ -511,22 +530,20 @@ immediately by clicking on the button “Send now”. Once it is sent, a cancell
|
||||
created, as a result the next message and CDR File are logged in the chatter:
|
||||
|
||||
.. image:: peru/peru-cancellation-cdr.png
|
||||
:align: center
|
||||
:alt: Cancellation CDR sent by the SUNAT
|
||||
:alt: Cancellation CDR sent by the SUNAT.
|
||||
|
||||
**Cancelled**: Indicates the cancellation request was sent to the OSE and was successfully
|
||||
validated. As part of the validation a ZIP file is downloaded and a message is logged in the
|
||||
chatter indicating the correct Government validation.
|
||||
|
||||
.. image:: peru/peru-cancelled.png
|
||||
:align: center
|
||||
:alt: nvoice after cancellation
|
||||
:alt: Invoice after cancellation.
|
||||
|
||||
.. warning::
|
||||
One credit is consumed on each cancellation request.
|
||||
|
||||
Cancellation process
|
||||
********************
|
||||
Export invoices
|
||||
***************
|
||||
|
||||
When creating exportation invoices, take into account the next considerations:
|
||||
|
||||
@@ -535,8 +552,7 @@ When creating exportation invoices, take into account the next considerations:
|
||||
- The taxes included in the invoice lines should be EXP taxes.
|
||||
|
||||
.. image:: peru/peru-exp-invoice.png
|
||||
:align: center
|
||||
:alt: Exportation invoices main data
|
||||
:alt: Exportation invoices main data.
|
||||
|
||||
Advance Payments
|
||||
****************
|
||||
@@ -555,13 +571,11 @@ When creating invoices that is subject to Detractions, take into account the nex
|
||||
#. All the products included in the invoice must have these fields configured:
|
||||
|
||||
.. image:: peru/peru-detraction.png
|
||||
:align: center
|
||||
:alt: Detraction fields on products
|
||||
:alt: Detraction fields on products.
|
||||
|
||||
#. Operation type in your invoice must be ``1001``
|
||||
|
||||
.. image:: peru/peru-detraction-invoice.png
|
||||
:align: center
|
||||
:alt: Detraction code on invoices.
|
||||
|
||||
Credit Notes
|
||||
@@ -572,8 +586,7 @@ for this just click on the button “Add Credit Note”, a part of the Peruvian
|
||||
to prove a Credit Reason selecting one of the options in the list.
|
||||
|
||||
.. image:: peru/peru-credit-note.png
|
||||
:align: center
|
||||
:alt: Add Credit Note from invoice
|
||||
:alt: Add Credit Note from invoice.
|
||||
|
||||
.. tip::
|
||||
When creating your first credit Note, select the Credit Method: Partial Refund, this allows you
|
||||
@@ -582,8 +595,7 @@ to prove a Credit Reason selecting one of the options in the list.
|
||||
By default the Credit Note is set in the document type:
|
||||
|
||||
.. image:: peru/peru-credit-note-document.png
|
||||
:align: center
|
||||
:alt: Credit Note document type
|
||||
:alt: Credit Note document type.
|
||||
|
||||
To finish the workflow please follow the instructions on :doc:`our page about Credit Notes
|
||||
<../accounting/customer_invoices/credit_notes>`.
|
||||
|
||||
|
After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 15 KiB |
@@ -271,9 +271,9 @@ Reports
|
||||
A number of :doc:`report selections <../accounting/reporting>` are readily available for the US
|
||||
localization, under the :menuselection:`Accounting app --> Reporting` drop-down menu:
|
||||
|
||||
- :ref:`Balance Sheet <reporting/balance-sheet>`: a "snapshot" of a company's financial position at
|
||||
a specific point in time, which contains an overview of a company's assets, liabilities, and
|
||||
equity.
|
||||
- :ref:`Balance Sheet <accounting/reporting/balance-sheet>`: a "snapshot" of a company's financial
|
||||
position at a specific point in time, which contains an overview of a company's assets,
|
||||
liabilities, and equity.
|
||||
- :ref:`Profit & Loss <accounting/reporting/balance-sheet>`: otherwise known as a *P&L statement* or
|
||||
*income statement*, provides a summary of a company's revenues, expenses, and profits/losses over
|
||||
a given period of time.
|
||||
@@ -282,10 +282,10 @@ localization, under the :menuselection:`Accounting app --> Reporting` drop-down
|
||||
- :ref:`Executive Summary <accounting/reporting/executive-summary>`: an overview report that covers
|
||||
the key performance indicators of a company's financial position, such as revenue, profit, and
|
||||
debt.
|
||||
- :ref:`Tax Report <reporting/tax-report>`: an official form filed for a tax authority that reports
|
||||
income, expenses, and other pertinent tax information. Tax reports allow taxpayers to calculate
|
||||
their tax liability, schedule tax payments, or request refunds for the overpayment of taxes. In
|
||||
Odoo, the tax report can be made monthly, every two months, quarterly, every 4 months,
|
||||
- :ref:`Tax Report <accounting/reporting/tax-report>`: an official form filed for a tax authority
|
||||
that reports income, expenses, and other pertinent tax information. Tax reports allow taxpayers to
|
||||
calculate their tax liability, schedule tax payments, or request refunds for the overpayment of
|
||||
taxes. In Odoo, the tax report can be made monthly, every two months, quarterly, every 4 months,
|
||||
semi-annually, and annually.
|
||||
- :guilabel:`Check Register`: a report that displays cash transactions (regardless of the journal)
|
||||
with their running balance after the transaction. Only visible with the *US - Accounting Reports*
|
||||
@@ -416,11 +416,14 @@ To enable check printing from Odoo, navigate to :menuselection:`Accounting --> C
|
||||
Settings` and find the :guilabel:`Vendor Payments` section. From here, tick the :guilabel:`Checks`
|
||||
checkbox to reveal several fields for check configuration.
|
||||
|
||||
Select a :guilabel:`Check Layout` from the drop-down menu:
|
||||
Select a pre-printed or blank :guilabel:`Check Layout` from the drop-down menu:
|
||||
|
||||
- :guilabel:`Print Check (Top) - US`
|
||||
- :guilabel:`Print Check (Middle) - US`
|
||||
- :guilabel:`Print Check (Bottom) - US`
|
||||
- :guilabel:`Print Blank Check (Top) - US`
|
||||
- :guilabel:`Print Blank Check (Middle) - US`
|
||||
- :guilabel:`Print Blank Check (Bottom) - US`
|
||||
|
||||
Next, choose whether or not to enable the :guilabel:`Multi-Pages Check Stub` checkbox.
|
||||
|
||||
@@ -429,8 +432,17 @@ Optionally set a :guilabel:`Check Top Margin` and :guilabel:`Check Left Margin`,
|
||||
Once all check configurations are complete, :guilabel:`Save` the settings.
|
||||
|
||||
.. tip::
|
||||
Some of the check formats may require pre-printed paper from a third party vendor,
|
||||
https://checkdepot.net/collections/odoo-checks is recommended.
|
||||
Pre-printed check formats (non-blank checks) require pre-printed paper from a third-party vendor.
|
||||
`Pre-printed checks from checkdepot.net <https://checkdepot.net/collections/odoo-checks>`_ are
|
||||
recommended.
|
||||
|
||||
.. important::
|
||||
Use one of the blank check formats to print the information of the check ad-hoc when needed. This
|
||||
requires the use of both :abbr:`MICR (Magnetic Ink Character Recognition)` ink or toner complying
|
||||
with the standards for check printing, as well as `check quality paper
|
||||
<https://checkdepot.net/collections/blank-check-paper/products/top-format-blank-check-paper-cdt164>`_.
|
||||
Other information, such as the company name, bank account, and check number, is printed when
|
||||
creating the blank check.
|
||||
|
||||
.. seealso::
|
||||
:doc:`../accounting/payments/pay_checks`
|
||||
@@ -705,7 +717,7 @@ Create batch payment
|
||||
Now, record each payment in Odoo using the |NACHA| payment method.
|
||||
|
||||
.. seealso::
|
||||
:ref:`Register Payments in Odoo <payments/register>`
|
||||
:ref:`Register Payments in Odoo <accounting/payments/from-invoice-bill>`
|
||||
|
||||
.. important::
|
||||
Be aware of the cut-off time for same-day payments. Either the file needs to have a future date
|
||||
|
||||
@@ -0,0 +1,356 @@
|
||||
=======
|
||||
Uruguay
|
||||
=======
|
||||
|
||||
.. |DGI| replace:: :abbr:`DGI (Dirección General Impositiva)`
|
||||
.. |EDI| replace:: :abbr:`EDI (Electronic Data Interchange)`
|
||||
.. |CAEs| replace:: :abbr:`CAEs (Constancia de Autorización de Emisión)`
|
||||
|
||||
.. _uruguay/intro:
|
||||
|
||||
Introduction
|
||||
============
|
||||
|
||||
With the Uruguayan localization, you can generate electronic documents with its XML, fiscal folio,
|
||||
electronic signature and connection to tax authority Dirección General Impositiva (DGI) through
|
||||
Uruware.
|
||||
|
||||
The supported documents are:
|
||||
|
||||
- :guilabel:`e-Invoice`, :guilabel:`e-Invoice Credit Note`, :guilabel:`e-Invoice Debit Note`;
|
||||
- :guilabel:`e-Ticket`, :guilabel:`e-Ticket Credit Note`, :guilabel:`e-Ticket Debit Note`;
|
||||
- :guilabel:`Export e-Invoice`, :guilabel:`Export e-Invoice Credit Note`, :guilabel:`Export
|
||||
e-Invoice Debit Note`.
|
||||
|
||||
The localization requires an Uruware account, which enables users to generate electronic documents
|
||||
within Odoo.
|
||||
|
||||
Glossary
|
||||
--------
|
||||
|
||||
The following terms are used throughout the Uruguayan localization:
|
||||
|
||||
- **DGI**: *Dirección General Impositiva* is the government entity responsible for enforcing tax
|
||||
payments in Uruguay.
|
||||
- **EDI**: *Electronic Data Interchange* refers to the sending of electronic documents.
|
||||
- **Uruware**: is the third-party organization that facilitates the interchange of electronic
|
||||
documents between companies and the Uruguayan government.
|
||||
- **CAE**: *Constancia de Autorización de Emisión* is a document requested from the tax authority's
|
||||
website to enable electronic invoice issuance.
|
||||
|
||||
Configuration
|
||||
=============
|
||||
|
||||
Modules installation
|
||||
--------------------
|
||||
|
||||
:ref:`Install <general/install>` the following modules to get all the features of the Uruguayan
|
||||
localization:
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
:widths: 25 25 50
|
||||
|
||||
* - Name
|
||||
- Technical name
|
||||
- Description
|
||||
* - :guilabel:`Uruguay - Accounting`
|
||||
- `l10n_uy`
|
||||
- The default :doc:`fiscal localization package <../fiscal_localizations>`. It adds accounting
|
||||
characteristics for the Uruguayan localization, which represent the minimum configuration
|
||||
required for a company to operate in Uruguay according to the guidelines set by the |DGI|.
|
||||
The module's installation automatically loads: chart of accounts, taxes, documents types, and
|
||||
tax supported types.
|
||||
* - :guilabel:`Uruguay Accounting EDI`
|
||||
- `l10n_uy_edi`
|
||||
- Includes all the technical and functional requirements to generate and validate
|
||||
:doc:`Electronics Documents <../accounting/customer_invoices/electronic_invoicing>`, based on
|
||||
the technical documentation published by the |DGI|. The authorized documents are :ref:`listed
|
||||
above <uruguay/intro>`.
|
||||
|
||||
.. note::
|
||||
Odoo automatically installs the base module **Uruguay - Accounting** when a database is installed
|
||||
with `Uruguay` selected as the country. However, to enable electronic invoicing, the **Uruguay
|
||||
Accounting EDI** (`l10n_uy_edi`) module needs to be manually :ref:`installed <general/install>`.
|
||||
|
||||
Company
|
||||
-------
|
||||
|
||||
To configure your company information, open the **Settings** app, scroll down to the
|
||||
:guilabel:`Companies` section, click :guilabel:`Update Info`, and configure the following:
|
||||
|
||||
- :guilabel:`Company Name`
|
||||
- :guilabel:`Address`, including the :guilabel:`Street`, :guilabel:`City`, :guilabel:`State`,
|
||||
:guilabel:`ZIP`, and :guilabel:`Country`
|
||||
- :guilabel:`Tax ID`: enter the identification number for the selected taxpayer type.
|
||||
- :guilabel:`DGI Main Branch Code`: this is part of the XML when creating an electronic document. If
|
||||
this field is not set, all electronic documents will be rejected.
|
||||
|
||||
To find the :guilabel:`DGI Main Branch Code`, follow these steps:
|
||||
|
||||
#. From your `DGI account <https://servicios.dgi.gub.uy/serviciosenlinea>`_, go to
|
||||
:menuselection:`Servicios en línea DGI --> Registro único tributario --> Consulta de datos`.
|
||||
#. Select :menuselection:`Consulta de Datos Registrales --> Consulta de Datos de Entidades`.
|
||||
#. Open the generated PDF to get the *DGI Main Branch Code* from the :guilabel:`Domicilio Fiscal
|
||||
Número de Local` section.
|
||||
|
||||
After configuring the company in the database settings, navigate to :menuselection:`Contacts` and
|
||||
search for your company to verify the following:
|
||||
|
||||
- the company type is set to :guilabel:`Company`.
|
||||
- the :guilabel:`Identification Number` :guilabel:`Type` is :guilabel:`RUT / RUC`.
|
||||
|
||||
.. _l10n_uy/uruware-account:
|
||||
|
||||
Set up a Uruware account
|
||||
------------------------
|
||||
|
||||
To set up a Uruware account, first be sure to have a valid Odoo subscription. Then follow the
|
||||
proceeding steps.
|
||||
|
||||
Locate the Uruware credentials settings by navigating to the :menuselection:`Accounting -->
|
||||
Configuration --> Settings`. Scroll down to the :guilabel:`Uruguayan Localization` section and click
|
||||
on :guilabel:`Create Uruware Account`.
|
||||
|
||||
Upon doing so, an email is sent to the address associated with your Odoo subscription with the
|
||||
username and password to enter Uruware's portal and set up your account.
|
||||
|
||||
.. tip::
|
||||
Your :guilabel:`Tax ID` needs to be setup to be able to create your account.
|
||||
|
||||
.. note::
|
||||
This action will create an account with Uruware with the following information:
|
||||
|
||||
- Legal name (razón social)
|
||||
- RUT from the company
|
||||
- User name (RUT.odoo)
|
||||
- Odoo database link
|
||||
|
||||
To ensure your account is created correctly, please add any missing information from above.
|
||||
|
||||
Once the account is created, a confirmation email is sent to the email linked to your subscription
|
||||
in Odoo, containing the credentials to configure the account directly in the Uruware
|
||||
`testing portal <https://odootest.ucfe.com.uy/Gestion/>`_ or
|
||||
`production portal <https://prod6109.ucfe.com.uy/Gestion/>`_:
|
||||
|
||||
Use the account credentials in the email to log in to the portal.
|
||||
|
||||
.. important::
|
||||
Be sure to configure two accounts, one for testing and one for production. The email address can
|
||||
be changed in Uruware and the same can be used in both environments.
|
||||
|
||||
Electronic invoice data
|
||||
-----------------------
|
||||
|
||||
To configure the electronic invoice data, an environment and credentials need to be configured. To
|
||||
do so, navigate to :menuselection:`Accounting --> Configuration --> Settings` and scroll down to the
|
||||
:guilabel:`Uruguayan Localization` section.
|
||||
|
||||
First, select the :guilabel:`UCFE Web Services` environment:
|
||||
|
||||
- :guilabel:`Production`: for production databases. In this mode, electronic documents are sent to
|
||||
|DGI| through Uruware for their validation.
|
||||
- :guilabel:`Testing`: for test databases. In this mode, the direct connection flows can be tested,
|
||||
with the files sent to the |DGI| testing environment through Uruware.
|
||||
- :guilabel:`Demo`: files are created and accepted automatically in demo mode but are **not** sent
|
||||
to the |DGI|. For this reason, rejection errors will not appear in this mode. Every internal
|
||||
validation can be tested in demo mode. Avoid selecting this option in a production database.
|
||||
|
||||
Then, enter the :guilabel:`Uruware Data`:
|
||||
|
||||
- :guilabel:`Uruware WS Password`
|
||||
- :guilabel:`Commerce Code`
|
||||
- :guilabel:`Terminal Code`
|
||||
|
||||
.. image:: uruguay/electronic-invoice-data.png
|
||||
:alt: Required information for electronic invoice.
|
||||
|
||||
.. note::
|
||||
This data can be obtained from the Uruware portal, after configuring the :ref:`Uruware account
|
||||
<l10n_uy/uruware-account>`. The :guilabel:`Uruware WS Password` differs from the password you use
|
||||
to enter your Uruware account.
|
||||
|
||||
Master data
|
||||
-----------
|
||||
|
||||
Chart of accounts
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
The :doc:`chart of accounts <../accounting/get_started/chart_of_accounts>` is installed by default
|
||||
as part of the set of data included in the localization module, the accounts are mapped
|
||||
automatically in taxes, default accounts payable, and default accounts receivable.
|
||||
|
||||
Accounts can be added or deleted according to the company's needs.
|
||||
|
||||
.. seealso::
|
||||
:doc:`../accounting/get_started/chart_of_accounts`
|
||||
|
||||
Contacts
|
||||
~~~~~~~~
|
||||
|
||||
To create a contact, navigate to :menuselection:`Contacts app` and select :guilabel:`New`. Then
|
||||
enter the following information:
|
||||
|
||||
- :guilabel:`Company Name`
|
||||
- :guilabel:`Address`:
|
||||
|
||||
- :guilabel:`Street`: required to confirm an electronic invoice.
|
||||
- :guilabel:`City`
|
||||
- :guilabel:`State`
|
||||
- :guilabel:`ZIP`
|
||||
- :guilabel:`Country`: required to confirm an electronic invoice.
|
||||
|
||||
- :guilabel:`Identification Number`:
|
||||
|
||||
- :guilabel:`Type`: select a identification type.
|
||||
- :guilabel:`Number`: required to confirm an electronic invoice.
|
||||
|
||||
Taxes
|
||||
~~~~~
|
||||
|
||||
As part of the Uruguay localization module, taxes are automatically created with its configuration
|
||||
and related financial accounts.
|
||||
|
||||
.. image:: uruguay/taxes.png
|
||||
:alt: Taxes for Uruguay.
|
||||
|
||||
Document types
|
||||
~~~~~~~~~~~~~~
|
||||
|
||||
Some accounting transactions, like *customer invoices* and *vendor bills* are classified by document
|
||||
types. These are defined by the government fiscal authorities, in this case by the |DGI|.
|
||||
|
||||
Each document type can have a unique sequence per journal where it is assigned. The data is created
|
||||
automatically when the localization module is installed, and the information required for the
|
||||
document types is included by default.
|
||||
|
||||
To review the document types included in the localization, navigate to :menuselection:`Accounting
|
||||
--> Configuration --> Document Types`.
|
||||
|
||||
.. note::
|
||||
In Uruguay, |CAEs| **must** be uploaded in Uruware. Sequences (and PDFs) are received in Odoo
|
||||
from Uruware, based on their |CAEs|. |CAEs| are **only** used in production. When testing, only a
|
||||
range of sequences used in Uruware need to be set.
|
||||
|
||||
.. image:: uruguay/document-types.png
|
||||
:alt: Document types for Uruguay.
|
||||
|
||||
Sales journals
|
||||
~~~~~~~~~~~~~~
|
||||
|
||||
To generate and confirm an electronic document that will be validated by |DGI|, the sales journal
|
||||
needs to be configured with the following:
|
||||
|
||||
- :guilabel:`Invoicing Type`: by default :guilabel:`Electronic` option is set. This is necessary to
|
||||
send electronic documents via web service to the Uruguayan government through Uruware. The other
|
||||
option, :guilabel:`Manual`, is for open invoices previously stamped in another system, for
|
||||
example, in the |DGI|.
|
||||
- :guilabel:`Use Documents?`: Activate this option if this journal will use documents from the list
|
||||
of document types in Odoo.
|
||||
|
||||
Workflows
|
||||
=========
|
||||
|
||||
Once you have configured your database, you can create your documents.
|
||||
|
||||
Sales documents
|
||||
---------------
|
||||
|
||||
Customer invoices
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
:doc:`Customer invoices <../accounting/customer_invoices>` are electronic documents that, when
|
||||
validated, are sent to |DGI| via Uruware. These documents can be created from your sales order or
|
||||
manually. They must contain the following data:
|
||||
|
||||
- :guilabel:`Customer`: type the customer's information.
|
||||
- :guilabel:`Due date`: to compute if the invoice is due now or later (*contado* or *crédito*,
|
||||
respectively).
|
||||
- :guilabel:`Journal`: select the electronic sales journal.
|
||||
- :guilabel:`Document Type`: document type in this format, for example, `(111) e-Invoice`.
|
||||
- :guilabel:`Products`: specify the product(s) with the correct taxes.
|
||||
|
||||
.. note::
|
||||
Every document type has a specific credit note and debit note (e.g., the document type
|
||||
:guilabel:`(111) e-Invoice` has an :guilabel:`(112) e-Invoice Credit Note`).
|
||||
|
||||
Customer credit note
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The :doc:`Customer credit note <../accounting/customer_invoices/credit_notes>` is an electronic
|
||||
document that, when validated, is sent to |DGI| via Uruware. It is necessary to have a validated
|
||||
(posted) invoice to register a credit note. On the invoice, click the :guilabel:`Credit note` button
|
||||
to access the :guilabel:`Create credit note` form, then complete the following information:
|
||||
|
||||
- :guilabel:`Reason`: type the reason for the credit note.
|
||||
- :guilabel:`Journal`: select the journal that has to be electronic and has the :guilabel:`Use
|
||||
Documents?` option active.
|
||||
- :guilabel:`Document Type`: select the credit note document type.
|
||||
- :guilabel:`Reversal Date`: type the date.
|
||||
|
||||
Customer debit note
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The :doc:`Customer debit note <../accounting/customer_invoices/credit_notes>` is an electronic
|
||||
document that, when validated, is sent to |DGI| via Uruware. It is necessary to have a validated
|
||||
(posted) invoice to register a debit note. On the invoice, click the :icon:`fa-cog`
|
||||
(:guilabel:`action menu`) icon, select the :guilabel:`Debit note` option to access the
|
||||
:guilabel:`Create credit note` form, then complete the following information:
|
||||
|
||||
- :guilabel:`Reason`: Type the reason for the debit note.
|
||||
- :guilabel:`Journal`: Select the journal that has to be electronic and has the :guilabel:`Use
|
||||
Documents?` option active.
|
||||
- :guilabel:`Copy lines`: Tick the checkbox to copy the invoice lines to the debit note.
|
||||
- :guilabel:`Debit note date`: Type the date.
|
||||
|
||||
.. note::
|
||||
Confirm the invoice to create it with an internal reference. To send the document to |DGI| via
|
||||
Uruware, click on :guilabel:`Send and Print` and select the checkbox :guilabel:`Create CFE`. The
|
||||
legal document sequence (number) is brought from Uruware once the document has been processed.
|
||||
Make sure you have |CAEs| available in Uruware.
|
||||
|
||||
.. note::
|
||||
The PDF of the validated document is pulled from Uruware following the specification by the
|
||||
Uruguayan government (DGI).
|
||||
|
||||
Addendas and disclosures
|
||||
========================
|
||||
|
||||
*Addendas* and *disclosures* are additional notes and comments added to an electronic document that
|
||||
can be mandatory or optional. To create a new addenda, go to :menuselection:`Accounting -->
|
||||
Configuration --> Addendas and disclosures` and click :guilabel:`New`.
|
||||
|
||||
Enter the following information:
|
||||
|
||||
- :guilabel:`Name`: name of the addenda or mandatory disclosure.
|
||||
- :guilabel:`Type`: Select the type of remark, this will add it to the specific section in the XML.
|
||||
- :guilabel:`Is legend`: Select this box if the text is a mandatory disclosure, leave it blank if it
|
||||
is additional information.
|
||||
- :guilabel:`Content`: Add the complete text of the addenda or disclosure.
|
||||
|
||||
Leyenda and additional information in product
|
||||
---------------------------------------------
|
||||
|
||||
To add a *leyenda* or additional information to the product and XML, it is necessary to add the
|
||||
preconfigured addenda and disclosure to the product in the invoice line. Add the *leyenda* in the
|
||||
:guilabel:`Disclosure` field of the product specified in the line.
|
||||
|
||||
Leyenda and additional information
|
||||
----------------------------------
|
||||
|
||||
To add a *leyenda* or additional information to the electronic invoice and XML, access the invoice,
|
||||
go to the :guilabel:`Other Info` tab, and select the desired addenda in the :guilabel:`Addenda and
|
||||
Disclosure` field. The addenda and disclosures added here will appear in the XML and visibly in the
|
||||
PDF document.
|
||||
|
||||
This applies to the following types of *addendas*:
|
||||
|
||||
- Document
|
||||
- Issuer
|
||||
- Receiver
|
||||
- Addendas
|
||||
|
||||
.. note::
|
||||
To add a temporary note to the electronic document, use the :guilabel:`Terms and Conditions`
|
||||
field. This information will be sent in the addenda of the invoice, but it won't be saved for
|
||||
future documents.
|
||||
|
After Width: | Height: | Size: 53 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 33 KiB |
@@ -9,7 +9,6 @@ Online payments
|
||||
|
||||
payment_providers/wire_transfer
|
||||
payment_providers/adyen
|
||||
payment_providers/alipay
|
||||
payment_providers/amazon_payment_services
|
||||
payment_providers/asiapay
|
||||
payment_providers/authorize
|
||||
@@ -18,11 +17,10 @@ Online payments
|
||||
payment_providers/flutterwave
|
||||
payment_providers/mercado_pago
|
||||
payment_providers/mollie
|
||||
payment_providers/ogone
|
||||
payment_providers/paypal
|
||||
payment_providers/razorpay
|
||||
payment_providers/sips
|
||||
payment_providers/stripe
|
||||
payment_providers/worldline
|
||||
payment_providers/xendit
|
||||
|
||||
Odoo embeds several **payment providers** that allow your customers to pay online, on their
|
||||
@@ -127,18 +125,18 @@ Online payment providers
|
||||
- Full only
|
||||
- Full and partial
|
||||
-
|
||||
* - :doc:`SIPS <payment_providers/sips>`
|
||||
- The provider's website
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
* - :doc:`Stripe <payment_providers/stripe>`
|
||||
- Odoo
|
||||
- |V|
|
||||
- Full only
|
||||
- Full and partial
|
||||
- |V|
|
||||
* - :doc:`Worldline <payment_providers/worldline>`
|
||||
- The provider's website
|
||||
- |V|
|
||||
-
|
||||
-
|
||||
-
|
||||
* - :doc:`Xendit <payment_providers/xendit>`
|
||||
- The provider's website
|
||||
-
|
||||
@@ -177,8 +175,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:
|
||||
@@ -284,10 +282,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:
|
||||
|
||||
@@ -443,18 +450,16 @@ other payments.
|
||||
.. seealso::
|
||||
- :doc:`payment_providers/wire_transfer`
|
||||
- :doc:`payment_providers/adyen`
|
||||
- :doc:`payment_providers/alipay`
|
||||
- :doc:`payment_providers/authorize`
|
||||
- :doc:`payment_providers/asiapay`
|
||||
- :doc:`payment_providers/buckaroo`
|
||||
- :doc:`payment_providers/demo`
|
||||
- :doc:`payment_providers/mercado_pago`
|
||||
- :doc:`payment_providers/mollie`
|
||||
- :doc:`payment_providers/ogone`
|
||||
- :doc:`payment_providers/paypal`
|
||||
- :doc:`payment_providers/razorpay`
|
||||
- :doc:`payment_providers/sips`
|
||||
- :doc:`payment_providers/stripe`
|
||||
- :doc:`payment_providers/worldline`
|
||||
- :doc:`payment_providers/xendit`
|
||||
- :doc:`../websites/ecommerce/checkout_payment_shipping/payments`
|
||||
- :doc:`accounting/bank`
|
||||
|
||||
@@ -1,39 +0,0 @@
|
||||
======
|
||||
Alipay
|
||||
======
|
||||
|
||||
`Alipay <https://www.alipay.com/>`_ is an online payments platform established in China by Alibaba
|
||||
Group.
|
||||
|
||||
.. warning::
|
||||
The provider Alipay is deprecated. It is recommended to use :doc:`asiapay` instead.
|
||||
|
||||
Configuration
|
||||
=============
|
||||
|
||||
.. seealso::
|
||||
- :ref:`payment_providers/add_new`
|
||||
|
||||
Credentials tab
|
||||
---------------
|
||||
|
||||
Odoo needs your **API Credentials** to connect with your Alipay account, which comprise:
|
||||
|
||||
- **Account**: Depending on where you are situated
|
||||
- `Express Checkout` if your are a Chinese Merchant.
|
||||
- `Cross-border` if you are not.
|
||||
- **Alipay Seller Email**: Your public Alipay partner email (for express checkout only).
|
||||
- **Merchant Partner ID**: The public partner ID solely used to identify the account with Alipay.
|
||||
- **MD5 Signature Key**: The signature key.
|
||||
|
||||
You can copy your credentials from your Alipay account, and paste them in the related fields under
|
||||
the **Credentials** tab.
|
||||
|
||||
To retrieve them, log into your Alipay account, they are on the front page.
|
||||
|
||||
.. important::
|
||||
If you are trying Alipay as a test, in the *sandbox*, change the **State** to *Test Mode*. We
|
||||
recommend doing this on a test Odoo database, rather than on your main database.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`../payment_providers`
|
||||
@@ -1,107 +0,0 @@
|
||||
=====
|
||||
Ogone
|
||||
=====
|
||||
|
||||
`Ogone <https://www.ingenico.com/>`_, also known as **Ingenico Payment Services** is a France-based
|
||||
company that provides the technology involved in secure electronic transactions.
|
||||
|
||||
.. seealso::
|
||||
- :ref:`payment_providers/add_new`
|
||||
- `Ogone's documentation <https://epayments-support.ingenico.com/get-started/>`_.
|
||||
|
||||
.. warning::
|
||||
The provider Ogone is deprecated. It is recommended to use :doc:`stripe` instead.
|
||||
|
||||
Settings in Ogone
|
||||
=================
|
||||
|
||||
Create an API user
|
||||
------------------
|
||||
|
||||
Log into your Ogone account and head to the :guilabel:`Configuration` tab.
|
||||
|
||||
You need to create an **API user** to be used in the creation of transactions from Odoo. While you
|
||||
can use your main account to do so, using an **API user** ensures that if the credentials used in
|
||||
Odoo are leaked, no access to your Ogone configuration is possible. Additionally, passwords for
|
||||
**API users** do not need to be updated regularly, unlike normal users.
|
||||
|
||||
To create an **API user**, go to :menuselection:`Configuration --> Users` and click on
|
||||
:guilabel:`New User`. The following fields must be configured:
|
||||
|
||||
.. _ogone/ogone:
|
||||
|
||||
- :guilabel:`UserID`: you can choose anything you want.
|
||||
- :guilabel:`User's Name, E-mail and Timezone`: you can enter the information you want.
|
||||
- :guilabel:`Profile`: should be set to :guilabel:`Admin`.
|
||||
- :guilabel:`Special user for API`: should be checked.
|
||||
|
||||
After the creation of the user, you are required to generate a password. Save the password and
|
||||
**UserID**, as they will be required later on during the setup.
|
||||
|
||||
.. tip::
|
||||
If you already have an user set up, make sure it is activated without any error. If not, simply
|
||||
click the :guilabel:`Activate(Errors)` button to reset the user.
|
||||
|
||||
Set up Ogone for Odoo
|
||||
---------------------
|
||||
|
||||
Ogone must now be configured to accept payments from Odoo. Head to :menuselection:`Configuration -->
|
||||
Technical Information --> Global Security Parameters`, select :guilabel:`SHA-512` as
|
||||
:guilabel:`Hash Algorithm` and :guilabel:`UTF-8` as :guilabel:`character encoding`. Then, go to the
|
||||
:guilabel:`Data and Origin verification` tab of the same page and leave the URL field of the
|
||||
:guilabel:`e-Commerce and Alias Gateway` section blank.
|
||||
|
||||
.. tip::
|
||||
If you need to use another algorithm, such as `sha-1` or `sha-256`, within Odoo, activate the
|
||||
:ref:`developer mode <developer-mode>` and go to the **Payment Providers** page in
|
||||
:menuselection:`Accounting --> Configuration --> Payment Providers`. Click on :guilabel:`Ogone`,
|
||||
and in the :guilabel:`Credentials` tab, select the algorithm you wish to use in the
|
||||
:guilabel:`Hash function` field.
|
||||
|
||||
You are now required to generate **SHA-IN** passphrases. **SHA-IN** and **SHA-OUT** passphrases are
|
||||
used to digitally sign the transaction requests and responses between Odoo and Ogone. By using these
|
||||
secret passphrases and the `sha-1` algorithm, both systems can ensure that the information they
|
||||
receive from the other was not altered or tampered with.
|
||||
|
||||
Enter the same **SHA-IN** passphrase in both :guilabel:`Checks for e-Commerce & Alias Gateway` and
|
||||
:guilabel:`Checks for DirectLink and Batch (Automatic)`. You can leave the IP address field blank.
|
||||
|
||||
Your **SHA-IN** and **SHA-OUT** passphrases should be different, and between 16 and 32 characters
|
||||
long. Make sure to use the same **SHA-IN** and **SHA-OUT** passphrases throughout the entire Ogone
|
||||
configuration, as Odoo only allows a single **SHA-IN** and single **SHA-OUT** passphrase.
|
||||
|
||||
In order to retrieve the **SHA-OUT** key, log into your Ogone account, go to
|
||||
:menuselection:`Configuration --> Technical Information --> Transaction feedback --> All
|
||||
transaction submission modes`, and get or generate your **API Key** and **Client Key**. Be careful
|
||||
to copy your API key as you’ll not be allowed to get it later without generating a new one.
|
||||
|
||||
When done, head to :menuselection:`Configuration --> Technical Information --> Transaction Feedback`
|
||||
and check the following options:
|
||||
|
||||
- The :guilabel:`URL` fields for :guilabel:`HTTP redirection in the browser` can be left empty, as
|
||||
Odoo will specify these URLs for every transaction request.
|
||||
- :guilabel:`I would like to receive transaction feedback parameters on the redirection URLs`:
|
||||
should be checked.
|
||||
- :guilabel:`Direct HTTP server-to-server request`: should to be set to `Online but switch to a
|
||||
deferred request when the online request fails`.
|
||||
- Both **URL** fields should contain the same following URL, with `<example>` replaced by your
|
||||
database: `https://<example>/payment/ogone/return`.
|
||||
|
||||
- :guilabel:`Dynamic eCommerce Parameters` should contain the following values: `ALIAS`, `AMOUNT`,
|
||||
`CARDNO`, `CN`, `CURRENCY`, `IP`, `NCERROR` `ORDERID`, `PAYID`, `PM`, `STATUS`, `TRXDATE`. Other
|
||||
parameters can be included (if you have another integration with Ogone that requires them), but
|
||||
are not advised.
|
||||
- In the :guilabel:`All transaction submission modes` section, fill out **SHA-OUT** passphrase and
|
||||
disable `HTTP request for status change`.
|
||||
|
||||
To allow your customers to save their credit card credentials for future use, head to
|
||||
:menuselection:`Configuration --> Alias --> My alias information`. From this tab, you can configure
|
||||
how the user can have its card details saved, for how long the information is saved, if a checkbox
|
||||
to save the card information should be displayed, etc.
|
||||
|
||||
Settings in Odoo
|
||||
================
|
||||
|
||||
To set up Ogone in Odoo, head to :menuselection:`Accounting --> Configuration --> Payment Providers`
|
||||
and open the Ogone provider. In the :guilabel:`Credentials` tab, enter the **PSPID** of your Ogone
|
||||
account, and fill out the other fields as configured in your :ref:`Ogone portal <ogone/ogone>`.
|
||||
@@ -2,7 +2,7 @@
|
||||
PayPal
|
||||
======
|
||||
|
||||
`Paypal <https://www.paypal.com/>`_ is an American online payment provider available worldwide, and
|
||||
`Paypal <https://www.paypal.com/>`_ is an American online payment provider available worldwide and
|
||||
one of the few that does not charge a subscription fee.
|
||||
|
||||
.. note::
|
||||
@@ -10,112 +10,71 @@ one of the few that does not charge a subscription fee.
|
||||
<https://www.paypal.com/webapps/mpp/country-worldwide>`_, only `a selection of currencies are
|
||||
supported <https://developer.paypal.com/docs/reports/reference/paypal-supported-currencies>`_.
|
||||
|
||||
Settings in PayPal
|
||||
==================
|
||||
.. _payment_providers/paypal/configuration-paypal:
|
||||
|
||||
To access your PayPal account settings, log into PayPal, open the :guilabel:`Account Settings`, and
|
||||
open the :guilabel:`Website payments` menu.
|
||||
Configuration in PayPal
|
||||
=======================
|
||||
|
||||
.. image:: paypal/paypal-account.png
|
||||
:align: center
|
||||
:alt: PayPal account menu
|
||||
#. `Log into your PayPal Developer Dashboard <https://developer.paypal.com/dashboard/>`_.
|
||||
#. Click :guilabel:`Apps & Credentials` and click :guilabel:`Create App`.
|
||||
#. Enter an :guilabel:`App Name` and click :guilabel:`Create App`.
|
||||
#. Copy the :guilabel:`Client ID` and :guilabel:`Secret` and save them for
|
||||
:ref:`later <payment_providers/paypal/configuration-odoo>`.
|
||||
|
||||
.. important::
|
||||
Note that for PayPal to work **in Odoo**, the options :ref:`Auto Return <paypal/auto-return>` and
|
||||
:ref:`PDT <paypal/pdt>` **must** be enabled.
|
||||
If you use customer names or addresses that include accented or non-Latin characters, you
|
||||
**must** configure the encoding format of the payment request sent by Odoo to PayPal to avoid
|
||||
transaction failures without notice. To do so, access the `PayPal button language encoding
|
||||
setting <https://www.paypal.com/cgi-bin/websrc?cmd=_profile-language-encoding>`_, click
|
||||
:guilabel:`More Options`, and set the :guilabel:`Encoding` field to :guilabel:`UTF-8`.
|
||||
|
||||
.. _paypal/auto-return:
|
||||
|
||||
Auto Return
|
||||
-----------
|
||||
|
||||
The **Auto Return** feature automatically redirects customers to Odoo once the payment is processed.
|
||||
|
||||
From :guilabel:`Website payments`, go to :menuselection:`Website preferences --> Update --> Auto
|
||||
return for website payments --> Auto return` and select :guilabel:`On`. Enter the address of your
|
||||
Odoo database (e.g., `https://yourcompany.odoo.com`) in the :guilabel:`Return URL` field, and
|
||||
:guilabel:`Save`.
|
||||
|
||||
.. note::
|
||||
Any URL does the job. Odoo only needs the setting to be enabled since it uses another URL.
|
||||
|
||||
.. _paypal/pdt:
|
||||
|
||||
Payment Data Transfer (PDT)
|
||||
---------------------------
|
||||
|
||||
:abbr:`PDT (Payment Data Transfer)` allows to receive payment confirmations, displays the payment
|
||||
status to the customers, and verifies the authenticity of the payments. From :menuselection:`Website
|
||||
preferences --> Update`, scroll down to :guilabel:`Payment data transfer` and select :guilabel:`On`.
|
||||
If you are trying PayPal as a test, access your :ref:`PayPal Sandbox account
|
||||
<payment_providers/paypal/testing>` and `configure the encoding format for your sandbox account
|
||||
<https://sandbox.paypal.com/cgi-bin/customerprofileweb?cmd=_profile-language-encoding>`_.
|
||||
|
||||
.. tip::
|
||||
PayPal displays your **PDT Identity Token** as soon as :ref:`Auto return <paypal/auto-return>`
|
||||
and :ref:`Payment Data Transfer (PDT) <paypal/pdt>` are enabled. If you need the **PDT Identity
|
||||
Token**, disable and re-enable :guilabel:`Payment data transfer` to display the token again.
|
||||
For encrypted website payments & EWP_SETTINGS errors, please check the `PayPal documentation
|
||||
<https://developer.paypal.com/docs/online/>`_.
|
||||
|
||||
PayPal Account Optional
|
||||
-----------------------
|
||||
.. _payment_providers/paypal/configuration-odoo:
|
||||
|
||||
We advise not to prompt customers to log in with a PayPal account upon payment. It is better and
|
||||
more accessible for customers to pay with a debit/credit card. To disable that prompt, go to
|
||||
:menuselection:`Account Settings --> Website payments --> Update` and select :guilabel:`On` for
|
||||
:guilabel:`PayPal account optional`.
|
||||
Configuration in Odoo
|
||||
=====================
|
||||
|
||||
Payment Messages Format
|
||||
-----------------------
|
||||
#. :ref:`Navigate to the payment provider PayPal <payment_providers/add_new>`.
|
||||
#. In the :guilabel:`Credentials` tab, enter the :guilabel:`Email` linked to your PayPal account,
|
||||
then fill in the :guilabel:`Client ID` and :guilabel:`Client Secret` fields with the values you
|
||||
saved at the step :ref:`payment_providers/paypal/configuration-paypal`.
|
||||
#. Click :guilabel:`Generate your webhook` to create the :guilabel:`Webhook ID`.
|
||||
#. Set the :guilabel:`State` field to :guilabel:`Enabled`, and make sure the PayPal payment provider
|
||||
is :guilabel:`Published`.
|
||||
#. Configure the remaining options as desired.
|
||||
|
||||
If you use accented characters (or anything other than primary Latin characters) for customer names
|
||||
or addresses, then you **must** configure the encoding format of the payment request sent by Odoo to
|
||||
PayPal. If you do not, some transactions fail without notice.
|
||||
.. _payment_providers/paypal/testing:
|
||||
|
||||
To do so, go to `your production account <https://www.paypal.com/cgi-bin/customerprofileweb
|
||||
?cmd=_profile-language-encoding>`_. Then, click :guilabel:`More Options` and set the two default
|
||||
encoding formats as :guilabel:`UTF-8`.
|
||||
Testing
|
||||
=======
|
||||
|
||||
.. tip::
|
||||
- For Encrypted Website Payments & EWP_SETTINGS error, please check the `Paypal documentation
|
||||
<https://developer.paypal.com/docs/online/>`_.
|
||||
- Configure your :ref:`Paypal Sandbox account <paypal/testing>`, then follow this
|
||||
`link <https://sandbox.paypal.com/cgi-bin/customerprofileweb?cmd=_profile-language-encoding>`_
|
||||
to configure the encoding format in a test environment.
|
||||
PayPal provides two sandbox accounts that you can use to simulate live transactions:
|
||||
|
||||
Settings in Odoo
|
||||
================
|
||||
|
||||
.. seealso::
|
||||
:ref:`payment_providers/add_new`
|
||||
|
||||
Odoo needs your **API Credentials** to connect with your PayPal account. To do so, go to
|
||||
:menuselection:`Accounting --> Configuration --> Payment Providers` and :guilabel:`Activate` PayPal.
|
||||
Then, enter your PayPal account credentials in the :guilabel:`Credentials` tab:
|
||||
|
||||
- :guilabel:`Email`: the login email address in Paypal;
|
||||
- :guilabel:`PDT Identity Token`: the key used to verify the authenticity of transactions.
|
||||
|
||||
.. _paypal/testing:
|
||||
|
||||
Test environment
|
||||
================
|
||||
|
||||
Configuration
|
||||
-------------
|
||||
|
||||
Thanks to PayPal sandbox accounts, you can test the entire payment flow in Odoo.
|
||||
|
||||
Log into the `Paypal Developer Site <https://developer.paypal.com/>`_ using your PayPal credentials,
|
||||
which creates two sandbox accounts:
|
||||
|
||||
- A business account (to use as merchants, e.g.,
|
||||
`pp.merch01-facilitator@example.com <mailto:pp.merch01-facilitator@example.com>`_);
|
||||
- A default personal account (to use as shoppers, e.g.,
|
||||
`pp.merch01-buyer@example.com <mailto:pp.merch01-buyer@example.com>`_).
|
||||
|
||||
Log into PayPal sandbox using the merchant account and follow the same configuration instructions.
|
||||
Enter your sandbox credentials in Odoo (:menuselection:`Accounting --> Configuration --> Payment
|
||||
Providers --> PayPal` in the :guilabel:`Credentials` tab, and make sure the status is set on
|
||||
:guilabel:`Test Mode`.
|
||||
|
||||
Run a test transaction from Odoo using the sandbox personal account.
|
||||
- A business account (to use as the merchant account, e.g., `ab-1abc12345678@business.example.com`);
|
||||
- A default personal account (to use as the shopper account, e.g.,
|
||||
`ba-9cba87654321@personal.example.com`).
|
||||
|
||||
To test the PayPal payment workflow in Odoo:
|
||||
|
||||
#. Log into the `Paypal Developer Site <https://developer.paypal.com/>`_ using your PayPal
|
||||
credentials and go to :menuselection:`Testing Tools --> Sandbox Accounts`.
|
||||
#. Click the :icon:`fa-ellipsis-v` (:guilabel:`ellipsis`) icon next to the sandbox business account
|
||||
and select :guilabel:`View/Edit account`.
|
||||
#. Copy the :guilabel:`Email`, :guilabel:`Client ID`, and :guilabel:`Secret` and save them for the
|
||||
next step.
|
||||
#. In Odoo, :ref:`configure the PayPal payment provider <payment_providers/paypal/configuration-odoo>`
|
||||
with the values saved at the previous step and set the :guilabel:`State` field to
|
||||
:guilabel:`Test Mode`.
|
||||
|
||||
You can then run a test transaction from Odoo using the sandbox personal account.
|
||||
|
||||
.. seealso::
|
||||
- :ref:`payment_providers/test-mode`
|
||||
- :doc:`../payment_providers`
|
||||
|
||||
@@ -1,32 +0,0 @@
|
||||
====
|
||||
SIPS
|
||||
====
|
||||
|
||||
`SIPS <https://sips.worldline.com/>`_ is an online payments solution from the multinational
|
||||
Worldline.
|
||||
|
||||
Configuration
|
||||
=============
|
||||
|
||||
.. seealso::
|
||||
- :ref:`payment_providers/add_new`
|
||||
|
||||
Credentials tab
|
||||
---------------
|
||||
|
||||
Odoo needs your **API Credentials** to connect with your SIPS account, which comprise:
|
||||
|
||||
- **Merchant ID**: The ID solely used to identify the merchant account with SIPS.
|
||||
- **Secret Key**: The key to sign the merchant account with SIPS.
|
||||
- **Secret Key Version**: The version of the key, pre-filled.
|
||||
- **Interface Version**: Pre-filled, don't change it.
|
||||
|
||||
You can copy your credentials from your SIPS environment info documentation, in the section
|
||||
**PROD**, and paste them in the related fields under the **Credentials** tab.
|
||||
|
||||
.. important::
|
||||
If you are trying SIPS as a test, with the *TEST* credentials, change the **State** to *Test
|
||||
Mode*. We recommend doing this on a test Odoo database, rather than on your main database.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`../payment_providers`
|
||||