Compare commits

...

26 Commits

Author SHA1 Message Date
jopa-odoo
16d943a9bf [ADD] Legal: Japanese translation of the Odoo Enterprise Subscription Agreement 2023-02-20 09:40:00 +01:00
Odoo Translation Bot
2237088f85 [I18N] Update translation terms from Transifex 2023-02-19 02:40:09 +01:00
Donatienne Pirlot
2fa9de17e1 [IMP] accounting: update cheat sheet
This PR change the cheat sheet of the accounting documentation.
Change done:
* Change name of the file: memento to cheat_sheet
* Adding explanation to the doc (Ex: Invoices and bills status)
* Correcting some sentences

closes odoo/documentation#3045

Task-id: 2847663
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-02-17 16:09:27 +01:00
Jonathan Castillo (jcs)
2fccceb964 [IMP] install/maintain: add section about search engine indexation
task-3179504

closes odoo/documentation#3603

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-02-17 14:40:16 +01:00
Jonathan Castillo (jcs)
983778b5b6 [FIX] legal: RST cleanup (headings delimiters characters)
This commit changes the characters used as heading delimiters in the
/legal/ folder of the documentation. This makes it easier for writers to
figure out the heading order as all other files in this repository use
the same order of heading delimiters characters.

closes odoo/documentation#3548

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-02-17 11:53:46 +01:00
Brandon Seltenrich (BRSE)
aaa1de94bd [IMP] inventory: update automated inventory valuation
closes odoo/documentation#3242

Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
2023-02-16 18:04:52 +01:00
KC (ksc)
b76b3fa3f3 [ADD] events: added complete documentation
closes odoo/documentation#2549

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-02-16 09:28:50 +01:00
Jonathan Castillo (jcs)
643834ced1 [FIX] *: RST cleanup
RST cleanup to comply with the RST guidelines. This is required so we
can use "make test", as there are currently hundreds of errors. For now,
it is unusable because of the oldest code in this repo.

closes odoo/documentation#3567

Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-02-14 11:24:31 +01:00
Sam Lieber (sali)
1591e1f087 [IMP] marketing: sms pricing and faq doc updates
closes odoo/documentation#1632

Signed-off-by: Zachary Straub <zst@odoo.com>
2023-02-14 01:51:54 +01:00
Victor Feyens
831cf23be9 [FIX] *: typos
closes odoo/documentation#3156

Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2023-02-13 12:24:03 +01:00
Victor Feyens
ad768c33aa [ADD] tests: add sphinxlint checkers for headings
task-2801043

Part-of: odoo/documentation#3156
Co-authored-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-02-13 12:24:03 +01:00
Mahmoud Metwally
b763d67216 [FIX] developer/howtos: typos and phrasing
Backport of #3541 in 14.0

closes odoo/documentation#3542

Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2023-02-13 11:35:20 +01:00
Odoo Translation Bot
d1170f6093 [I18N] Update translation terms from Transifex 2023-02-13 08:28:07 +01:00
Jonathan Castillo (jcs)
6ba84585d0 [FIX] *: first small clean of the code
Friday afternoon cleanup. This is required so we can use "make test", as
there are currently hundreds of errors. For now, it is unusable because
of the oldest code in this repo.

closes odoo/documentation#3536

Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-02-10 17:20:43 +01:00
Jonathan Castillo (jcs)
7a83804d73 [MOV] finance: move fiscal localisation pages and merge /overview/
The content written in the fiscal localisation pages are not only for
Accounting, but also for other apps such as Payroll and Point of Sales.
This commit moves the content to the "Finance" level, to better reflect
this reality, and merges the pages in the /overview/ folder in the main
category page.

closes odoo/documentation#3535

Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-02-10 16:36:44 +01:00
“Chiara
2dc390bf95 [IMP] accounting/l10n: Italian Localization
closes odoo/documentation#3024

Taskid: 3067241
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-02-09 13:46:52 +01:00
Donatienne Pirlot
0550374968 [ADD] accounting: localization page for uk
closes odoo/documentation#3230

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-02-09 12:03:41 +01:00
Martin Trigaux
040ceeb39c [I18N] migrate to the nex transifex API
Tansifex is deprecating it's client and switches to a go-based
solution in its API v3

The new client is still backward compatible with the old format but
the v2 API is going to be phased out.
See https://github.com/transifex/cli to install the deplyments using
the tx client

This PR is the result of the "tx migrate" command

closes odoo/documentation#3500

Related: odoo/odoo#112130
Related: odoo/enterprise#36784
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-02-09 09:41:17 +01:00
Zachary Straub (ZST)
591e80deb7 [FIX] Quality: add missing/cutoff content
closes odoo/documentation#3479

Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2023-02-06 10:19:16 +01:00
Odoo Translation Bot
19e257e724 [I18N] Update translation terms from Transifex 2023-02-05 02:40:23 +01:00
Sam Lieber (sali)
ec1ddb34b1 [ADD] Quality: configure quality control checks
closes odoo/documentation#3431

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-02-01 18:31:44 +01:00
Donatienne Pirlot
b5febf2299 [MOV] purchase: moving doc page from accounting to purchase
Moving the Manage vendor bills page from the accounting app to the purchase app as it is
more relevant.

closes odoo/documentation#3302

Taskid: 2687652
Signed-off-by: Zachary Straub <zst@odoo.com>
2023-01-31 18:42:40 +01:00
thkl-odoo
f469e4ef81 [IMP] install/maintain: clarification in the upgrade SLA
The Service Level Agreement has to be updated. Any additional line of
code, without using studio, in standard modules is not supposed to be
covered by the upgrade team. It is slightly different than the point
telling "development of custom modules"

closes odoo/documentation#3445

Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-01-31 17:25:58 +01:00
Melanie Nguyen (meng)
2fb777e3e8 [IMP] sales: fix returns and refunds
closes odoo/documentation#3402

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-01-30 09:07:40 +01:00
Odoo Translation Bot
8eea9e694f [I18N] Update translation terms from Transifex 2023-01-29 02:40:24 +01:00
Jonathan Castillo (jcs)
957a9f9fb8 [IMP] dev/api: add ref custom anchor to external api keys
closes odoo/documentation#3424

Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-01-27 09:46:12 +01:00
544 changed files with 5864 additions and 3429 deletions

View File

@@ -1,63 +1,63 @@
[main]
host = https://www.transifex.com
type = PO
[odoo-14-doc.applications]
[o:odoo:p:odoo-14-doc:r:applications]
file_filter = locale/<lang>/LC_MESSAGES/applications.po
source_file = locale/sources/applications.pot
source_lang = en
[odoo-14-doc.finance]
[o:odoo:p:odoo-14-doc:r:finance]
file_filter = locale/<lang>/LC_MESSAGES/finance.po
source_file = locale/sources/finance.pot
source_lang = en
[odoo-14-doc.general]
[o:odoo:p:odoo-14-doc:r:general]
file_filter = locale/<lang>/LC_MESSAGES/general.po
source_file = locale/sources/general.pot
source_lang = en
[odoo-14-doc.index]
[o:odoo:p:odoo-14-doc:r:index]
file_filter = locale/<lang>/LC_MESSAGES/index.po
source_file = locale/sources/index.pot
source_lang = en
[odoo-14-doc.inventory_and_mrp]
[o:odoo:p:odoo-14-doc:r:inventory_and_mrp]
file_filter = locale/<lang>/LC_MESSAGES/inventory_and_mrp.po
source_file = locale/sources/inventory_and_mrp.pot
source_lang = en
[odoo-14-doc.marketing]
[o:odoo:p:odoo-14-doc:r:marketing]
file_filter = locale/<lang>/LC_MESSAGES/marketing.po
source_file = locale/sources/marketing.pot
source_lang = en
[odoo-14-doc.productivity]
[o:odoo:p:odoo-14-doc:r:productivity]
file_filter = locale/<lang>/LC_MESSAGES/productivity.po
source_file = locale/sources/productivity.pot
source_lang = en
[odoo-14-doc.sales]
[o:odoo:p:odoo-14-doc:r:sales]
file_filter = locale/<lang>/LC_MESSAGES/sales.po
source_file = locale/sources/sales.pot
source_lang = en
[odoo-14-doc.services]
[o:odoo:p:odoo-14-doc:r:services]
file_filter = locale/<lang>/LC_MESSAGES/services.po
source_file = locale/sources/services.pot
source_lang = en
[odoo-14-doc.theme]
[o:odoo:p:odoo-14-doc:r:theme]
file_filter = locale/<lang>/LC_MESSAGES/sphinx.po
source_file = locale/sources/sphinx.pot
source_lang = en
[odoo-14-doc.user_settings]
[o:odoo:p:odoo-14-doc:r:user_settings]
file_filter = locale/<lang>/LC_MESSAGES/settings.po
source_file = locale/sources/settings.pot
source_lang = en
[odoo-14-doc.websites]
[o:odoo:p:odoo-14-doc:r:websites]
file_filter = locale/<lang>/LC_MESSAGES/websites.po
source_file = locale/sources/websites.pot
source_lang = en

View File

@@ -42,6 +42,7 @@ help:
@echo " html to build the documentation to HTML"
@echo " fast to build the documentation to HTML with shallow menu (faster)"
@echo " clean to delete the build files"
@echo " test to run the guidelines tests"
clean:
@echo "Cleaning build files..."
@@ -82,3 +83,6 @@ fast: html
static: $(HTML_BUILD_DIR)/_static/style.css
cp -r extensions/odoo_theme/static/* $(HTML_BUILD_DIR)/_static/
cp -r static/* $(HTML_BUILD_DIR)/_static/
test:
python tests/rst_style.py $(SOURCE_DIR)

View File

@@ -516,6 +516,7 @@ security-related topics:
Blocking Brute Force Attacks
----------------------------
For internet-facing deployments, brute force attacks on user passwords are very common, and this
threat should not be neglected for Odoo servers. Odoo emits a log entry whenever a login attempt
is performed, and reports the result: success or failure, along with the target login and source IP.

View File

@@ -4,19 +4,22 @@ Email gateway
The Odoo mail gateway allows you to inject directly all the received emails in Odoo.
Its principle is straightforward: your SMTP server executes the "mailgate" script for every new incoming email.
Its principle is straightforward: your SMTP server executes the "mailgate" script for every new
incoming email.
The script takes care of connecting to your Odoo database through XML-RPC, and send the emails via
the `MailThread.message_process()` feature.
Prerequisites
-------------
- Administrator access to the Odoo database.
- Your own mail server such as Postfix or Exim.
- Technical knowledge on how to configure an email server.
For Postfix
-----------
In you alias config (:file:`/etc/aliases`):
.. code-block:: text
@@ -33,6 +36,7 @@ In you alias config (:file:`/etc/aliases`):
For Exim
--------
.. code-block:: text
*: |/odoo-directory/addons/mail/static/scripts/odoo-mailgate.py -d <database-name> -u <userid> -p <password>

View File

@@ -105,13 +105,13 @@ Linux
-----
Debian/Ubuntu
'''''''''''''
~~~~~~~~~~~~~
Odoo {CURRENT_MAJOR_VERSION} 'deb' package currently supports `Debian Buster`_, `Ubuntu 18.04`_ or
above.
Prepare
^^^^^^^
*******
Odoo needs a `PostgreSQL`_ server to run properly. The default configuration for
the Odoo 'deb' package is to use the PostgreSQL server on the same host as your
@@ -127,7 +127,7 @@ Odoo instance. Execute the following command in order to install the PostgreSQL
details on the various versions.
Repository
^^^^^^^^^^
**********
Odoo S.A. provides a repository that can be used with Debian and Ubuntu distributions. It can be
used to install *Odoo Community Edition* by executing the following commands **as root**:
@@ -143,7 +143,7 @@ You can then use the usual `apt-get upgrade` command to keep your installation u
At this moment, there is no nightly repository for the Enterprise Edition.
Deb Package
^^^^^^^^^^^
***********
Instead of using the repository as described above, the 'deb' packages for both the *Community* and
*Enterprise* editions can be downloaded from the `official download page <download_>`_.
@@ -179,12 +179,13 @@ and automatically start the server.
$ sudo pip3 install num2words
Fedora
''''''
~~~~~~
Odoo {CURRENT_MAJOR_VERSION} 'rpm' package supports Fedora 30.
Prepare
^^^^^^^
*******
Odoo needs a `PostgreSQL`_ server to run properly. Make sure that the `sudo` command is available
and well configured and, only then, execute the following command in order to install the PostgreSQL
server:
@@ -202,7 +203,7 @@ server:
details on the various versions.
Repository
^^^^^^^^^^
**********
Odoo S.A. provides a repository that can be used with the Fedora distributions.
It can be used to install *Odoo Community Edition* by executing the following
@@ -216,7 +217,7 @@ commands:
$ sudo systemctl start odoo
RPM package
^^^^^^^^^^^
***********
Instead of using the repository as described above, the 'rpm' packages for both the *Community* and
*Enterprise* editions can be downloaded from the `official download page <download_>`_.
@@ -254,12 +255,12 @@ Windows
-------
Fetch the sources
'''''''''''''''''
~~~~~~~~~~~~~~~~~
There are two ways to obtain the source code of Odoo: as a zip **archive** or through **git**.
Archive
^^^^^^^
*******
Community Edition:
@@ -275,7 +276,7 @@ Enterprise Edition:
.. _setup/install/source/windows/git:
Git
^^^
***
The following requires `Git <git_>`_ to be installed on your machine and that you have basic
knowledge of Git commands. To clone a Git repository, you must choose between cloning with HTTPS or
@@ -310,10 +311,10 @@ on contributing to Odoo source code, choose SSH.
.. _setup/install/source/windows/prepare:
Prepare
'''''''
~~~~~~~
Python
^^^^^^
******
Odoo requires Python 3.6 or later to run. Visit `Python's download page <https://www.python.org/downloads/windows/>`_
to download and install the latest version of Python 3 on your machine.
@@ -335,7 +336,7 @@ sure that **pip** is checked.
C:\> pip --version
PostgreSQL
^^^^^^^^^^
**********
Odoo uses PostgreSQL as database management system. `Download and install PostgreSQL <https://www.postgresql.org/download/windows/>`_
(supported version: 10.0 and later).
@@ -356,7 +357,7 @@ create a new PostgreSQL user:
`Yes`.
Dependencies
^^^^^^^^^^^^
************
Before installing the dependencies, you must download and install the
`Build Tools for Visual Studio <https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2019>`_.
@@ -396,7 +397,7 @@ needed:
(typically: `C:\\Users\\<user>\\AppData\\Roaming\\npm\\`).
Running Odoo
''''''''''''
~~~~~~~~~~~~
Once all dependencies are set up, Odoo can be launched by running `odoo-bin`, the
command-line interface of the server. It is located at the root of the Odoo Community directory.
@@ -444,12 +445,12 @@ Linux
-----
Fetch the sources
'''''''''''''''''
~~~~~~~~~~~~~~~~~
There are two ways to obtain the source code of Odoo: as a zip **archive** or through **git**.
Archive
^^^^^^^
*******
Community Edition:
@@ -465,7 +466,7 @@ Enterprise Edition:
.. _setup/install/source/linux/git:
Git
^^^
***
The following requires `Git <git_>`_ to be installed on your machine and that you have basic
knowledge of Git commands. To clone a Git repository, you must choose between cloning with HTTPS or
@@ -500,10 +501,10 @@ on contributing to Odoo source code, choose SSH.
.. _setup/install/source/linux/prepare:
Prepare
'''''''
~~~~~~~
Python
^^^^^^
******
Odoo requires Python 3.6 or later to run. Use your package manager to download and install Python 3
on your machine if it is not already done.
@@ -522,7 +523,7 @@ on your machine if it is not already done.
$ pip3 --version
PostgreSQL
^^^^^^^^^^
**********
Odoo uses PostgreSQL as database management system. Use your package manager to download and install
PostgreSQL (supported version: 10.0 and later).
@@ -545,7 +546,7 @@ create a new PostgreSQL user:
connect to the database without password.
Dependencies
^^^^^^^^^^^^
************
For libraries using native code, it is necessary to install development tools and native
dependencies before the Python dependencies of Odoo. They are available in `-dev` or `-devel`
@@ -590,7 +591,7 @@ needed:
$ sudo npm install -g rtlcss
Running Odoo
''''''''''''
~~~~~~~~~~~~
Once all dependencies are set up, Odoo can be launched by running `odoo-bin`, the
command-line interface of the server. It is located at the root of the Odoo Community directory.
@@ -639,12 +640,12 @@ Mac OS
------
Fetch the sources
'''''''''''''''''
~~~~~~~~~~~~~~~~~
There are two ways to obtain the source code of Odoo: as a zip **archive** or through **git**.
Archive
^^^^^^^
*******
Community Edition:
@@ -660,7 +661,7 @@ Enterprise Edition:
.. _setup/install/source/mac_os/git:
Git
^^^
***
The following requires `Git <git_>`_ to be installed on your machine and that you have basic
knowledge of Git commands. To clone a Git repository, you must choose between cloning with HTTPS or
@@ -695,10 +696,10 @@ on contributing to Odoo source code, choose SSH.
.. _setup/install/source/mac_os/prepare:
Prepare
'''''''
~~~~~~~
Python
^^^^^^
******
Odoo requires Python 3.6 or later to run. Use your preferred package manager (homebrew_, macports_)
to download and install Python 3 on your machine if it is not already done.
@@ -717,7 +718,7 @@ to download and install Python 3 on your machine if it is not already done.
$ pip3 --version
PostgreSQL
^^^^^^^^^^
**********
Odoo uses PostgreSQL as database management system. Use `postgres.app <https://postgresapp.com>`_
to download and install PostgreSQL (supported version: 10.0 and later).
@@ -739,7 +740,7 @@ create a new PostgreSQL user:
connect to the database without password.
Dependencies
^^^^^^^^^^^^
************
Odoo dependencies are listed in the `requirements.txt` file located at the root of the Odoo
community directory.
@@ -783,7 +784,7 @@ needed:
$ sudo npm install -g rtlcss
Running Odoo
''''''''''''
~~~~~~~~~~~~
Once all dependencies are set up, Odoo can be launched by running `odoo-bin`, the
command-line interface of the server. It is located at the root of the Odoo Community directory.

View File

@@ -45,6 +45,36 @@ All domain names are referenced in the **Domain Name System**, or **DNS**, which
directory for the Internet. There are many DNS servers, so any modification to the DNS can take up
to 72 hours to propagate worldwide on all servers.
.. _domain-name/indexing:
Indexing of domain names by search engines
------------------------------------------
Search engines, such as Google and Bing, rely on web crawlers (:dfn:`robots that explore and analyze
the web`) to index all websites and their related domain names. These crawlers discover new URLs
thanks to links on known web pages. As a result, search engines should index domain names
automatically after a while, as long as their URLs are mentioned elsewhere on the Internet.
Improving the appearance and positioning of web pages on search engines is a practice named "Search
Engine Optimization" (SEO).
.. tip::
Adding relevant content, optimizing metadata, and building high-quality backlinks can all help
improve a website's search engine visibility.
Some search engines provide tools for web admins, such as
`Google Search Console <https://search.google.com/search-console>`_ and
`Bing Webmaster Tools <https://www.bing.com/webmasters>`_, to help you analyze and improve your
page ranking. To use these services, you must prove that you are the owner of your domain name. One
way to verify the ownership of your domain name is by adding a DNS record. You can do this for
:ref:`domain names registered with Odoo <domain-name/odoo-manage>` and for domain names managed by
other providers.
.. seealso::
- :doc:`/applications/websites/website/optimize/seo`
- `Google Search Console Help - Verify your site ownership <https://support.google.com/webmasters/answer/9008080>`_
- `Bing Webmaster Tools - Add and Verify site <https://www.bing.com/webmasters/help/add-and-verify-site-12184f8b>`_
.. _domain-name/odoo-register:
Register a free domain name with Odoo
@@ -319,7 +349,7 @@ In the :guilabel:`Domain` field, fill in the web address of your website (e.g.,
If both addresses are already indexed, it may take some time before Google removes the indexation
of the second address. You may also try using the `Google Search Console
<https://search.google.com/search-console/welcome>`_ to fix this.
<https://search.google.com/search-console>`_ to fix this.
.. seealso::
- :doc:`/applications/general/email_communication/email_servers`

View File

@@ -19,12 +19,12 @@ If you are unable to register your database, you will likely encounter this
message:
.. image:: on_premise/error_message_sub_code.png
:align: center
:alt: Something went wrong while registering your database,
you can try again or contact Odoo Help
:align: center
:alt: Something went wrong while registering your database, you can try again or contact Odoo
Help
Solutions
'''''''''
~~~~~~~~~
* Do you have a valid Enterprise subscription?
@@ -42,15 +42,13 @@ Solutions
<https://accounts.odoo.com/my/subscription>`__ with the button "Unlink database"
.. image:: on_premise/unlink_single_db.png
:align: center
:align: center
A confirmation message will appear; make sure this is the correct database as
it will be deactivated shortly:
.. image:: on_premise/unlink_confirm_enterprise_edition.png
:align: center
:align: center
* Do you have the updated version of Odoo 9?
@@ -63,8 +61,7 @@ Solutions
specifying which database is problematic:
.. image:: on_premise/unlink_db_name_collision.png
:align: center
:align: center
In this case, you need to change the UUID on your test databases to solve this
issue. You will find more information about this in :ref:`this section <duplicate_premise>`.
@@ -85,8 +82,6 @@ Solutions
* Once you activated your database, you must keep these ports open, as the
Update notification runs once a week.
Error message due to too many users
-----------------------------------
@@ -94,16 +89,15 @@ If you have more users in your local database than provisionned in your
Odoo Enterprise subscription, you may encounter this message:
.. image:: on_premise/add_more_users.png
:align: center
:alt: This database will expire in X days, you
have more users than your subscription allows
:align: center
:alt: This database will expire in X days, you have more users than your subscription allows
When the message appears you have 30 days before the expiration.
The countdown is updated everyday.
Solutions
'''''''''
~~~~~~~~~
- **Add more users** on your subscription: follow the link and Validate
the upsell quotation and pay for the extra users.
@@ -123,15 +117,14 @@ If your database reaches its expiration date before your renew your subscription
you will encounter this message:
.. image:: on_premise/database_expired.png
:align: center
:alt: This database has expired.
:align: center
:alt: This database has expired.
This **blocking** message appears after a non-blocking message that lasts 30 days.
If you fail to take action before the end of the countdown, the database is expired.
Solutions
'''''''''
~~~~~~~~~
* Renew your subscription: follow the link and renew your subscription - note that
if you wish to pay by Wire Transfer, your subscription will effectively be renewed
@@ -142,7 +135,6 @@ Solutions
None of those solutions worked for you? Please contact our
`Support <https://www.odoo.com/help>`__
.. _force_ping:
.. _duplicate_premise:
@@ -155,8 +147,7 @@ server (<odoo-server>/web/database/manager). In this page, you can easily
duplicate your database (among other things).
.. image:: on_premise/db_manager.gif
:align: center
:align: center
When you duplicate a local database, it is **strongly** advised to change
the duplicated database's uuid (Unniversally Unique Identifier), since this
@@ -164,8 +155,9 @@ uuid is how your database identifies itself with our servers. Having two
databases with the same uuid could result in invoicing problems or registration
problems down the line.
.. note:: From July 2016 onward, Odoo 9 now automatically change the uuid of a
duplicated database; a manual operation is no longer required.
.. note::
From July 2016 onward, Odoo 9 now automatically change the uuid of a duplicated database; a
manual operation is no longer required.
The database uuid is currently accessible from the menu :menuselection:`Settings --> Technical -->
System Parameters`, we advise you to use a `uuid generator <https://www.uuidtools.com>`_ or to
@@ -173,4 +165,4 @@ use the unix command ``uuidgen`` to generate a new uuid. You can then simply rep
other record by clicking on it and using the edit button.
.. image:: on_premise/db_uuid.png
:align: center
:align: center

View File

@@ -104,6 +104,7 @@ and you're all set.
Source Install (Tarball)
------------------------
If you have originally installed Odoo with the "tarball" version (source code archive), you have
to replace the installation directory with a newer version. First download the latest tarball
from Odoo.com. They are updated daily and include the latest security fixes (see step #1)
@@ -123,6 +124,7 @@ Finally, restart the Odoo service or reboot the machine, and you are all set.
Source Install (Github)
-----------------------
If you have originally installed Odoo with a full Github clone of the official repositories, the
update procedure requires you to pull the latest source code via git.
Change into the directory for each repository (the main Odoo repository, and the Enterprise

View File

@@ -1,8 +1,8 @@
:nosearch:
=================
========
Advanced
=================
========
.. toctree::
:titlesonly:

View File

@@ -1,7 +1,7 @@
==================================
==========
Containers
==================================
==========
Overview
========

View File

@@ -1,9 +1,9 @@
.. _odoosh-advanced-frequent_technical_questions:
==================================
============================
Frequent Technical Questions
==================================
============================
"Scheduled actions do not run at the exact time they were expected"
-------------------------------------------------------------------

View File

@@ -1,9 +1,9 @@
.. _odoosh-advanced-submodules:
==================================
==========
Submodules
==================================
==========
Overview
========
@@ -64,7 +64,7 @@ On Github, you can get the repository URL with the *Clone or download* button of
.. _odoosh-advanced-submodules-withgit:
With Git (advanced)
---------------------
-------------------
In a terminal, in the folder where your Git repository is cloned,
checkout the branch in which you want to add a submodule:

View File

@@ -1,8 +1,8 @@
:nosearch:
=================
===========
Get started
=================
===========
.. toctree::
:titlesonly:

View File

@@ -1,7 +1,6 @@
==================================
========
Branches
==================================
========
Overview
========
@@ -14,7 +13,7 @@ The branches view gives you an overview of the different branches your repositor
.. _odoosh-gettingstarted-branches-stages:
Stages
===============
======
Odoo.sh offers three different stages for your branches: production, staging and development.
@@ -27,6 +26,7 @@ You can change the stage of a branch by drag and dropping it into the stage sect
Production
----------
This is the branch holding the code on which your production database runs.
There can be only one production branch.
@@ -59,6 +59,7 @@ will automatically be set back to the development stage after 30 days.
Staging
-------
Staging branches are meant to test your new features using the production data without compromising
the actual production database with test records. They will create databases that are neutralized
duplicates of the production database.
@@ -83,9 +84,9 @@ The unit tests are not performed as, in Odoo, they currently rely on the demo da
production database. In the future, if Odoo supports to run the unit tests without the demo data,
Odoo.sh will then consider running the tests on staging databases.
Development
-----------
Development branches create new databases using the demo data to run the unit tests.
The installed modules are the ones included in your branches. You can change this list of modules
to install in your :ref:`project Settings <odoosh-gettingstarted-settings-modules-installation>`.
@@ -107,6 +108,7 @@ After that, they can be automatically garbage collected to make room for new dat
Merging your branches
---------------------
You can merge your branches easily by drag and dropping them into each other.
.. image:: branches/interface-branches-merge.png
@@ -147,10 +149,11 @@ If you test configuration changes in staging branches, and want them to be appli
.. _odoosh-gettingstarted-branches-tabs:
Tabs
=============
====
History
-------
An overview of your branch history:
* The messages of the commits and their authors,
@@ -168,6 +171,7 @@ When an operation is successful, you can access the database thanks to the *conn
Mails
-----
This tab contains the mail catcher. It displays an overview of the emails sent by your database.
The mail catcher is available for your development and
staging branches as the emails of your production database are really sent instead of being intercepted.
@@ -178,6 +182,7 @@ staging branches as the emails of your production database are really sent inste
Shell
-----
A shell access to your container. You can perform basic linux commands (:code:`ls`, :code:`top`)
and open a shell on your database by typing :code:`psql`.
@@ -187,13 +192,13 @@ and open a shell on your database by typing :code:`psql`.
You can open multiple tabs and drag-and-drop them to arrange the layout as you wish,
for instance side by side.
.. Note::
Long running shell instances are not guaranteed. Idle shells can be
disconnected at anytime in order to free up resources.
Editor
------
An online integrated development environment (IDE) to edit the source code.
You can also open terminals, Python consoles and even Odoo Shell consoles.
@@ -205,6 +210,7 @@ for instance side by side.
Monitoring
----------
This link contains various monitoring metrics of the current build.
.. image:: branches/interface-branches-monitoring.png
@@ -217,6 +223,7 @@ On the graphs, annotations help you relate to changes on the build (database imp
Logs
----
A viewer to have a look to your server logs.
.. image:: branches/interface-branches-logs.png
@@ -240,6 +247,7 @@ The fetching is automatically stopped after 5 minutes. You can restart it using
Backups
-------
A list of the backups available for download and restore, the ability to perform a manual backup and to import a
database.
@@ -398,14 +406,13 @@ settings to increase the deliverability of your outgoing emails.
The configuration steps are explained in the documentation about :ref:`SPF
<email_communication/spf_compliant>` and :ref:`DKIM <email_communication/dkim_compliant>`.
.. Warning::
Forgetting to configure your SPF or DKIM to authorize Odoo as a sending host can lead to the
delivery of your emails as spam in your contacts inbox.
Shell commands
==============
In the top right-hand corner of the view, different shell commands are available.
.. image:: branches/interface-branches-shellcommands.png
@@ -418,6 +425,7 @@ such as ``<URL>``, ``<PATH>``, ...
Clone
-----
Download the Git repository.
.. code-block:: bash
@@ -433,6 +441,7 @@ The *run* button is not available for this command, as it is meant to be used on
Fork
----
Create a new branch based on the current branch.
.. code-block:: bash
@@ -449,6 +458,7 @@ Uploads the new branch *feature-1* on your remote repository.
Merge
-----
Merge the current branch in another branch.
.. code-block:: bash
@@ -465,8 +475,10 @@ Uploads the changes you just added in the *master* branch on your remote reposit
SSH
---
Setup
~~~~~
In order to use SSH, you have to set up your profile SSH public key (if it is not already done).
To do so, follow these steps:
@@ -506,7 +518,6 @@ you'll be granted ssh access to the build.
Long running ssh connections are not guaranteed. Idle connections will be
disconnected in order to free up resources.
Submodule
---------

View File

@@ -1,17 +1,18 @@
.. _odoosh-gettingstarted-builds:
==================================
======
Builds
==================================
======
Overview
========
In Odoo.sh, a build is considered as a database loaded by an Odoo server
(`odoo/odoo <https://github.com/odoo/odoo>`_ & `odoo/enterprise <https://github.com/odoo/enterprise>`_)
running on a specific revision of your project repository in a containerized environment.
Its purpose is to test the well-behavior of the server, the database and the features with this revision.
(`odoo/odoo <https://github.com/odoo/odoo>`_ & `odoo/enterprise
<https://github.com/odoo/enterprise>`_) running on a specific revision of your project repository in
a containerized environment. Its purpose is to test the well-behavior of the server, the database
and the features with this revision.
.. image:: builds/interface-builds.png
:align: center
@@ -28,13 +29,13 @@ A successful build is highlighted in green.
A build is considered failed if errors come up during its creation.
A failed build is highlighted in red.
If warnings come up during the creation, but there are no errors, the build is considered almost successful.
It is highlighted in yellow to notify the developer warnings were raised.
If warnings come up during the creation, but there are no errors, the build is considered almost
successful. It is highlighted in yellow to notify the developer warnings were raised.
Builds do not always create a database from scratch.
For instance, when pushing a change on the production branch, the build created just starts the server
with your new revision and tries to load the current production database on it.
If no errors come up, the build is considered successful, and otherwise failed.
Builds do not always create a database from scratch. For instance, when pushing a change on the
production branch, the build created just starts the server with your new revision and tries to load
the current production database on it. If no errors come up, the build is considered successful, and
otherwise failed.
Stages
======
@@ -48,14 +49,15 @@ If this build is successful, this database is considered as the production datab
From then, pushes on the production branch will create new builds that attempt to load the database
using a server running with the new revision.
If the build is successful, or has warnings but no errors, the production database will now run with this build, along
with the revision associated to this build.
If the build is successful, or has warnings but no errors, the production database will now run with
this build, along with the revision associated to this build.
If the build fails to load or update the database, then the previous successful build is re-used to load the database,
and therefore the database will run using a server running with the previous successful revision.
If the build fails to load or update the database, then the previous successful build is re-used to
load the database, and therefore the database will run using a server running with the previous
successful revision.
The build used to run the production database is always the first of the builds list. If a build fails, it is
put after the build currently running the production database.
The build used to run the production database is always the first of the builds list. If a build
fails, it is put after the build currently running the production database.
Staging
-------
@@ -63,18 +65,17 @@ Staging
Staging builds duplicate the production database,
and try to load this duplicate with the revisions of the staging branches.
Each time you push a new revision on a staging branch, the build created uses a new copy of the production database.
The databases are not re-used between builds of the same branch. This ensures:
Each time you push a new revision on a staging branch, the build created uses a new copy of the
production database. The databases are not re-used between builds of the same branch. This ensures:
* staging builds use databases that are close to what the production looks like,
so you do not make your tests with outdated data,
* staging builds use databases that are close to what the production looks like, so you do not make
your tests with outdated data,
* you can play around as much as you want in the same staging database,
and you can then ask for a rebuild when you want to restart with a new copy of the production.
* you can play around as much as you want in the same staging database, and you can then ask for a
rebuild when you want to restart with a new copy of the production.
Nevertheless, this means that if you make configuration changes in staging databases
and do not apply them in the production,
they will not be passed on the next build of the same staging branch.
Nevertheless, this means that if you make configuration changes in staging databases and do not
apply them in the production, they will not be passed on the next build of the same staging branch.
Development
-----------
@@ -86,30 +87,30 @@ as they are meant to raise errors if something wrong occurs.
If all tests pass, and there is no error, the build will be considered successful.
According to the list of modules to install and test, a development build can take up to 1 hour to be ready.
This is due to the large number of tests set in the default Odoo modules suite.
According to the list of modules to install and test, a development build can take up to 1 hour to
be ready. This is due to the large number of tests set in the default Odoo modules suite.
Features
========
The production branch will always appear first,
and then the other branches are ordered by last build created. You can filter out the branches.
The production branch will always appear first, and then the other branches are ordered by last
build created. You can filter out the branches.
.. image:: builds/interface-builds-branches.png
:align: center
For each branch, you can access the last build's database using the *Connect* link and jump to the branch code using
the *Github* link. For other branches than the production, you can create a new build which will use the latest revision
of the branch using the link *rebuild*. This last link is not available when there is already a build in progress for
the branch.
For each branch, you can access the last build's database using the *Connect* link and jump to the
branch code using the *Github* link. For other branches than the production, you can create a new
build which will use the latest revision of the branch using the link *rebuild*. This last link is
not available when there is already a build in progress for the branch.
.. image:: builds/interface-builds-build.png
:align: center
For each build, you can access the revision changes using the button with the Github icon.
You can access the build's database as the administrator using the *Connect* button.
Also, you can access the database with another user using the *Connect as* button,
in the dropdown menu of the *Connect* button.
For each build, you can access the revision changes using the button with the Github icon. You can
access the build's database as the administrator using the *Connect* button. Also, you can access
the database with another user using the *Connect as* button, in the dropdown menu of the *Connect*
button.
.. _odoosh-gettingstarted-builds-download-dump:
@@ -118,6 +119,6 @@ in the dropdown menu of the *Connect* button.
.. _odoosh-gettingstarted-builds-dropdown-menu:
In the dropdown menu of the build, you can access the same features than in :ref:`the branches view <odoosh-gettingstarted-branches-tabs>`:
*Logs*, *Web Shell*, *Editor*, *Outgoing e-mails*.
You also have the possibility to *Download a dump* of the build's database.
In the dropdown menu of the build, you can access the same features than in :ref:`the branches view
<odoosh-gettingstarted-branches-tabs>`: *Logs*, *Web Shell*, *Editor*, *Outgoing e-mails*. You also
have the possibility to *Download a dump* of the build's database.

View File

@@ -1,9 +1,9 @@
.. _odoosh-gettingstarted-create:
==================================
===================
Create your project
==================================
===================
Deploy your platform
====================
@@ -16,7 +16,8 @@ Go to `Odoo.sh <https://www.odoo.sh/>`_ and hit the *Deploy your platform* butto
Sign in with Github
===================
Sign in with your Github account. If you do not have an account yet, hit the *Create an account* link.
Sign in with your Github account. If you do not have an account yet, hit the *Create an account*
link.
.. image:: create/github-signin.png
:align: center
@@ -33,34 +34,44 @@ Odoo.sh basically needs:
* to know your Github login and email,
* to create a new repository in case you decide to start from scratch,
* to read your existing repositories, including the ones of your organizations, in case you want to start from an existing repository,
* to read your existing repositories, including the ones of your organizations, in case you want to
start from an existing repository,
* to create a webhook to be notified each time you push changes,
* to commit changes to make your deployment easier, merging branches or adding new `submodules <https://git-scm.com/book/en/v2/Git-Tools-Submodules>`_ for example.
* to commit changes to make your deployment easier, merging branches or adding new `submodules
<https://git-scm.com/book/en/v2/Git-Tools-Submodules>`_ for example.
Submit your project
===================
Choose if you want to start from scratch by creating a new repository, or if you want to use an existing repository.
Choose if you want to start from scratch by creating a new repository, or if you want to use an
existing repository.
Then, choose a name or select the repository you want to use.
Choose the Odoo version you want to use. If you plan to import an existing database or an existing set of applications, you might need to choose the according version. If you start from scratch, use the latest version.
Choose the Odoo version you want to use. If you plan to import an existing database or an existing
set of applications, you might need to choose the according version. If you start from scratch, use
the latest version.
Enter your *subscription code*. This is also called *subscription referral*, *contract number* or *activation code*.
Enter your *subscription code*. This is also called *subscription referral*, *contract number* or
*activation code*.
It should be the code of your Enterprise subscription that includes Odoo.sh.
Partners can use their partnership codes to start a trial. Should their clients start a project, they ought to get an Enterprise subscription including Odoo.sh and use its subscription code. The partner will get the full amount as back commission.
Contact your sales representative or account manager in order to get it.
Partners can use their partnership codes to start a trial. Should their clients start a project,
they ought to get an Enterprise subscription including Odoo.sh and use its subscription code. The
partner will get the full amount as back commission. Contact your sales representative or account
manager in order to get it.
When submitting the form, if you are notified your subscription is not valid, it either means:
* it is not an existing subscription,
* it is not a partnership subscription,
* it is an enterprise subscription, but which does not include Odoo.sh,
* it is neither a partnership subscription or an enterprise subscription (e.g. an online subscription).
* it is neither a partnership subscription or an enterprise subscription (e.g. an online
subscription).
In case of doubt with your subscription, please contact the `Odoo support <https://www.odoo.com/help>`_.
In case of doubt with your subscription, please contact the `Odoo support
<https://www.odoo.com/help>`_.
.. image:: create/deploy-form.png
:align: center
@@ -68,7 +79,8 @@ In case of doubt with your subscription, please contact the `Odoo support <https
You're done !
=============
You can start using Odoo.sh. Your first build is about to be created. You will soon be able to connect to your first database.
You can start using Odoo.sh. Your first build is about to be created. You will soon be able to
connect to your first database.
.. image:: create/deploy-done.png
:align: center
@@ -88,9 +100,10 @@ If you use community or custom modules, add them in a branch in your Github repo
Databases hosted on the Odoo.com online platform do not have any custom modules.
Users of these databases can therefore skip this step.
You can structure your modules as you wish, Odoo.sh will automatically detect the folders containing Odoo addons.
For instance, you can put all your modules folder in the root directory of your repository,
or group the modules in folders by categories that you define (accounting, project, ...).
You can structure your modules as you wish, Odoo.sh will automatically detect the folders containing
Odoo addons. For instance, you can put all your modules folder in the root directory of your
repository, or group the modules in folders by categories that you define (accounting, project,
...).
For community modules available in public Git repositories,
you can also consider to add them using :ref:`Submodules <odoosh-advanced-submodules>`.
@@ -111,7 +124,8 @@ Access the URL :file:`/web/database/manager` of your on-premise database and dow
If you cannot access the database manager, it may have been disabled by your system administrator.
See the :ref:`database manager security documentation <db_manager_security>`.
You will need the master password of your database server. If you do not have it, contact your system administrator.
You will need the master password of your database server. If you do not have it, contact your
system administrator.
.. image:: create/create-import-onpremise-backup.png
:align: center
@@ -124,10 +138,11 @@ Choose a zip including the filestore as the backup format.
Odoo Online databases
~~~~~~~~~~~~~~~~~~~~~
`Access your databases manager <https://accounts.odoo.com/my/databases/manage>`_ and download a backup of your database.
`Access your databases manager <https://accounts.odoo.com/my/databases/manage>`_ and download a
backup of your database.
.. image:: create/create-import-online-backup.png
:align: center
:align: center
.. Warning::
@@ -136,52 +151,55 @@ Odoo Online databases
Upload the backup
-----------------
Then, in your Odoo.sh project, in the backups tab of your production branch, import the backup you just downloaded.
Then, in your Odoo.sh project, in the backups tab of your production branch, import the backup you
just downloaded.
.. image:: create/create-import-production.png
:align: center
Once the backup imported, you can access the database using the *Connect* button in the history of the branch.
Once the backup imported, you can access the database using the *Connect* button in the history of
the branch.
.. image:: create/create-import-production-done.png
:align: center
:align: center
Check your outgoing email servers
---------------------------------
There is a default mail server provided with Odoo.sh.
To use it, there must be no enabled outgoing mail server configured in your database in
:menuselection:`Settings --> Technical --> Outgoing Mail Servers`
(:ref:`Developer mode <developer-mode>` must be activated).
:menuselection:`Settings --> Technical --> Outgoing Mail Servers` (:ref:`Developer mode
<developer-mode>` must be activated).
After the import of your database,
all outgoing email servers are disabled so you use the Odoo.sh email server provided by default.
After the import of your database, all outgoing email servers are disabled so you use the Odoo.sh
email server provided by default.
.. Warning::
Port 25 is (and will stay) closed. If you want to connect to an external SMTP server, you should use ports 465 and 587.
.. warning::
Port 25 is (and will stay) closed. If you want to connect to an external SMTP server, you should
use ports 465 and 587.
Check your scheduled actions
----------------------------
All scheduled actions are disabled after the import.
This is to prevent your newly imported database to perform actions that could impact your running production,
such as sending the mails remaining in the queue, processing mass mailings, or third-party services synchronization
(Calendars, files hosting, ...).
This is to prevent your newly imported database to perform actions that could impact your running
production, such as sending the mails remaining in the queue, processing mass mailings, or
third-party services synchronization (Calendars, files hosting, ...).
If you plan to make the imported database your production, enable the scheduled actions you need.
You can check what is enabled in the database of origin and enable the same actions in the imported database.
Scheduled actions are located under :menuselection:`Settings --> Technical --> Automation --> Scheduled Actions`.
You can check what is enabled in the database of origin and enable the same actions in the imported
database. Scheduled actions are located under :menuselection:`Settings --> Technical --> Automation
--> Scheduled Actions`.
Register your subscription
--------------------------
Your subscription is unlinked after the import.
The imported database is considered a duplicate by default and the enterprise subscription is therefore removed,
as you can only have one database linked per subscription.
The imported database is considered a duplicate by default and the enterprise subscription is
therefore removed, as you can only have one database linked per subscription.
If you plan to make it your production,
unlink your former database from the subscription, and register the newly imported database.
Read the :doc:`database registration documentation <../../maintain/on_premise>` for instructions.
If you plan to make it your production, unlink your former database from the subscription, and
register the newly imported database. Read the :doc:`database registration documentation
<../../maintain/on_premise>` for instructions.

View File

@@ -27,7 +27,7 @@ Create the development branch
=============================
From Odoo.sh
-------------
------------
In the branches view:
@@ -43,20 +43,18 @@ In the branches view:
.. |pic2| image:: first_module/firstmodule-development-fork.png
:width: 45%
Once the build created, you can access the editor and browse to the folder *~/src/user* to access
to the code of your development branch.
.. image:: first_module/firstmodule-development-editor.png
:align: center
:align: center
.. image:: first_module/firstmodule-development-editor-interface.png
:align: center
:align: center
From your computer
------------------
Clone your Github repository on your computer:
.. code-block:: bash
@@ -72,7 +70,6 @@ Create a new branch:
$ git checkout -b feature-1 master
Create the module structure
===========================
@@ -119,11 +116,11 @@ The below structure will be generated:
├── templates.xml
└── views.xml
.. Warning::
.. warning::
Do not use special characters other than the underscore ( _ ) for your module name, not even an
hyphen ( - ). This name is used for the Python classes of your module, and having classes name
with special characters other than the underscore is not valid in Python.
Do not use special characters other than the underscore ( _ ) for your module name, not even an
hyphen ( - ). This name is used for the Python classes of your module, and having classes name
with special characters other than the underscore is not valid in Python.
Uncomment the content of the files:
@@ -222,7 +219,6 @@ install.
You can then play around with your module, create new records and test your features and buttons.
Test with the production data
=============================
@@ -237,12 +233,12 @@ You can either:
title.
.. image:: first_module/firstmodule-test-devtostaging.png
:align: center
:align: center
* Merge it in an existing staging branch, by drag and dropping it onto the given staging branch.
.. image:: first_module/firstmodule-test-devinstaging.png
:align: center
:align: center
You can also use the :code:`git merge` command to merge your branches.
@@ -250,7 +246,7 @@ This will create a new staging build, which will duplicate the production databa
using a server updated with your latest changes of your branch.
.. image:: first_module/firstmodule-test-mergedinstaging.png
:align: center
:align: center
Once the database ready, you can access it using the *Connect* button.
@@ -419,7 +415,7 @@ Or, from your computer terminal:
The platform will then create a new build for the branch *feature-1*.
.. image:: first_module/firstmodule-test-addachange-build.png
:align: center
:align: center
Once you tested your changes, you can merge your changes in the production branch, for instance by
drag-and-dropping the branch on the production branch in the Odoo.sh interface. As you increased the

View File

@@ -1,9 +1,9 @@
.. _odoosh-gettingstarted-online-editor:
==================================
=============
Online Editor
==================================
=============
Overview
========
@@ -120,24 +120,23 @@ In this last command,
.. image:: online-editor/interface-editor-commit-push.png
:align: center
.. Note::
The SSH Github remote is not used because your SSH private key
is not hosted in your build containers (for obvious security concerns)
nor forwarded through an SSH Agent (as you access this editor through a web browser)
and you therefore cannot authenticate yourself to Github using SSH.
You have to use the HTTPS remote of your Github repository to push your changes,
which is added automatically named as *https* in your Git remotes.
You will be prompted to enter your Github username and password.
If you activated the two-factor authentication on Github,
you can create a
`personal access token <https://help.github.com/articles/creating-a-personal-access-token-for-the-command-line/>`_
and use it as password. Granting the ``repo`` permission suffices.
.. note::
The SSH Github remote is not used because your SSH private key
is not hosted in your build containers (for obvious security concerns)
nor forwarded through an SSH Agent (as you access this editor through a web browser)
and you therefore cannot authenticate yourself to Github using SSH.
You have to use the HTTPS remote of your Github repository to push your changes,
which is added automatically named as *https* in your Git remotes.
You will be prompted to enter your Github username and password.
If you activated the two-factor authentication on Github,
you can create a `personal access token
<https://help.github.com/articles/creating-a-personal-access-token-for-the-command-line/>`_
and use it as password. Granting the ``repo`` permission suffices.
.. Note::
The Git source folder *~/src/user* is not checked out on a branch but rather on a detached revision:
This is because builds work on specific revisions rather than branches.
In other words, this means you can have multiple builds on the same branch, but on different revisions.
.. note::
The Git source folder *~/src/user* is not checked out on a branch but rather on a detached revision:
This is because builds work on specific revisions rather than branches.
In other words, this means you can have multiple builds on the same branch, but on different revisions.
Once your changes are pushed,
according to your :ref:`branch push behavior <odoosh-gettingstarted-branches-tabs-settings>`,
@@ -166,12 +165,11 @@ You can also open an Odoo Shell console to play around
with the Odoo registry and model methods of your database. You can also directly read or write
on your records.
.. Warning::
In an Odoo Console, transactions are automatically committed.
This means, for instance, that changes in records are applied effectively in the database.
If you change the name of a user, the name of the user is changed in your database
as well.
You therefore should use Odoo consoles carefully on production databases.
.. warning::
In an Odoo Console, transactions are automatically committed.
This means, for instance, that changes in records are applied effectively in the database.
If you change the name of a user, the name of the user is changed in your database as well.
You therefore should use Odoo consoles carefully on production databases.
You can use *env* to invoke models of your database registry, e.g. :code:`env['res.users']`.
@@ -196,4 +194,4 @@ You can also use
to display graphs.
.. image:: online-editor/interface-editor-console-odoo-graph.png
:align: center
:align: center

View File

@@ -1,7 +1,6 @@
==================================
========
Settings
==================================
========
Overview
========
@@ -21,8 +20,8 @@ The name of your project.
This defines the address that will be used to access your production database.
Addresses of your staging and development builds are derived from this name and assigned automatically.
However, when you change your project name, only future builds will use the new name.
Addresses of your staging and development builds are derived from this name and assigned
automatically. However, when you change your project name, only future builds will use the new name.
.. _odoosh-gettingstarted-settings-collaborators:
@@ -39,10 +38,10 @@ There are two 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.
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.
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.
In addition, they cannot use the webshell nor have access to the server logs.
@@ -90,7 +89,8 @@ 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.
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.
@@ -98,11 +98,11 @@ Production and staging builds are excluded, visitors can only see their status.
.. _odoosh-gettingstarted-settings-modules-installation:
Custom domains
==============
To configure additional domains please refer to the corresponding branch's :ref:`settings tab <odoosh-gettingstarted-branches-tabs-settings>`.
To configure additional domains please refer to the corresponding branch's :ref:`settings tab
<odoosh-gettingstarted-branches-tabs-settings>`.
.. _odoosh-gettingstarted-settings-submodules:
@@ -112,10 +112,10 @@ Submodules
Configure the deploy keys for the private repositories you use
as submodules in your branches to allow Odoo.sh to download them.
.. Warning::
These settings are required for **private repositories** only.
If you are looking on how to set up your submodules,
instructions are available in the chapter :ref:`Submodules <odoosh-advanced-submodules>` of this documentation.
.. warning::
These settings are required for **private repositories** only. If you are looking on how to set
up your submodules, instructions are available in the chapter :ref:`Submodules
<odoosh-advanced-submodules>` of this documentation.
.. image:: settings/interface-settings-submodules.png
:align: center
@@ -130,7 +130,8 @@ To configure the deploy key for a private repository, proceed as follows:
* in the input, paste the SSH URL of your private sub-repository and click on *Add*,
* e.g. *git@github.com:USERNAME/REPOSITORY.git*
* it can be another Git server than Github, such as Bitbucket, Gitlab or even your own self-hosted server
* it can be another Git server than Github, such as Bitbucket, Gitlab or even your own self-hosted
server
* copy the public key,
@@ -157,8 +158,9 @@ Storage size is computed as follows:
* the size of the disk files available in your container: database filestore, sessions storage directory...
.. Warning::
In case you want to analyze disk usage, you can run the tool `ncdu <https://dev.yorhel.nl/ncdu/man>`_ in your Web Shell.
.. warning::
In case you want to analyze disk usage, you can run the tool `ncdu
<https://dev.yorhel.nl/ncdu/man>`_ in your Web Shell.
Should your production database size grow to exceed what's provisioned in your subscription, it
will automatically be synchronized with it.
@@ -191,7 +193,8 @@ add more, it will automatically be synchronized with your subscription.
Activation
==========
Shows the status of the project's activation. You can change the project's activation code if needed.
Shows the status of the project's activation. You can change the project's activation code if
needed.
.. image:: settings/interface-settings-activation.png
:align: center

View File

@@ -1,12 +1,12 @@
==================================
======
Status
==================================
======
Overview
========
The status page shows statistics regarding the servers your project uses. It includes the servers availability.
The status page shows statistics regarding the servers your project uses. It includes the servers
availability.
.. image:: status/interface-status.png
:align: center

View File

@@ -1,8 +1,8 @@
:nosearch:
=================
========
Overview
=================
========
.. toctree::
:titlesonly:

View File

@@ -1,7 +1,6 @@
==============================
=======================
Introduction to Odoo.sh
==============================
=======================
.. youtube:: QuNsa9n9PMg
:align: right

View File

@@ -243,6 +243,7 @@ What upgrading does NOT cover
* The cleaning of pre-existing data & configuration while upgrading
* Any new developments and/or upgrades of your own :ref:`custom modules
<upgrade-faq/custom-modules>`
* Lines of code added to standard modules that are not created with Odoo Studio.
* `Training <https://www.odoo.com/learn>`_ on the latest version
You can get more information about your Enterprise Licence on our :ref:`Odoo Enterprise Subscription

View File

@@ -12,3 +12,4 @@ Finance
finance/documents
finance/sign
finance/payment_acquirers
finance/fiscal_localizations

View File

@@ -16,7 +16,7 @@ accounts, smart matching suggestions, etc.
.. seealso::
- `Odoo Tutorials: Accounting <https://www.odoo.com/slides/accounting-19>`_
- :doc:`Accounting Cheat Sheet <accounting/getting_started/memento>`
- :doc:`Accounting Cheat Sheet <accounting/getting_started/cheat_sheet>`
.. toctree::
@@ -29,4 +29,3 @@ accounts, smart matching suggestions, etc.
accounting/taxation
accounting/reporting
accounting/others
accounting/fiscal_localizations

View File

@@ -1,11 +0,0 @@
:nosearch:
====================
Fiscal localizations
====================
.. toctree::
:titlesonly:
fiscal_localizations/overview
fiscal_localizations/localizations

View File

@@ -1,25 +0,0 @@
:nosearch:
=============
Localizations
=============
.. toctree::
:titlesonly:
localizations/argentina
localizations/australia
localizations/chile
localizations/colombia
localizations/colombia_ES
localizations/france
localizations/germany
localizations/indonesia
localizations/italy
localizations/italy_IT
localizations/luxembourg
localizations/mexico
localizations/netherlands
localizations/peru
localizations/spain
localizations/switzerland

View File

@@ -1,79 +0,0 @@
=====
Italy
=====
Allow the user to generate the EDI document for Italian invoicing.
This module allows the creation of the EDI documents and the communication with the SDICoop web
service of FatturaPA to send or receive invoices and notifications.
.. warning::
Once this module is installed, it's no longer possible to send invoices via :ref:`PEC mails
<italy/pec>`.
SDICoop
=======
Configuration
-------------
Setup the Codice Destinatario on FatturaPA
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To receive invoices and notifications from third parties, you need to inform the FatturaPA service
that Odoo is the allowed party to process files for you. To do so, you must setup Odoo's *Codice
Destinatario* on the FatturaPA portal. The *Codice Destinatario* is ``K95IV18``.
#. Go to https://ivaservizi.agenziaentrate.gov.it/portale/ and authenticate.
#. Go to section :menuselection:`Fatture e Corrispettivi`.
#. Set the user as Legal Party for the VAT number you wish to configure the electronic adress.
#. In :menuselection:`Servizi Disponibili --> Fatturazione Elettronica --> Registrazione
dellindirizzo telematico dove ricevere tutte le fatture elettroniche`, input Odoo's Codice
Destinatario (**K95IV18**), then confirm.
Give Odoo permission to process files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Since the files are transmitted through Odoo's server before being sent to SDICoop or received by
your database, you need to authorize Odoo to process your files from your database.
To do this, go to :menuselection:`Accounting --> Settings --> Electronic Invoicing` and click on
*Register*.
.. image:: italy/register.png
:align: center
:alt: Register button to allow Odoo to process invoices.
.. Note::
All your files are encrypted upon reception in such a way that only you are able to decrypt them.
Enable FatturaPA on the Sales journal
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Open your sales journal. Under the *Advanced Settings* tab, in the **Electronic invoicing** field,
check *FatturaPA* and *Save*.
.. image:: italy/journal.png
:align: center
:alt: FatturaPA feature in the sales journal's settings
Issue invoices
--------------
Send an invoice the way you would do it normally. The EDI process proceeds automatically.
.. image:: italy/sending.png
:align: center
:alt: Asynchronous sending on a customer invoice
You can check the current status of your customer invoice under the **Electronic invoicing** field.
.. image:: italy/processing.png
:align: center
:alt: Electronic invoicing status (waiting for confirmation)
Receive invoices
~~~~~~~~~~~~~~~~
This process is ran automatically once a day.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

View File

@@ -1,130 +0,0 @@
==========
Italy (IT)
==========
.. _italy/pec:
PEC mail
========
Questa guida spiegherà come utilizzare la fattura elettronica in Odoo e
come configurare correttamente i dati aziendali, i contatti e la
contabilità. Per testare la fattura elettronica i dati devono essere
reali e non inventati, altrimenti il sistema dellagenzia delle entrate
non riconoscerà linterscambio di informazioni.
Configurare le informazioni sulla tua Azienda
---------------------------------------------
Il passo successivo è la configurazione delle informazioni necessarie al
funzionamento della fatturazione elettronica. Si può accedere alla
schermata dallapplicazione Impostazioni: selezionare “Utenti e aziende”
e scegliere Aziende. Accedere quindi alle informazioni sulla Azienda per
cui si desidera configurare la fatturazione elettronica.
I dati necessari al funzionamento dello strumento di fatturazione
elettronica sono i seguenti:
- Server PEC. Le informazioni sul server utilizzato dal tuo indirizzo
di posta elettronica certificata sono fornite dal tuo fornitore o dal
Ministero. Lo stesso server deve essere configurato come server che
gestisce tutta la corrispondenza mail in Odoo, per saperne di più si
può consultare la relativa :doc:`guida </applications/general/email_communication/email_servers>`.
- Indirizzo PEC dellAzienda, tale indirizzo deve essere lo stesso
registrato presso lAgenzia delle Entrate per lutilizzo dei servizi
di fatturazione elettronica.
- Indirizzo PEC dellAgenzia delle Entrate. La mail sarà fornito al
momento della registrazione della tua PEC presso lAgenzia delle
Entrate, ricorda che lAgenzia delle Entrate potrebbe cambiare questo
indirizzo in seguito, previa comunicazione.
- Partita IVA e Codice Fiscale. Per far sì che la Fatturazione
Elettronica funzioni correttamente, questi campi devono essere
compilati correttamente.
- Regime Fiscale. Il regime fiscale a cui è sottoposta lAzienda deve
essere selezionato scegliendo dalla lista precompilata fornita da
Odoo. Chiedi al commercialista qual è il corretto regime fiscale!
- Numero di Iscrizione nel registro delle Imprese.
.. image:: italy_IT/italy_IT01.png
:align: center
Configurare le impostazioni per la Fatturazione Elettronica
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Numero di iscrizione nel registro Imprese tenuto presso la Camera di
Commercio.
- Rappresentate Fiscale. Questa opzione è dedicata ad aziende con sede
al di fuori del territorio nazionale ma conducenti attività
commerciali in Italia rilevanti ai fini dellIVA. È possibile
indicare in questo campo se lAzienda si avvale di un Rappresentate
Fiscale in Italia.
.. image:: italy_IT/italy_IT02.png
:align: center
Configurare il profilo dei clienti
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Per un corretto utilizzo dellapplicazione, il profilo di clienti e
fornitori, nellapplicazione contatti, deve essere configurato con le
necessarie informazioni legali.
Selezionando il nome del cliente e accedendo quindi ai suoi dati, si
trovano i seguenti campi che devono essere compilati: Indirizzo PEC,
Codice Fiscale e Indice PA *che deve contere i 6-7 caratteri
contenuti nellindice PA e necessari per la comunicazione tramite
fattura elettronica*.
.. image:: italy_IT/italy_IT03.png
:align: center
Il processo di fatturazione
---------------------------
Si può procedere ad emettere una fattura seguendo le indicazioni
dellapplicazione. Il momento che determina il formale invio della
fattura è il momento in cui viene selezionata lopzione “Valida”. La
fattura viene quindi inviata: lo stato della sua consegna verrà
notificato allutente tramite pop-up sulla parte iniziale della
schermata della fattura.
.. image:: italy_IT/italy_IT04.png
:align: center
.. image:: italy_IT/italy_IT05.png
:align: center
I messaggi che possono apparire sono i seguenti:
#. Fattura invitata. In attesa di accettazione
#. Invio fallito. Puoi modificare la fattura ed inviarla di nuovo
#. La fattura è stata correttamente inviata ed accettata dal
destinatario.
I vari stadi di spedizione e recezione della fattura sono visibili anche
dallelenco delle Fatture nella forma di icone, accanto alla colonna
“Stato” dallapplicazione contabilità.
*Icona Rossa*: Invio fallito
*Icona Gialla*: Fattura invitata. In attesa di accettazione
*Icona Verde*: Fattura inviata e accettata dal destinatario
Per inviare la fattura tramite PEC e generare il file XML, basterà
cliccare su invia. Il documento verrà poi mostrato tra gli allegati.
.. image:: italy_IT/italy_IT06.png
:align: center

View File

@@ -1,11 +0,0 @@
:nosearch:
========
Overview
========
.. toctree::
:titlesonly:
overview/fiscal_localization_packages
overview/localizations_list

View File

@@ -1,48 +0,0 @@
============================
Fiscal localization packages
============================
**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.
.. note::
Odoo continuously adds new localizations and improves the existing packages.
Configuration
=============
Odoo automatically installs the appropriate package for your company, according to the country
selected at the creation of the database.
.. important::
As long as you haven't posted any entry, you can still add and select another package.
To install a new package, go to :menuselection:`Accounting --> Configuration --> Fiscal
Localization`, click on **Install More Packages**, and install your country's module.
.. image:: fiscal_localization_packages/fiscal_localization_packages_modules.png
:align: center
:alt: Install the appropriate module as fiscal localization package in Odoo Accounting.
Once done, select your country's package, and click on *Save*.
.. image:: fiscal_localization_packages/fiscal_localization_packages_selection.png
:align: center
:alt: Select your country's fiscal localization package in Odoo Accounting.
Use
===
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.
Please refer to the documentation listed below for more information.
.. seealso::
- :doc:`localizations_list`
- :doc:`../../getting_started/initial_configuration/chart_of_accounts`
- :doc:`../../taxation/taxes/taxes`
.. todo:: update list of linked docs, and link with the future one about country-specific statements.

View File

@@ -1,85 +0,0 @@
===========================
List of supported countries
===========================
Odoo Accounting can be used in many countries out of the box by installing the appropriate module.
Here is a list of all :doc:`Fiscal Localization Packages <fiscal_localization_packages>` that are
available on Odoo.
.. image:: fiscal_localization_packages/fiscal_localization_packages_modules.png
:align: center
:alt: Odoo Accounting.
Fiscal localization packages available
======================================
- Algeria - Accounting
- Argentina - Accounting
- Australian - Accounting
- Austria - Accounting
- Belgium - Accounting
- Bolivia - Accounting
- Brazilian - Accounting
- Canada - Accounting
- Chile - Accounting
- China - Accounting
- Colombia - Accounting
- Costa Rica - Accounting
- Croatia - Accounting (RRIF 2012)
- Denmark - Accounting
- Dominican Republic - Accounting
- Ecuador - Accounting
- Ethiopia - Accounting
- Finnish Localization
- France - Accounting
- Generic - Accounting
- Germany
- Germany SKR03 - Accounting
- Germany SKR04 - Accounting
- Greece - Accounting
- Guatemala - Accounting
- Honduras - Accounting
- Hong Kong - Accounting
- Hungarian - Accounting
- Indian - Accounting
- Indonesian - Accounting
- Ireland - Accounting
- Israel - Accounting
- Italy - Accounting
- Japan - Accounting
- Lithuania - Accounting
- Luxembourg - Accounting
- Maroc - Accounting
- Mexico - Accounting
- Mongolia - Accounting
- Netherlands - Accounting
- New Zealand - Accounting
- Norway - Accounting
- OHADA - Accounting
- Panama - Accounting
- Peru - Accounting
- Poland - Accounting
- Portugal - Accounting
- Romania - Accounting
- Saudi Arabia - Accounting
- Singapore - Accounting
- Slovak - Accounting
- Slovenian - Accounting
- South Africa - Accounting
- Spain - Accounting (PGCE 2008)
- Swedish - Accounting
- Switzerland - Accounting
- Thailand - Accounting
- Turkey - Accounting
- U.A.E. - Accounting
- UK - Accounting
- Ukraine - Accounting
- United States - Accounting
- Uruguay - Accounting
- Venezuela - Accounting
- Vietnam - Accounting
.. seealso::
- :doc:`fiscal_localization_packages`

View File

@@ -8,6 +8,6 @@ Getting started
:titlesonly:
getting_started/main_concept
getting_started/memento
getting_started/cheat_sheet
getting_started/initial_configuration
getting_started/process_overview

View File

@@ -0,0 +1,253 @@
:code-column:
:custom-css: accounting.css
:custom-js: accounts.js,chart-of-accounts.js,entries.js,misc.js,reconciliation.js
======================
Accounting cheat sheet
======================
.. h:div:: intro-list
.. rst-class:: intro-balance
The **Balance Sheet** is a snapshot of the company's finances at a specific date (as opposed to
the Profit and Loss, which is an analysis over a period).
* .. rst-class:: intro-assets
**Assets** represent the company's wealth and the goods it owns. Fixed assets include buildings
and offices, while current assets include bank accounts and cash. The money owed by a client is
an asset. An employee is not an asset.
* .. rst-class:: intro-liabilities
**Liabilities** are obligations from past events that the company will have to pay in the
future (utility bills, debts, unpaid suppliers). Liabilities could also be defined as a source
of financing which is provided to the company, also called *leverage*.
* .. rst-class:: intro-equity
**Equity** is the amount of the funds contributed by the owners of the company (founders or
shareholders) plus previously retained earnings (or losses). Each year, net profits (or losses)
may be reported as retained earnings or distributed to the shareholders (as a dividend).
What is owned (an asset) has been financed through debts to reimburse (liabilities) or equity
(profits, capital).
A difference is made between **assets** and **expenses**:
- An **asset** is a resource with economic value that an individual, corporation, or country owns
or controls with the expectation that it will provide a future benefit. Assets are reported on
a company's balance sheet. They are bought or created to increase a firm's value or benefit its
operations.
- An **expense** is the costs of operations a company bears to generate revenues.
.. h:div:: intro-list
.. rst-class:: intro-p-l
The **profit and loss** (P&L) report shows the company's performance over a specific period of
time, usually a quarter or a fiscal year.
* .. rst-class:: intro-gross-profit
The **revenue** refers to the money earned by the company by selling goods and/or services.
* .. rst-class:: intro-gross-profit
The **cost of goods sold** (COGS, or also known as "Cost of Sale") refers to the sale of
goods' costs (e.g., the cost of the materials and labor used to create the goods).
* .. rst-class:: intro-gross-profit
The **Gross profit** equals the revenues from sales minus the cost of goods sold.
* .. rst-class:: intro-opex
**Operating expenses** (OPEX) include administration, sales and R&D salaries, rent and
utilities, miscellaneous costs, insurances, and anything beyond the costs of products sold
or the cost of sale.
.. h:div:: doc-aside accounts-table
.. placeholder
.. rst-class:: doc-aside
.. highlights:: Assets = Liabilities + Equity
Chart of accounts
=================
The **chart of accounts** lists all the company's accounts: both Balance sheet accounts and P&L
accounts. Every transaction is recorded by debiting and crediting multiple accounts in a journal
entry. In a way, a chart of accounts is like a company's DNA!
Every account listed in the chart of accounts belongs to a specific category. In Odoo, each account
has a unique code and belongs to one of these categories:
- **Equity and subordinated debts**
- **Equity** is the amount of money invested by a company's shareholders to finance the
company's activities.
- **Subordinated debts** are the amount of money lent by a third party to a company to finance
its activities. In the event of the dissolution of a company, these third parties are
reimbursed before the shareholders.
- **Fixed assets** are tangible (i.e., physical) items or properties that a company purchases and
uses to produce its goods and services. Fixed assets are long-term assets. This means the assets
have a useful life of more than one year. They also include properties, plants, and equipments
(also known as "PP&E") and are recorded on the balance sheet with that classification.
- **Current assets and liabilities**
- The **current assets** account is a balance sheet line item listed under the Assets section,
which accounts for all company-owned assets that can be converted to cash within one year.
Current assets include cash, cash equivalents, accounts receivable, stock inventory,
marketable securities, prepaid liabilities, and other liquid assets.
- **Current liabilities** are a company's short-term financial obligations due within one year.
An example of a current liability is money owed to suppliers in the form of accounts payable.
- **Bank and cash accounts**
- A **bank account** is a financial account maintained by a bank or other financial institution
in which the financial transactions between the bank and a customer are recorded.
- A **cash account**, or cash book, may refer to a ledger in which all cash transactions are
recorded. The cash account includes both the cash receipts and the cash payment journals.
- **Expenses and income**
- An **expense** is the costs of operations a company bears to generate revenues. It is simply
defined as the cost one is required to spend on obtaining something. Common expenses include
supplier payments, employee wages, factory leases, and equipment depreciation.
- The term "**income**" generally refers to the amount of money, property, and other transfers
of value received over a set period of time in exchange for services or products.
Example
-------
.. h:div:: example
\*: Customer Refund and Customer Payment boxes cannot be simultaneously selected as they are contradictory.
.. h:div:: doc-aside
.. highlights:: Balance = Debit - Credit
.. h:div:: chart-of-accounts
.. placeholder
Journal entries
===============
Every financial document of the company (e.g., an invoice, a bank statement, a pay slip, a capital
increase contract) is recorded as a journal entry, impacting several accounts.
For a journal entry to be balanced, the sum of all its debits must be equal to the sum of all its
credits.
.. h:div:: doc-aside journal-entries
examples of accounting entries for various transactions. (see entries.js)
.. _accounting/reconciliation:
Reconciliation
==============
:doc:`Reconciliation <../../accounting/bank/reconciliation/use_cases>` is the process of linking
journal items of a specific account and matching credits and debits.
Its primary purpose is to link payments to their related invoices to mark them as paid. This is done
by doing a reconciliation on the accounts receivable account and/or the accounts payable account.
Reconciliation is performed automatically by the system when:
- the payment is registered directly on the invoice
- the links between the payments and the invoices are detected at the bank matching process
.. h:div:: doc-aside reconciliation-example
.. rubric:: Customer Statement Example
.. rst-class:: table-sm d-c-table
+-------------------------+-------------------------+-----------------------+
|Accounts Receivable |Debit |Credit |
+=========================+=========================+=======================+
|Invoice 1 |100 | |
+-------------------------+-------------------------+-----------------------+
|Partial payment 1/2 | |70 |
+-------------------------+-------------------------+-----------------------+
|Invoice 2 |65 | |
+-------------------------+-------------------------+-----------------------+
|Partial payment 2/2 | |30 |
+-------------------------+-------------------------+-----------------------+
|Payment 2 | |65 |
+-------------------------+-------------------------+-----------------------+
|Invoice 3 |50 | |
+-------------------------+-------------------------+-----------------------+
| | | |
+-------------------------+-------------------------+-----------------------+
|Total to pay |50 | |
+-------------------------+-------------------------+-----------------------+
Bank Reconciliation
===================
Bank reconciliation is the matching of bank statement lines (provided by your bank) with
transactions recorded internally (payments to suppliers or from customers). For each line in a bank
statement, it can be:
- **matched with a previously recorded payment**: a payment is registered when a check is received
from a customer, then matched when checking the bank statement.
- **recorded as a new payment**: the payment's journal entry is created and reconciled with the
related invoice when processing the bank statement.
- **recorded as another transaction**: bank transfer, direct charge, etc.
Odoo should automatically reconcile most transactions; only a few should need manual review. When
the bank reconciliation process is finished, the balance on the bank account in Odoo should match
the bank statement's balance.
.. rst-class:: checks-handling
Checks Handling
===============
There are two approaches to managing checks and internal wire transfers:
- Two journal entries and a reconciliation
- One journal entry and a bank reconciliation
.. h:div:: doc-aside
The first journal entry is created by registering the payment on the
invoice. The second one is created when registering the bank statement.
.. rst-class:: table-sm d-c-table
+-------------------------+--------------+------------+---------------+
|Account |Debit |Credit |Reconciliation |
+=========================+==============+============+===============+
|Account Receivable | |100 |Invoice ABC |
+-------------------------+--------------+------------+---------------+
|Undeposited funds |100 | |Check 0123 |
+-------------------------+--------------+------------+---------------+
.. rst-class:: table-sm d-c-table
+-------------------------+--------------+------------+---------------+
|Account |Debit |Credit |Reconciliation |
+=========================+==============+============+===============+
|Undeposited funds | |100 |Check 0123 |
+-------------------------+--------------+------------+---------------+
|Bank |100 | | |
+-------------------------+--------------+------------+---------------+
.. h:div:: doc-aside
A journal entry is created by registering the payment on the invoice. When
reconciling the bank statement, the statement line is linked to the
existing journal entry.
.. rst-class:: table-sm d-c-table
+-------------------------+--------------+------------+---------------+---------------+
|Account |Debit |Credit |Reconciliation |Bank Statement |
+=========================+==============+============+===============+===============+
|Account Receivable | |100 |Invoice ABC | |
+-------------------------+--------------+------------+---------------+---------------+
|Bank |100 | | |Statement XYZ |
+-------------------------+--------------+------------+---------------+---------------+

View File

@@ -180,7 +180,8 @@ them unusable by using the **Deprecated** feature.
To do so, check the :guilabel:`Deprecated` box in the account's settings, and save.
.. seealso::
* :doc:`../cheat_sheet`
* :doc:`../../payables/supplier_bills/assets`
* :doc:`../../payables/supplier_bills/deferred_expenses`
* :doc:`../../receivables/customer_invoices/deferred_revenues`
* :doc:`../../fiscal_localizations/overview/fiscal_localization_packages`
* :doc:`../../../fiscal_localizations`

View File

@@ -12,9 +12,8 @@ The settings visible in the onboarding banner can still be modified later by goi
.. note::
Odoo Accounting automatically installs the appropriate **Fiscal Localization Package** for your
company, according to the country selected at the creation of the database. This way, the right
accounts, reports, and taxes are ready-to-go. :doc:`Click here
<../../fiscal_localizations/overview/fiscal_localization_packages>` for more information about
Fiscal Localization Packages.
accounts, reports, and taxes are ready-to-go. :ref:`Click here <fiscal_localizations/packages>`
for more information about Fiscal Localization Packages.
Accounting onboarding banner
============================
@@ -190,5 +189,5 @@ Send yourself a sample invoice by email to make sure everything is correctly con
* :doc:`../../bank/setup/bank_accounts`
* :doc:`chart_of_accounts`
* :doc:`../../bank/feeds/bank_synchronization`
* :doc:`../../fiscal_localizations/overview/fiscal_localization_packages`
* :doc:`../../../fiscal_localizations`
* `Odoo Tutorials: Accounting Basics <https://www.odoo.com/r/lsZ>`_

View File

@@ -14,7 +14,7 @@ entries are automatically balanced (sum of debits = sum of credits).
.. seealso::
- :doc:`Understand Odoo's accounting transactions per document
<memento>`
<cheat_sheet>`
Accrual and Cash Basis Methods
==============================

View File

@@ -1,249 +0,0 @@
:code-column:
:custom-css: accounting.css
:custom-js: accounts.js,chart-of-accounts.js,entries.js,misc.js,reconciliation.js
======================
Accounting cheat sheet
======================
.. h:div:: intro-list
.. rst-class:: intro-p-l
The **Profit and Loss** (P&L) report shows the performance of the company
over a specific period (usually the current year).
* .. rst-class:: intro-gross-profit
The **Gross Profit** equals the revenues from sales minus the cost of
goods sold.
* .. rst-class:: intro-opex
**Operating Expenses** (OPEX) include administration, sales and R&D
salaries as well as rent and utilities, miscellaneous costs, insurances,
… anything beyond the costs of products sold.
.. rst-class:: intro-balance
The **Balance Sheet** is a snapshot of the company's finances at a specific
date (as opposed to the Profit and Loss which is an analysis over a period)
* .. rst-class:: intro-assets
**Assets** represent the company's wealth, things it owns. Fixed assets
includes building and offices, current assets include bank accounts and
cash. A client owing money is an asset. An employee is not an asset.
* .. rst-class:: intro-liabilities
**Liabilities** are obligations from past events that the company will
have to pay in the future (utility bills, debts, unpaid suppliers).
* .. rst-class:: intro-equity
**Equity** is the amount of the funds contributed by the owners (founders
or shareholders) plus previously retained earnings (or losses).
.. rst-class:: intro-retained
Each year, net profits (or losses) are reported to retained earnings.
.. h:div:: doc-aside accounts-table
.. placeholder
What is owned (an asset) has been financed through debts to reimburse
(liabilities) or equity (profits, capital).
A difference is made between buying an assets (e.g. a building) and expenses
(e.g. fuel). Assets have an intrinsic value over time, versus expenses having
value in them being consumed for the company to "work".
.. rst-class:: doc-aside
.. highlights:: Assets = Liabilities + Equity
Chart of Accounts
=================
The **chart of accounts** lists all the accounts, whether they are balance
sheet accounts or P&L accounts. Every financial transaction (e.g. a payment, an
invoice) impacts accounts by moving value from one account (credit) to an other
account (debit).
.. h:div:: doc-aside
.. highlights:: Balance = Debit - Credit
.. h:div:: chart-of-accounts
.. placeholder
Journal Entries
===============
Every financial document of the company (e.g. an invoice, a bank statement, a
pay slip, a capital increase contract) is recorded as a journal entry,
impacting several accounts.
For a journal entry to be *balanced*, the sum of all its debits must be equal
to the sum of all its credits.
.. h:div:: doc-aside journal-entries
examples of accounting entries for various transactions. Example:
Example 1: Customer Invoice:
Explanation:
- You generate a revenue of $1,000
- You have a tax to pay of $90
- The customer owes $1,090
Configuration:
- Income: defined on the product, or the product category
- Account Receivable: defined on the customer
- Tax: defined on the tax set on the invoice line
The fiscal position used on the invoice may have a rule that
replaces the Income Account or the tax defined on the product by another
one.
Example 2: Customer Payment:
Explanation:
- Your customer owes $1,090 less
- Your receive $1,090 on your bank account
Configuration:
- Bank Account: defined on the related bank journal
- Account Receivable: defined on the customer
.. _accounting/reconciliation:
Reconciliation
==============
Reconciliation is the process of linking journal items of a specific account,
matching credits and debits.
Its primary purpose is to link payments to their related invoices in order to
mark invoices that are paid and clear the customer statement. This is done by
doing a reconciliation on the *Accounts Receivable* account.
An invoice is marked as paid when its Accounts Receivable journal items are
reconciled with the related payment journal items.
Reconciliation is performed automatically by the system when:
* the payment is registered directly on the invoice
* the links between the payments and the invoices are detected at the bank
matching process
.. h:div:: doc-aside reconciliation-example
.. rubric:: Customer Statement Example
.. rst-class:: table-sm d-c-table
+-------------------------+-------------------------+-----------------------+
|Accounts Receivable |Debit |Credit |
+=========================+=========================+=======================+
|Invoice 1 |100 | |
+-------------------------+-------------------------+-----------------------+
|Payment 1.1 | |70 |
+-------------------------+-------------------------+-----------------------+
|Invoice 2 |65 | |
+-------------------------+-------------------------+-----------------------+
|Payment 1.2 | |30 |
+-------------------------+-------------------------+-----------------------+
|Payment 2 | |65 |
+-------------------------+-------------------------+-----------------------+
|Invoice 3 |50 | |
+-------------------------+-------------------------+-----------------------+
| | | |
+-------------------------+-------------------------+-----------------------+
|Total To Pay |50 | |
+-------------------------+-------------------------+-----------------------+
Bank Reconciliation
===================
Bank reconciliation is the matching of bank statement lines (provided by your
bank) with transactions recorded internally (payments to suppliers or from
customers). For each line in a bank statement, it can be:
matched with a previously recorded payment:
a payment is registered when a check is received from a customer, then
matched when checking the bank statement
recorded as a new payment:
the payment's journal entry is created and :ref:`reconciled
<accounting/reconciliation>` with the related invoice when processing the
bank statement
recorded as another transaction:
bank transfer, direct charge, etc.
Odoo should automatically reconcile most transactions, only a few of them
should need manual review. When the bank reconciliation process is finished,
the balance on the bank account in Odoo should match the bank statement's
balance.
.. rst-class:: checks-handling
Checks Handling
===============
There are two approaches to manage checks and internal wire transfer:
* Two journal entries and a reconciliation
* One journal entry and a bank reconciliation
.. h:div:: doc-aside
The first journal entry is created by registering the payment on the
invoice. The second one is created when registering the bank statement.
.. rst-class:: table-sm d-c-table
+-------------------------+--------------+------------+---------------+
|Account |Debit |Credit |Reconciliation |
+=========================+==============+============+===============+
|Account Receivable | |100 |Invoice ABC |
+-------------------------+--------------+------------+---------------+
|Undeposited funds |100 | |Check 0123 |
+-------------------------+--------------+------------+---------------+
.. rst-class:: table-sm d-c-table
+-------------------------+--------------+------------+---------------+
|Account |Debit |Credit |Reconciliation |
+=========================+==============+============+===============+
|Undeposited funds | |100 |Check 0123 |
+-------------------------+--------------+------------+---------------+
|Bank |100 | | |
+-------------------------+--------------+------------+---------------+
.. h:div:: doc-aside
A journal entry is created by registering the payment on the invoice. When
reconciling the bank statement, the statement line is linked to the
existing journal entry.
.. rst-class:: table-sm d-c-table
+-------------------------+--------------+------------+---------------+---------------+
|Account |Debit |Credit |Reconciliation |Bank Statement |
+=========================+==============+============+===============+===============+
|Account Receivable | |100 |Invoice ABC | |
+-------------------------+--------------+------------+---------------+---------------+
|Bank |100 | | |Statement XYZ |
+-------------------------+--------------+------------+---------------+---------------+

View File

@@ -59,7 +59,7 @@ Repeat the operation to create the Cedric Digory employee. Don't forget
to specify its related user and **Timesheet Costs**.
Issue a Sales Order
--------------------
-------------------
We created two employees called Harry Potter and Cedric Diggory in the
**Employee** app. Both of them will work on a consultancy contract for our
@@ -148,7 +148,7 @@ We can thus filter this information from the **Analytic Entries**.
Enter the **Accounting** app, and click on :menuselection:`Adviser --> Analytic Entries`.
In this menu we have several options to analyse the human resource cost.
1. We filter on the **Analytic account** so we can see the cost and revenues
#. We filter on the **Analytic account** so we can see the cost and revenues
of the project. Add a custom **Filter** where the **Analytic Account**
contains the **Sales Order** number.
@@ -161,7 +161,7 @@ In this menu we have several options to analyse the human resource cost.
.. image:: timesheets/timesheets09.png
:align: center
2. We can group the different analytical accounts together and check
#. We can group the different analytical accounts together and check
their respective revenues. Simply group by **Analytic account** and
select the **Graph view** to have a clear overview.

View File

@@ -6,8 +6,8 @@ Odoo offers the possibility of grouping multiple bills' payments into one, facil
reconciliation process.
.. seealso::
- :doc:`../supplier_bills/manage`
- :doc:`../../bank/reconciliation/use_cases`
- :doc:`/applications/inventory_and_mrp/purchase/manage_deals/manage`
- :doc:`/applications/finance/accounting/bank/reconciliation/use_cases`
Group payments
==============
@@ -43,9 +43,11 @@ Partial group payments with cash discounts
------------------------------------------
In case of **partial group payments with cash discounts**, you can follow the steps found on the
:doc:`cash discount documentation page <../../receivables/customer_invoices/cash_discounts>`. Make
sure to apply the :doc:`payment terms <../../receivables/customer_invoices/payment_terms>` to the
**bills** *instead* of the invoices.
:doc:`cash discount documentation page
</applications/finance/accounting/receivables/customer_invoices/cash_discounts>`. Make sure to
apply the :doc:`payment terms
</applications/finance/accounting/receivables/customer_invoices/payment_terms>` to the **bills**
*instead* of the invoices.
.. seealso::
:doc:`../../receivables/customer_invoices/payment_terms`
:doc:`/applications/finance/accounting/receivables/customer_invoices/payment_terms`

View File

@@ -7,7 +7,6 @@ Vendor bills
.. toctree::
:titlesonly:
supplier_bills/manage
supplier_bills/purchase_receipts
supplier_bills/deferred_expenses
supplier_bills/assets

View File

@@ -48,7 +48,7 @@ Post an expense to the right account
------------------------------------
Select the account on a draft bill
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
On a draft bill, select the right account for all the products of which the expenses must be
deferred.
@@ -72,7 +72,7 @@ save.
`Automate the Deferred Expenses`_).
Change the account of a posted journal item
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To do so, open your Purchases Journal by going to :menuselection:`Accounting --> Accounting -->
Purchases`, select the journal item you want to modify, click on the account, and select the right

View File

@@ -41,5 +41,5 @@ needs, and click on *Post*.
:alt: Change the accounts used in the journal entry to record a purchase receipt.
.. seealso::
- :doc:`manage`
- :doc:`/applications/inventory_and_mrp/purchase/manage_deals/manage`
- :doc:`/applications/finance/expenses`

View File

@@ -1,6 +1,7 @@
========================
Credit notes and refunds
========================
A **credit note**, or **credit memo**, is a document issued
to a customer that notifies them that they have been credited
a certain amount.
@@ -18,6 +19,7 @@ There are several reasons that can lead to a credit note, such as:
Issue a Credit Note
===================
You can create a credit note from scratch by going to
:menuselection:`Accounting --> Customers --> Credit Notes`,
and by clicking on *Create*. Filling the Credit Notes form
@@ -42,6 +44,7 @@ You can choose between three options:
Partial Refund
--------------
Odoo creates a draft credit note already prefilled with all the
necessary information from the original invoice.
@@ -53,6 +56,7 @@ want to modify any detail on the credit note.
Full Refund
-----------
Odoo creates a credit note, automatically validates it, and
reconciles the original invoice with it.
@@ -64,6 +68,7 @@ a validated invoice.
Full refund and new draft invoice
---------------------------------
Odoo creates a credit note, automatically validates it, reconciles
the original invoice with it, and open a new draft invoice
prefilled with the same details from the original invoice.
@@ -72,6 +77,7 @@ This is the option to choose to modify the content of a validated invoice.
Record a Vendor Refund
======================
**Vendor Refunds** are recorded the same way you would do with invoices credit notes:
You can either create a credit note from scratch by going
@@ -81,6 +87,7 @@ and clicking on *Add Credit Note*.
Journal Entries
===============
Issuing a credit note from an invoice creates a **reverse entry**
that zeroes out the journal items generated by the original invoice.

View File

@@ -71,7 +71,7 @@ save.
`Automate the Deferred Revenues`_).
Change the account of a posted journal item
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To do so, open your Sales Journal by going to
:menuselection:`Accounting --> Accounting --> Sales`, select the journal item you

View File

@@ -39,7 +39,9 @@ Odoo supports, among others, the following formats.
- For Spanish companies
.. seealso::
- :doc:`../../fiscal_localizations/overview/fiscal_localization_packages`
:ref:`fiscal_localizations/packages`
.. _e-invoicing/configuration:
Configuration
=============

View File

@@ -1,6 +1,7 @@
============================
Add EPC QR Codes to invoices
============================
European Payments Council Quick Response Code,
or **EPC QR Code**, are two-dimensional barcodes
that customers can scan with their **mobile banking
@@ -18,6 +19,7 @@ make for payment issues.
Configuration
=============
Go to :menuselection:`Accounting --> Configuration --> Settings`
and activate the **SEPA QR Code** feature.
@@ -26,6 +28,7 @@ and activate the **SEPA QR Code** feature.
Configure your Bank Accounts journal
-------------------------------------
Make sure that your *Bank Account* is correctly configured
on Odoo with your IBAN and BIC.
@@ -38,6 +41,7 @@ To do so, go to :menuselection:`Accounting --> Configuration
Issue Invoices with EPC QR Codes
================================
EPC QR Codes are added automatically to your invoices, as
long as you issue them to customers that are located in a
country where this feature is available.

View File

@@ -60,9 +60,9 @@ grids that are used to record invoices or credit notes.
:alt: Configure taxes and their tax grids in Odoo Accounting
.. note::
Taxes and reports are usually already pre-configured in Odoo: a
:doc:`Fiscal Localization Package <../../fiscal_localizations/overview/fiscal_localization_packages>`
is installed according to the country you select at the creation of your database.
Taxes and reports are usually already pre-configured in Odoo: a :ref:`fiscal localization package
<fiscal_localizations/packages>` is installed according to the country you select at the creation
of your database.
Close a tax period
==================
@@ -109,4 +109,4 @@ report to the tax authorities, along with the amount you have to pay or be refun
.. seealso::
* :doc:`../../taxation/taxes/taxes`
* :doc:`../../getting_started/initial_configuration/setup`
* :doc:`../../fiscal_localizations/overview/fiscal_localization_packages`
* :doc:`../../../fiscal_localizations`

View File

@@ -43,7 +43,7 @@ configured:
Statement)
Add lines in your custom reports
=================================
================================
After you've created the report, you need to fill it with lines. They
all need a **name**, a **code** (that is used to refer to the line), a

View File

@@ -13,7 +13,7 @@ cash basis method, the tax you have to pay to the administration is due
for the 2nd quarter.
How to configure cash basis taxes ?
------------------------------------
-----------------------------------
You first have to activate the setting in
:menuselection:`Accounting --> Configuration --> Settings --> Allow Tax Cash Basis`.
@@ -42,7 +42,7 @@ to post the base tax amount for an accurate tax report.
:align: center
What is the impact of cash basis taxes in my accounting ?
----------------------------------------------------------
---------------------------------------------------------
Lets take an example. You make a sale of $100 with a 15% cash basis
tax. When you validate the customer invoice, the following entry is

View File

@@ -19,8 +19,8 @@ Configuration
=============
**Default Taxes** are automatically set up according to the country selected at the creation of your
database, or when you set up a :doc:`Fiscal Localization Package
<../../fiscal_localizations/overview/fiscal_localization_packages>` for your company.
database, or when you set up a :ref:`fiscal localization package <fiscal_localizations/packages>`
for your company.
To change your **Default Taxes**, go to :menuselection:`Accounting --> Configuration --> Settings
--> Taxes --> Default Taxes`, select the appropriate taxes for your default **Sales Tax** and
@@ -37,4 +37,4 @@ To change your **Default Taxes**, go to :menuselection:`Accounting --> Configura
- :doc:`taxes`
- :doc:`fiscal_positions`
- :doc:`../../fiscal_localizations/overview/fiscal_localization_packages`
- :doc:`../../../fiscal_localizations`

View File

@@ -20,8 +20,8 @@ They can be applied in various ways:
- :ref:`assigned to a partner, on its contact form <fiscal_positions/transaction>`
.. note::
A few Fiscal Positions are already preconfigured on your database, as part of your :doc:`Fiscal
Localization Package <../../fiscal_localizations/overview/fiscal_localization_packages>`.
A few Fiscal Positions are already preconfigured on your database, as part of your :ref:`fiscal
localization package <fiscal_localizations/packages>`.
Configuration
=============
@@ -81,7 +81,7 @@ Application
.. _fiscal_positions/partner:
Assign a Fiscal Position to a partner
--------------------------------------
-------------------------------------
You can manually define which Fiscal Position must be used by default for a specific partner.

View File

@@ -11,10 +11,9 @@ supports all kinds of uses and computations.
Activate Sales Taxes from the List view
=======================================
As part of your :doc:`Fiscal Localization Package
<../../fiscal_localizations/overview/fiscal_localization_packages>`, most of your country's sales
taxes are already preconfigured on your database. However, only a few of them are activated by
default, so that you can activate only the ones relevant for your business.
As part of your :ref:`fiscal localization package <fiscal_localizations/packages>`, most of your
country's sales taxes are already preconfigured on your database. However, only a few of them are
activated by default, so that you can activate only the ones relevant for your business.
To activate Sale Taxes, go to :menuselection:`Accounting --> Configuration --> Taxes` and use the
*Activate* toggle button to activate or deactivate a tax.

View File

@@ -0,0 +1,148 @@
:show-content:
====================
Fiscal localizations
====================
.. _fiscal_localizations/packages:
Fiscal localization packages
============================
**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.
.. note::
Odoo continuously adds new localizations and improves the existing packages.
Configuration
-------------
Odoo automatically installs the appropriate package for your company, according to the country
selected at the creation of the database.
.. important::
As long as you haven't posted any entry, you can still add and select another package.
To install a new package, go to :menuselection:`Accounting --> Configuration --> Fiscal
Localization`, click on **Install More Packages**, and install your country's module.
.. image:: fiscal_localizations/packages_modules.png
:align: center
:alt: Install the appropriate module as fiscal localization package in Odoo Accounting.
Once done, select your country's package, and click on *Save*.
.. image:: fiscal_localizations/packages_selection.png
:align: center
:alt: Select your country's fiscal localization package in Odoo Accounting.
Use
---
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.
.. seealso::
- :doc:`accounting/getting_started/initial_configuration/chart_of_accounts`
- :doc:`accounting/taxation/taxes/taxes`
.. _fiscal_localizations/countries-list:
List of supported 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.
- Algeria - Accounting
- :doc:`Argentina - Accounting <fiscal_localizations/argentina>`
- :doc:`Australian - Accounting <fiscal_localizations/australia>`
- Austria - Accounting
- Belgium - Accounting
- Bolivia - Accounting
- Brazilian - Accounting
- Canada - Accounting
- :doc:`Chile - Accounting <fiscal_localizations/chile>`
- China - Accounting
- :doc:`Colombia - Accounting <fiscal_localizations/colombia>` (:doc:`doc in Spanish
<fiscal_localizations/colombia_ES>`)
- Costa Rica - Accounting
- Croatia - Accounting (RRIF 2012)
- Denmark - Accounting
- Dominican Republic - Accounting
- Ecuador - Accounting
- Ethiopia - Accounting
- Finnish Localization
- :doc:`France - Accounting <fiscal_localizations/france>`
- Generic - Accounting
- :doc:`Germany <fiscal_localizations/germany>`
- Germany SKR03 - Accounting
- Germany SKR04 - Accounting
- Greece - Accounting
- Guatemala - Accounting
- Honduras - Accounting
- Hong Kong - Accounting
- Hungarian - Accounting
- Indian - Accounting
- :doc:`Indonesian - Accounting <fiscal_localizations/indonesia>`
- Ireland - Accounting
- Israel - Accounting
- :doc:`Italy - Accounting <fiscal_localizations/italy>`
- Japan - Accounting
- Lithuania - Accounting
- :doc:`Luxembourg - Accounting <fiscal_localizations/luxembourg>`
- Maroc - Accounting
- :doc:`Mexico - Accounting <fiscal_localizations/mexico>`
- Mongolia - Accounting
- :doc:`Netherlands - Accounting <fiscal_localizations/netherlands>`
- New Zealand - Accounting
- Norway - Accounting
- OHADA - Accounting
- Panama - Accounting
- :doc:`Peru - Accounting <fiscal_localizations/peru>`
- Poland - Accounting
- Portugal - Accounting
- Romania - Accounting
- Saudi Arabia - Accounting
- Singapore - Accounting
- Slovak - Accounting
- Slovenian - Accounting
- South Africa - Accounting
- :doc:`Spain - Accounting (PGCE 2008) <fiscal_localizations/spain>`
- Swedish - Accounting
- :doc:`Switzerland - Accounting <fiscal_localizations/switzerland>`
- Thailand - Accounting
- Turkey - Accounting
- U.A.E. - Accounting
- :doc:`UK - Accounting <fiscal_localizations/united_kingdom>`
- Ukraine - Accounting
- United States - Accounting
- Uruguay - Accounting
- Venezuela - Accounting
- Vietnam - Accounting
.. toctree::
:titlesonly:
fiscal_localizations/argentina
fiscal_localizations/australia
fiscal_localizations/chile
fiscal_localizations/colombia
fiscal_localizations/colombia_ES
fiscal_localizations/france
fiscal_localizations/germany
fiscal_localizations/indonesia
fiscal_localizations/italy
fiscal_localizations/luxembourg
fiscal_localizations/mexico
fiscal_localizations/netherlands
fiscal_localizations/peru
fiscal_localizations/spain
fiscal_localizations/switzerland
fiscal_localizations/united_kingdom

View File

@@ -87,6 +87,7 @@ Go to :menuselection:`Accounting --> Settings --> Argentinian Localization` to s
AFIP Certificates
*****************
The electronic invoice and other afip services work with WebServices (WS) provided by the AFIP.
In order to enable communication with the AFIP, the first step is to request a Digital Certificate
@@ -245,6 +246,7 @@ defines as well:
Web Services
************
- ``wsfev1: Electronic Invoice.`` This is the most common service,
is used to generated invoices for document types A, B, C, M with no detail per item.
- ``wsbfev1: Electronic Fiscal Bond.`` For those who invoice capital goods and wish
@@ -274,6 +276,7 @@ with the same letter will share the same sequence. For example:
Sequences
~~~~~~~~~
In case that you want to synchronize the next number in the sequence in Odoo based on the next
number in the AFIP POS, the next button that is visible under :ref:`developer mode <developer-mode>`
can be used:
@@ -282,9 +285,9 @@ can be used:
:align: center
.. note::
When creating the Purchase journals, it's possible to define if they can be related to document
types or not. In case that the option to use documents is selected, there is no need to manually
associate the document type sequences as the document number is provided by the vendor.
When creating the Purchase journals, it's possible to define if they can be related to document
types or not. In case that the option to use documents is selected, there is no need to manually
associate the document type sequences as the document number is provided by the vendor.
Usage and testing
@@ -323,9 +326,9 @@ given by the document type.
The most common document type will be defined automatically for the different combinations of AFIP
responsibility type but it can be updated manually by the user.
Electronic Invoice elements
~~~~~~~~~~~~~~~~~~~~~~~~~~~
When using electronic invoice, if all the information is correct the Invoice is posted in the
standard way, in case that something needs to be addressed (check the section common errors for more
detail), an error message is raised indicating the issue/proposed solution and the invoice remains
@@ -371,12 +374,12 @@ Responsibility types:
.. image:: argentina/argentina15.png
:align: center
Special Use Cases
~~~~~~~~~~~~~~~~~
Invoices for Services
*********************
For electronic invoices that include Services, the AFIP requires to report the service starting
and ending date, this information can be filled in the tab “Other Info”:
@@ -386,12 +389,12 @@ and ending date, this information can be filled in the tab “Other Info”:
If the dates are not selected manually before the invoice is validated, the values will be
filled automatically considering the beginning and day of the invoice month:
.. image:: argentina/argentina_edi_07.png
:align: center
Exportation Invoices
********************
The invoices related to Exportation transactions required a Journal that used the AFIP POS
System “Expo Voucher - Web Service” so the proper document type be associated:
@@ -416,9 +419,9 @@ Proveedor del Exterior” or “IVA Liberado Ley Nº 19.640”, Odoo automat
.. image:: argentina/argentina_edi_13.png
:align: center
Fiscal Bond
***********
The Electronic Fiscal bond is used for those who invoice capital goods and wish to access
the benefit of the Electronic Tax Bonds granted by the Ministry of Economy.
@@ -437,7 +440,6 @@ For these transactions its important to have into consideration the next requ
- Bonus.
- VAT rate.
Electronic Credit Invoice MiPyme (FCE)
**************************************
@@ -484,6 +486,7 @@ In the workflow we can have two scenarios:
Invoice printed report
~~~~~~~~~~~~~~~~~~~~~~
The PDF report related to electronic invoices that have been validated by the AFIP includes
a barcode at the bottom of the format which represent the CAE number, the Expiration Date is
also displayed as its legal requirement:
@@ -491,9 +494,9 @@ also displayed as its legal requirement:
.. image:: argentina/argentina_edi_14.png
:align: center
Troubleshooting and Auditing
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
For auditing and troubleshooting purposes you can get the detailed information of an
invoice number that has been previously sent to the AFIP,
@@ -503,14 +506,12 @@ invoice number that has been previously sent to the AFIP,
.. image:: argentina/argentina_edi_24.png
:align: center
You can also get the last number used in AFIP for a specific Document Type and POS Number
as support for any possible issues on the sequence synchronization between Odoo and AFIP.
.. image:: argentina/argentina_edi_22.png
:align: center
Vendor Bills
------------
@@ -531,9 +532,9 @@ expected.
The vendor bill number is structured in the same way that the invoices with the difference
that the document sequence is input by the user: “Document Prefix - Letter - Document number".
Validate Vendor Bill number in AFIP
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
As most companies have internal controls to verify that the vendor bill is related to an AFIP
valid document, an automatic validation can be set in :menuselection:`Accounting --> Settings -->
Argentinian Localization --> Validate document in the AFIP`, considering the following levels:
@@ -549,6 +550,7 @@ Argentinian Localization --> Validate document in the AFIP`, considering the fol
How to use it in Odoo
*********************
This tool incorporates in the vendor bill a new "Verify on AFIP" button located
next to the AFIP Authorization code.
@@ -561,11 +563,12 @@ displayed and the details of the validation will be added to the chatter.
.. image:: argentina/argentina_edi_18.png
:align: center
Special Use cases
~~~~~~~~~~~~~~~~~
Untaxed Concepts
****************
There are some transactions that include items that are not part of the VAT base amount,
this is commonly used in fuel and gasoline invoices.
@@ -577,6 +580,7 @@ base amount and an additional item to register the amount of the Exempt concept
Perception Taxes
****************
The vendor bill will be registered using 1 item for each product that is part of the
VAT base amount, the perception tax can be added in any of the product lines, as result
we will have one tax group for the VAT and one for the perception, the perception default
@@ -593,7 +597,6 @@ and set the correct amount.
After this is done the invoice can be validated.
Reports
=======

Some files were not shown because too many files have changed in this diff Show More