diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 000000000..6feb9c740 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,3 @@ +# All changes to legal material have to be approved +/legal/ @odoo/legal +/legal.rst @odoo/legal diff --git a/_static/banners/events.png b/_static/banners/events.png index 1a69da3e3..9b21d271e 100644 Binary files a/_static/banners/events.png and b/_static/banners/events.png differ diff --git a/_static/banners/project.png b/_static/banners/project.png index 912bf126f..7db5de16b 100644 Binary files a/_static/banners/project.png and b/_static/banners/project.png differ diff --git a/_static/banners/timesheets.png b/_static/banners/timesheets.png new file mode 100644 index 000000000..c57790ff4 Binary files /dev/null and b/_static/banners/timesheets.png differ diff --git a/accounting.rst b/accounting.rst index 20236b480..7045767c9 100644 --- a/accounting.rst +++ b/accounting.rst @@ -1,8 +1,8 @@ :banner: banners/accounting.png -========== -Accounting -========== +======================== +Invoicing and Accounting +======================== .. toctree:: :titlesonly: @@ -12,6 +12,6 @@ Accounting accounting/payables accounting/bank accounting/fiscality + accounting/reporting accounting/others - accounting/localizations - + accounting/fiscal_localizations \ No newline at end of file diff --git a/accounting/bank/feeds/ponto.rst b/accounting/bank/feeds/ponto.rst index 52609b6dd..9038e54ba 100644 --- a/accounting/bank/feeds/ponto.rst +++ b/accounting/bank/feeds/ponto.rst @@ -12,7 +12,7 @@ continuously expanding the number of bank institutions that can be synchronized **Odoo Accounting** can synchronize directly with your bank to get all bank statements imported automatically into your database. This allows for easier **bank reconciliation**. When :doc:`adding -a bank account on Odoo <../setup/create_bank_account>`, you can see if your bank requires a +a bank account on Odoo <../setup/bank_accounts>`, you can see if your bank requires a connection through Ponto by searching for your bank institution, and clicking on it. .. image:: media/ponto_add_bank.png @@ -112,5 +112,5 @@ token instead of the current synchronization system with a *Client ID* and a *Se .. seealso:: * :doc:`bank_synchronization` - * :doc:`../setup/create_bank_account` + * :doc:`../setup/bank_accounts` * :doc:`bank_statements` diff --git a/accounting/bank/reconciliation.rst b/accounting/bank/reconciliation.rst index 815b1f8c9..a9bede21e 100644 --- a/accounting/bank/reconciliation.rst +++ b/accounting/bank/reconciliation.rst @@ -6,4 +6,4 @@ Bank Reconciliation :titlesonly: reconciliation/use_cases - reconciliation/configure + reconciliation/reconciliation_models \ No newline at end of file diff --git a/accounting/bank/reconciliation/configure.rst b/accounting/bank/reconciliation/configure.rst deleted file mode 100644 index 9294801a9..000000000 --- a/accounting/bank/reconciliation/configure.rst +++ /dev/null @@ -1,63 +0,0 @@ -========================== -Configure model of entries -========================== - -Overview -======== - -In Odoo you have the possibility to pre-fill some accounting entries in -order to easily reconcile recurrent entries such as bank fees. - -We will take the following example to illustrate the concept : Every -month my company receives a bank fee cost, which depends of our bank -account current balance. This fee is thus variable. - -Create Reconciliation Models -============================ - -First, we need to configure two model reconciliation entries. To do so, -go to the accounting application dashboard. On your bank journal, click -on :menuselection:`More --> Reconciliation Models`. - -.. image:: media/configure01.png - :align: center - -We want to be able to book our bank fees easily. Our bank deducts fees -depending on our balance, meaning that it can vary every month. - -We create a button Label called Bank fees, select the correct account to -book those fees. Moreover we also need to specify that the amount type -is "Percentage of balance" with an Amount of 100%. This parameter will -tell Odoo to take the entire fee into account. - -.. image:: media/configure02.png - :align: center - -Save your changes when you are done. - -.. note:: - If the amount of your bank fee is fixed, you can as well select **Fixed** - under amount type and specify the amount in the amount tap. - -.. seealso:: - You can also use this functionality to handle discounts. Please refer to - :doc:`../../receivables/customer_invoices/cash_discounts` - -Register your payments based on a reconciliation model -====================================================== - -Register your payment by importing your bank statements that will be -impacted by the payment of the bank fee. - -When doing the reconciliation, you can select an open balance and click -the **Reconciliation Model** button (in this case, **Bank Fees**) to get all -the relevant data instantly. - -.. image:: media/configure03.png - :align: center - -Finally, click on **Reconcile** to finish the process. - -.. seealso:: - * :doc:`../feeds/bank_synchronization` - * :doc:`use_cases` diff --git a/accounting/bank/reconciliation/media/configure01.png b/accounting/bank/reconciliation/media/configure01.png deleted file mode 100644 index 7a4b2ad74..000000000 Binary files a/accounting/bank/reconciliation/media/configure01.png and /dev/null differ diff --git a/accounting/bank/reconciliation/media/configure02.png b/accounting/bank/reconciliation/media/configure02.png deleted file mode 100644 index dcb073037..000000000 Binary files a/accounting/bank/reconciliation/media/configure02.png and /dev/null differ diff --git a/accounting/bank/reconciliation/media/configure03.png b/accounting/bank/reconciliation/media/configure03.png deleted file mode 100644 index c87676b97..000000000 Binary files a/accounting/bank/reconciliation/media/configure03.png and /dev/null differ diff --git a/accounting/bank/reconciliation/media/reconciliation_models_button.png b/accounting/bank/reconciliation/media/reconciliation_models_button.png new file mode 100644 index 000000000..47c2d4e8b Binary files /dev/null and b/accounting/bank/reconciliation/media/reconciliation_models_button.png differ diff --git a/accounting/bank/reconciliation/media/reconciliation_models_conditions.png b/accounting/bank/reconciliation/media/reconciliation_models_conditions.png new file mode 100644 index 000000000..a2817817f Binary files /dev/null and b/accounting/bank/reconciliation/media/reconciliation_models_conditions.png differ diff --git a/accounting/bank/reconciliation/media/reconciliation_models_counterparts.png b/accounting/bank/reconciliation/media/reconciliation_models_counterparts.png new file mode 100644 index 000000000..b042825f7 Binary files /dev/null and b/accounting/bank/reconciliation/media/reconciliation_models_counterparts.png differ diff --git a/accounting/bank/reconciliation/media/reconciliation_models_match.png b/accounting/bank/reconciliation/media/reconciliation_models_match.png new file mode 100644 index 000000000..979c1f6f7 Binary files /dev/null and b/accounting/bank/reconciliation/media/reconciliation_models_match.png differ diff --git a/accounting/bank/reconciliation/media/reconciliation_models_overview.png b/accounting/bank/reconciliation/media/reconciliation_models_overview.png new file mode 100644 index 000000000..48dc15307 Binary files /dev/null and b/accounting/bank/reconciliation/media/reconciliation_models_overview.png differ diff --git a/accounting/bank/reconciliation/media/reconciliation_models_suggestion.png b/accounting/bank/reconciliation/media/reconciliation_models_suggestion.png new file mode 100644 index 000000000..badc7a5b3 Binary files /dev/null and b/accounting/bank/reconciliation/media/reconciliation_models_suggestion.png differ diff --git a/accounting/bank/reconciliation/reconciliation_models.rst b/accounting/bank/reconciliation/reconciliation_models.rst new file mode 100644 index 000000000..39952cc94 --- /dev/null +++ b/accounting/bank/reconciliation/reconciliation_models.rst @@ -0,0 +1,129 @@ +===================== +Reconciliation Models +===================== + +Once the bank statements are correctly imported, it is essential to *reconcile* the records properly +and ensure all *Journal Entries* are balanced and in agreement. To ease and speed up the +reconciliation process, you can configure **Reconciliation Models**, which are particularly useful +with recurrent entries such as bank fees. + +.. todo:: Add a link to the Reconciliation process in the paragraph above, once the doc will have + been updated. + +.. note:: + Reconciliation Models are also useful to handle *Cash Discounts*. Please refer to + :doc:`this documentation <../../receivables/customer_invoices/cash_discounts>` for more + information. + +.. _reconciliation_models_types: + +Types of Reconciliation Models +============================== + +There are three types of Reconciliation Models: + +#. :ref:`Write-off Button ` +#. :ref:`Suggestion of counterpart values ` +#. :ref:`Match existing invoices/bills ` + +.. _reconciliation_models_button: + +Manually create a write-off on clicked button +--------------------------------------------- + +When you are reconciling an entry with an *Open Balance*, you can use the buttons available under +the *Manual Operations* tab to pre-fill all the values automatically, before validating the +reconciliation. Each button is a different Reconciliation Model. + +.. image:: media/reconciliation_models_button.png + :align: center + :alt: Example of a Reconciliation Model with a write-off button in Odoo Accounting + +.. _reconciliation_models_suggestion: + +Suggest counterpart values +-------------------------- + +This type of Reconciliation Model suggests immediately counterpart values that only need to be +validated. This automation is based on a set of rules defined in the reconciliation model. + +.. image:: media/reconciliation_models_suggestion.png + :align: center + :alt: Example of a Reconciliation Model that suggests counterpart values in Odoo Accounting + +.. _reconciliation_models_match: + +Match existing invoices/bills +----------------------------- + +This type of Reconciliation Model automatically selects the right Customer Invoice or Vendor Bill +that matches the payment. All that is left to do is to validate the entry. This automation is based +on a set of rules defined in the reconciliation model. + +.. image:: media/reconciliation_models_match.png + :align: center + :alt: Example of a Reconciliation Model that matches existing invoices and bills automatically + in Odoo Accounting + +Configuration +============= + +To manage or create new **Reconciliation Models**, go to :menuselection:`Accounting --> +Reconciliation --> Reconciliation Models`. Alternatively, you can also open this menu from the +Accounting Overview, by going to your Bank Journal card, clicking on the three little dots, and then +on *Reconciliation Models*. + +.. image:: media/reconciliation_models_overview.png + :align: center + :alt: Open the Reconciliation Model menu from the overview dashboard in Odoo Accounting + +.. important:: + The first entry, named *Invoices Matching Rule*, is the one responsible for the current matching + of invoices and bills. Therefore, it is advised to leave it at the top of the list and not to + delete it. + +Open the model you want to modify, or click on *Create* to create a new one, then fill out the form. + +Type +---- + +See :ref:`above ` for an explanation about the different types of +Reconciliation Models. + +.. note:: + If the *Documents* application is installed on your database, an additional **Activity type** + field appears when *To check* is ticked. Selecting the value *Reconciliation request* implies + that, whenever you use this model, a *Request Document* window pops up to request a document from + a user. + +Conditions on Bank Statement Line +--------------------------------- + +Define here all the conditions that are required for a Reconciliation Model to be applied. + +.. important:: + If a record matches with several Reconciliation Models, the first one in the *sequence* of models + will be applied. The sequence is simply the order of the models in the *list view*. They can be + rearranged by dragging-and-dropping the handle next to the name. + +.. image:: media/reconciliation_models_conditions.png + :align: center + :alt: Conditions for the Reconciliation Model to be applied in Odoo Accounting + +Counterpart Values +------------------ + +This section comprises the values that are applied by the Reconciliation Model. + +If the value to reconcile needs to be written-off in two separate accounts, click on *Add a second +line*. + +.. image:: media/reconciliation_models_counterparts.png + :align: center + :alt: Counterparts values of a Reconciliation Model in Odoo Accounting + +.. seealso:: + + - :doc:`use_cases` + - :doc:`../feeds/bank_synchronization` + - :doc:`../../receivables/customer_invoices/cash_discounts` \ No newline at end of file diff --git a/accounting/bank/setup.rst b/accounting/bank/setup.rst index 6b2c7f197..b66009c5f 100644 --- a/accounting/bank/setup.rst +++ b/accounting/bank/setup.rst @@ -5,6 +5,6 @@ Setup .. toctree:: :titlesonly: - setup/create_bank_account + setup/bank_accounts setup/manage_cash_register setup/foreign_currency diff --git a/accounting/bank/setup/bank_accounts.rst b/accounting/bank/setup/bank_accounts.rst new file mode 100644 index 000000000..608cea198 --- /dev/null +++ b/accounting/bank/setup/bank_accounts.rst @@ -0,0 +1,95 @@ +============= +Bank Accounts +============= + +You can manage as many **Bank Accounts** as needed on your database. Configuring them well allows +you to make sure that all your banking data is up to date and ready for the reconciliation with your +*Journal Entries*. + +In Odoo Accounting, each Bank Account is configured to have a dedicated *Journal* which is +configured to post all entries in a dedicated *Account*. + +.. note:: Whenever you add a Bank Account, a dedicated journal and a dedicated account are + automatically created and configured. + +Every **Bank Journal** is displayed by default on the **Accounting Overview** in the form of a +convenient card. It includes action buttons that are displayed when appropriate. + +.. image:: media/bank_accounts_card.png + :align: center + :alt: Bank Journals Cards are displayed on the Accounting Overview in Odoo Accounting + +.. _bank_accounts_add: + +Add a new Bank Account +====================== + +You can either connect your bank account to your Odoo database, or configure your bank account +manually and :doc:`upload the bank statements manually <../feeds/bank_statements>`. + +Bank Synchronization +-------------------- + +Connect your bank account to your database and have your bank statements synced automatically. + +To synchronize a new bank account, go to :menuselection:`Accounting --> Configuration`, click on +*Add a Bank Account*, then find your bank in the list, click on *Connect*, and follow the +instructions on-screen. + +.. note:: + :doc:`Click here <../../bank/feeds/bank_synchronization>` for more information about this bank + synchronization. + +.. image:: media/bank_accounts_connect.png + :align: center + :alt: Select a bank institution in the list and connect it to Odoo Accounting + +Manual configuration +-------------------- + +If your Bank Institution can’t be synchronized automatically, or if you prefer not to sync it with +your database, you may also configure your bank account manually. + +To add a new bank account manually, go to :menuselection:`Accounting --> Configuration`, click on +*Add a Bank Account*, then on *Create it*, and fill out the form. + +- **Name**: the bank account's name, as displayed on Odoo. +- **Account Number**: your bank account number (IBAN in Europe). +- **Bank**: click on *Create and Edit* to configure the bank's details. Add the bank institution's + name and its Identifier Code (BIC or SWIFT). +- **Code**: this code is your Journal's *Short Code*, as displayed on Odoo. By default, Odoo creates + a new Journal with this Short Code. +- **Journal**: This field is displayed if you have an existing Bank Journal that is not linked yet + to a bank account. If so, then select the *Journal* you want to use to record the financial + transactions linked to this bank account or create a new one by clicking on *Create and Edit*. + +.. note:: + Odoo detects the bank account type (e.g., IBAN) and enables some features accordingly. + +.. image:: media/bank_accounts_manual.png + :align: center + :alt: Add manually a new bank account in Odoo Accounting +.. _bank_accounts_configuration: + +Advanced configuration +====================== + +To edit an existing bank account, go to :menuselection:`Accounting --> Configuration --> Bank +Accounts`, and open the bank account you want to modify. + +If you need to edit the bank account details, go to the *Bank Account* field and click on the +*External Link* button next to the list arrow. There, you can edit the bank account's number, +Account Holder, Account Holder Name, and your Bank Institution's details by clicking on the +*External Link* next to the *Bank* field. These details are used to register some payments. + +You can configure which types of payments are enabled in the **Payment Method Types** section and +how the bank statements are recorded and posted in the **Bank Statements** section. + +.. image:: media/bank_accounts_configuration.png + :align: center + :alt: Advanced configuration of a bank account in Odoo Accounting + +.. seealso:: + * :doc:`../../bank/feeds/bank_synchronization` + * :doc:`../feeds/bank_statements` + * `Odoo Learn: Accounting Basics `_ \ No newline at end of file diff --git a/accounting/bank/setup/create_bank_account.rst b/accounting/bank/setup/create_bank_account.rst deleted file mode 100644 index 90a816b24..000000000 --- a/accounting/bank/setup/create_bank_account.rst +++ /dev/null @@ -1,63 +0,0 @@ -======================== -Setup a new bank account -======================== - -In Odoo, you can manage multiple bank accounts. In this page, you will -be guided in the creation, modification or deletion of a bank or a -credit card account. - -Edit a bank account --------------------- - -To ease the process, a bank account is already there. We suggest you to -edit it first before filling your own bank information. - -Go to :menuselection:`Accounting --> Configuration --> Bank -Accounts` and click on the **Bank** item. Edit it. - -.. image:: media/image04.png - :align: center - -.. note:: - - Odoo will detect the bank account type (e.g. IBAN) to allow some payment - method like SEPA - - -Create a bank account ---------------------- - -Go to :menuselection:`Accounting --> Configuration --> Bank -Accounts`. Click on **create** and fill in the form. You can -decide to show the bank account number in you intend to send documents -like sales orders or invoices. Select the payments methods you -support with this bank account. - -.. image:: media/image06.png - :align: center - -.. note:: - - If you are working in a multi-company environnement, you'll have to switch - the company on your user preferences in order to add, edit or delete bank - accounts from another company. - -.. todo:: add inherited field tooltip - - **Display on reports :** Display this bank account on the documents that - will be printed or send to the customers - - **Bank Identifier Code** = BIC : SWIFT Address assigned to a bank in - order to send automated payments quickly and accurately to the banks - concerned - -The initial balance of a bank statement will be set to the closing balance of the previous one within the same journal automatically. - -Delete a bank account or credit card account --------------------------------------------- - -From the list of bank accounts, select items to delete and delete them from the action menu or go to the form and delete a single item from the action menu - -.. |image5| image:: media/image05.png - :class: btn-group - diff --git a/accounting/bank/setup/media/bank_accounts_card.png b/accounting/bank/setup/media/bank_accounts_card.png new file mode 100644 index 000000000..c9b3416b5 Binary files /dev/null and b/accounting/bank/setup/media/bank_accounts_card.png differ diff --git a/accounting/bank/setup/media/bank_accounts_configuration.png b/accounting/bank/setup/media/bank_accounts_configuration.png new file mode 100644 index 000000000..82096dc89 Binary files /dev/null and b/accounting/bank/setup/media/bank_accounts_configuration.png differ diff --git a/accounting/bank/setup/media/bank_accounts_connect.png b/accounting/bank/setup/media/bank_accounts_connect.png new file mode 100644 index 000000000..89f117cc6 Binary files /dev/null and b/accounting/bank/setup/media/bank_accounts_connect.png differ diff --git a/accounting/bank/setup/media/bank_accounts_manual.png b/accounting/bank/setup/media/bank_accounts_manual.png new file mode 100644 index 000000000..93a366be1 Binary files /dev/null and b/accounting/bank/setup/media/bank_accounts_manual.png differ diff --git a/accounting/bank/setup/media/image04.png b/accounting/bank/setup/media/image04.png deleted file mode 100644 index d89935511..000000000 Binary files a/accounting/bank/setup/media/image04.png and /dev/null differ diff --git a/accounting/bank/setup/media/image05.png b/accounting/bank/setup/media/image05.png deleted file mode 100644 index 287ec24fd..000000000 Binary files a/accounting/bank/setup/media/image05.png and /dev/null differ diff --git a/accounting/bank/setup/media/image06.png b/accounting/bank/setup/media/image06.png deleted file mode 100644 index a08aa90b5..000000000 Binary files a/accounting/bank/setup/media/image06.png and /dev/null differ diff --git a/accounting/fiscal_localizations.rst b/accounting/fiscal_localizations.rst new file mode 100644 index 000000000..832e49e07 --- /dev/null +++ b/accounting/fiscal_localizations.rst @@ -0,0 +1,9 @@ +==================== +Fiscal Localizations +==================== + +.. toctree:: + :titlesonly: + + fiscal_localizations/overview + fiscal_localizations/localizations \ No newline at end of file diff --git a/accounting/localizations.rst b/accounting/fiscal_localizations/localizations.rst similarity index 100% rename from accounting/localizations.rst rename to accounting/fiscal_localizations/localizations.rst diff --git a/accounting/localizations/argentina.rst b/accounting/fiscal_localizations/localizations/argentina.rst similarity index 99% rename from accounting/localizations/argentina.rst rename to accounting/fiscal_localizations/localizations/argentina.rst index bb3010e7f..b2a3e2632 100644 --- a/accounting/localizations/argentina.rst +++ b/accounting/fiscal_localizations/localizations/argentina.rst @@ -268,7 +268,7 @@ 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 :doc:`developer mode -<../../general/developer_mode/activate>` can be used: +<../../../general/developer_mode/activate>` can be used: .. image:: media/argentina_edi_05.png :align: center diff --git a/accounting/localizations/colombia.rst b/accounting/fiscal_localizations/localizations/colombia.rst similarity index 98% rename from accounting/localizations/colombia.rst rename to accounting/fiscal_localizations/localizations/colombia.rst index 4ff78dcd3..282d069db 100644 --- a/accounting/localizations/colombia.rst +++ b/accounting/fiscal_localizations/localizations/colombia.rst @@ -135,7 +135,7 @@ Journals Once the DIAN has assigned the official sequence and prefix for the electronic invoice resolution, the Sales journals related to your invoice documents need to be updated in Odoo. The sequence can be -accessed using the :doc:`Developer mode <../../general/developer_mode/activate>`: :menuselection:`Accounting --> +accessed using the :doc:`Developer mode <../../../general/developer_mode/activate>`: :menuselection:`Accounting --> Settings --> Configuration Setting --> Journals`. .. image:: media/colombia09.png diff --git a/accounting/localizations/colombia_ES.rst b/accounting/fiscal_localizations/localizations/colombia_ES.rst similarity index 100% rename from accounting/localizations/colombia_ES.rst rename to accounting/fiscal_localizations/localizations/colombia_ES.rst diff --git a/accounting/localizations/france.rst b/accounting/fiscal_localizations/localizations/france.rst similarity index 97% rename from accounting/localizations/france.rst rename to accounting/fiscal_localizations/localizations/france.rst index e827c0a7a..1cb83b7ca 100644 --- a/accounting/localizations/france.rst +++ b/accounting/fiscal_localizations/localizations/france.rst @@ -74,7 +74,7 @@ To get the certification just follow the following steps: .. note:: * To install the module in any system created before December 18th 2017, you should update the modules list. - To do so, activate the :doc:`Developer mode <../../general/developer_mode/activate>`. + To do so, activate the :doc:`Developer mode <../../../general/developer_mode/activate>`. Then go to the *Apps* menu and press *Update Modules List* in the top-menu. * In case you run Odoo on-premise, you need to update your installation and restart your server beforehand. @@ -156,7 +156,7 @@ Invoicing and Accounting apps. it will be counted in the very next closing. .. tip:: For test & audit purposes such closings can be manually generated in the - :doc:`Developer mode <../../general/developer_mode/activate>`. Then go to + :doc:`Developer mode <../../../general/developer_mode/activate>`. Then go to :menuselection:`Settings --> Technical --> Automation --> Scheduled Actions`. diff --git a/accounting/localizations/germany.rst b/accounting/fiscal_localizations/localizations/germany.rst similarity index 100% rename from accounting/localizations/germany.rst rename to accounting/fiscal_localizations/localizations/germany.rst diff --git a/accounting/localizations/italy_IT.rst b/accounting/fiscal_localizations/localizations/italy_IT.rst similarity index 98% rename from accounting/localizations/italy_IT.rst rename to accounting/fiscal_localizations/localizations/italy_IT.rst index 057de9d1d..703263644 100644 --- a/accounting/localizations/italy_IT.rst +++ b/accounting/fiscal_localizations/localizations/italy_IT.rst @@ -25,7 +25,7 @@ elettronica sono i seguenti: 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 - puo’ consultare la relativa :doc:`guida <../../discuss/email_servers>`. + puo’ consultare la relativa :doc:`guida <../../../discuss/email_servers>`. - Indirizzo PEC dell’ Azienda, tale indirizzo deve essere lo stesso registrato presso l’Agenzia delle Entrate per l’utilizzo dei servizi diff --git a/accounting/localizations/media/argentina01.png b/accounting/fiscal_localizations/localizations/media/argentina01.png similarity index 100% rename from accounting/localizations/media/argentina01.png rename to accounting/fiscal_localizations/localizations/media/argentina01.png diff --git a/accounting/localizations/media/argentina02.png b/accounting/fiscal_localizations/localizations/media/argentina02.png similarity index 100% rename from accounting/localizations/media/argentina02.png rename to accounting/fiscal_localizations/localizations/media/argentina02.png diff --git a/accounting/localizations/media/argentina03.png b/accounting/fiscal_localizations/localizations/media/argentina03.png similarity index 100% rename from accounting/localizations/media/argentina03.png rename to accounting/fiscal_localizations/localizations/media/argentina03.png diff --git a/accounting/localizations/media/argentina04.png b/accounting/fiscal_localizations/localizations/media/argentina04.png similarity index 100% rename from accounting/localizations/media/argentina04.png rename to accounting/fiscal_localizations/localizations/media/argentina04.png diff --git a/accounting/localizations/media/argentina05.png b/accounting/fiscal_localizations/localizations/media/argentina05.png similarity index 100% rename from accounting/localizations/media/argentina05.png rename to accounting/fiscal_localizations/localizations/media/argentina05.png diff --git a/accounting/localizations/media/argentina06.png b/accounting/fiscal_localizations/localizations/media/argentina06.png similarity index 100% rename from accounting/localizations/media/argentina06.png rename to accounting/fiscal_localizations/localizations/media/argentina06.png diff --git a/accounting/localizations/media/argentina07.png b/accounting/fiscal_localizations/localizations/media/argentina07.png similarity index 100% rename from accounting/localizations/media/argentina07.png rename to accounting/fiscal_localizations/localizations/media/argentina07.png diff --git a/accounting/localizations/media/argentina08.png b/accounting/fiscal_localizations/localizations/media/argentina08.png similarity index 100% rename from accounting/localizations/media/argentina08.png rename to accounting/fiscal_localizations/localizations/media/argentina08.png diff --git a/accounting/localizations/media/argentina09.png b/accounting/fiscal_localizations/localizations/media/argentina09.png similarity index 100% rename from accounting/localizations/media/argentina09.png rename to accounting/fiscal_localizations/localizations/media/argentina09.png diff --git a/accounting/localizations/media/argentina10.png b/accounting/fiscal_localizations/localizations/media/argentina10.png similarity index 100% rename from accounting/localizations/media/argentina10.png rename to accounting/fiscal_localizations/localizations/media/argentina10.png diff --git a/accounting/localizations/media/argentina11.png b/accounting/fiscal_localizations/localizations/media/argentina11.png similarity index 100% rename from accounting/localizations/media/argentina11.png rename to accounting/fiscal_localizations/localizations/media/argentina11.png diff --git a/accounting/localizations/media/argentina12.png b/accounting/fiscal_localizations/localizations/media/argentina12.png similarity index 100% rename from accounting/localizations/media/argentina12.png rename to accounting/fiscal_localizations/localizations/media/argentina12.png diff --git a/accounting/localizations/media/argentina13.png b/accounting/fiscal_localizations/localizations/media/argentina13.png similarity index 100% rename from accounting/localizations/media/argentina13.png rename to accounting/fiscal_localizations/localizations/media/argentina13.png diff --git a/accounting/localizations/media/argentina14.png b/accounting/fiscal_localizations/localizations/media/argentina14.png similarity index 100% rename from accounting/localizations/media/argentina14.png rename to accounting/fiscal_localizations/localizations/media/argentina14.png diff --git a/accounting/localizations/media/argentina15.png b/accounting/fiscal_localizations/localizations/media/argentina15.png similarity index 100% rename from accounting/localizations/media/argentina15.png rename to accounting/fiscal_localizations/localizations/media/argentina15.png diff --git a/accounting/localizations/media/argentina16.png b/accounting/fiscal_localizations/localizations/media/argentina16.png similarity index 100% rename from accounting/localizations/media/argentina16.png rename to accounting/fiscal_localizations/localizations/media/argentina16.png diff --git a/accounting/localizations/media/argentina17.png b/accounting/fiscal_localizations/localizations/media/argentina17.png similarity index 100% rename from accounting/localizations/media/argentina17.png rename to accounting/fiscal_localizations/localizations/media/argentina17.png diff --git a/accounting/localizations/media/argentina18.png b/accounting/fiscal_localizations/localizations/media/argentina18.png similarity index 100% rename from accounting/localizations/media/argentina18.png rename to accounting/fiscal_localizations/localizations/media/argentina18.png diff --git a/accounting/localizations/media/argentina19.png b/accounting/fiscal_localizations/localizations/media/argentina19.png similarity index 100% rename from accounting/localizations/media/argentina19.png rename to accounting/fiscal_localizations/localizations/media/argentina19.png diff --git a/accounting/localizations/media/argentina20.png b/accounting/fiscal_localizations/localizations/media/argentina20.png similarity index 100% rename from accounting/localizations/media/argentina20.png rename to accounting/fiscal_localizations/localizations/media/argentina20.png diff --git a/accounting/localizations/media/argentina21.png b/accounting/fiscal_localizations/localizations/media/argentina21.png similarity index 100% rename from accounting/localizations/media/argentina21.png rename to accounting/fiscal_localizations/localizations/media/argentina21.png diff --git a/accounting/localizations/media/argentina22.png b/accounting/fiscal_localizations/localizations/media/argentina22.png similarity index 100% rename from accounting/localizations/media/argentina22.png rename to accounting/fiscal_localizations/localizations/media/argentina22.png diff --git a/accounting/localizations/media/argentina23.png b/accounting/fiscal_localizations/localizations/media/argentina23.png similarity index 100% rename from accounting/localizations/media/argentina23.png rename to accounting/fiscal_localizations/localizations/media/argentina23.png diff --git a/accounting/localizations/media/argentina_edi_01.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_01.png similarity index 100% rename from accounting/localizations/media/argentina_edi_01.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_01.png diff --git a/accounting/localizations/media/argentina_edi_02.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_02.png similarity index 100% rename from accounting/localizations/media/argentina_edi_02.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_02.png diff --git a/accounting/localizations/media/argentina_edi_03.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_03.png similarity index 100% rename from accounting/localizations/media/argentina_edi_03.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_03.png diff --git a/accounting/localizations/media/argentina_edi_04.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_04.png similarity index 100% rename from accounting/localizations/media/argentina_edi_04.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_04.png diff --git a/accounting/localizations/media/argentina_edi_05.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_05.png similarity index 100% rename from accounting/localizations/media/argentina_edi_05.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_05.png diff --git a/accounting/localizations/media/argentina_edi_06.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_06.png similarity index 100% rename from accounting/localizations/media/argentina_edi_06.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_06.png diff --git a/accounting/localizations/media/argentina_edi_07.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_07.png similarity index 100% rename from accounting/localizations/media/argentina_edi_07.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_07.png diff --git a/accounting/localizations/media/argentina_edi_08.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_08.png similarity index 100% rename from accounting/localizations/media/argentina_edi_08.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_08.png diff --git a/accounting/localizations/media/argentina_edi_09.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_09.png similarity index 100% rename from accounting/localizations/media/argentina_edi_09.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_09.png diff --git a/accounting/localizations/media/argentina_edi_10.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_10.png similarity index 100% rename from accounting/localizations/media/argentina_edi_10.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_10.png diff --git a/accounting/localizations/media/argentina_edi_11.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_11.png similarity index 100% rename from accounting/localizations/media/argentina_edi_11.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_11.png diff --git a/accounting/localizations/media/argentina_edi_12.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_12.png similarity index 100% rename from accounting/localizations/media/argentina_edi_12.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_12.png diff --git a/accounting/localizations/media/argentina_edi_13.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_13.png similarity index 100% rename from accounting/localizations/media/argentina_edi_13.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_13.png diff --git a/accounting/localizations/media/argentina_edi_14.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_14.png similarity index 100% rename from accounting/localizations/media/argentina_edi_14.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_14.png diff --git a/accounting/localizations/media/argentina_edi_15.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_15.png similarity index 100% rename from accounting/localizations/media/argentina_edi_15.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_15.png diff --git a/accounting/localizations/media/argentina_edi_16.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_16.png similarity index 100% rename from accounting/localizations/media/argentina_edi_16.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_16.png diff --git a/accounting/localizations/media/argentina_edi_17.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_17.png similarity index 100% rename from accounting/localizations/media/argentina_edi_17.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_17.png diff --git a/accounting/localizations/media/argentina_edi_18.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_18.png similarity index 100% rename from accounting/localizations/media/argentina_edi_18.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_18.png diff --git a/accounting/localizations/media/argentina_edi_19.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_19.png similarity index 100% rename from accounting/localizations/media/argentina_edi_19.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_19.png diff --git a/accounting/localizations/media/argentina_edi_20.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_20.png similarity index 100% rename from accounting/localizations/media/argentina_edi_20.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_20.png diff --git a/accounting/localizations/media/argentina_edi_21.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_21.png similarity index 100% rename from accounting/localizations/media/argentina_edi_21.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_21.png diff --git a/accounting/localizations/media/argentina_edi_22.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_22.png similarity index 100% rename from accounting/localizations/media/argentina_edi_22.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_22.png diff --git a/accounting/localizations/media/argentina_edi_23.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_23.png similarity index 100% rename from accounting/localizations/media/argentina_edi_23.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_23.png diff --git a/accounting/localizations/media/argentina_edi_24.png b/accounting/fiscal_localizations/localizations/media/argentina_edi_24.png similarity index 100% rename from accounting/localizations/media/argentina_edi_24.png rename to accounting/fiscal_localizations/localizations/media/argentina_edi_24.png diff --git a/accounting/localizations/media/colombia01.png b/accounting/fiscal_localizations/localizations/media/colombia01.png similarity index 100% rename from accounting/localizations/media/colombia01.png rename to accounting/fiscal_localizations/localizations/media/colombia01.png diff --git a/accounting/localizations/media/colombia02.png b/accounting/fiscal_localizations/localizations/media/colombia02.png similarity index 100% rename from accounting/localizations/media/colombia02.png rename to accounting/fiscal_localizations/localizations/media/colombia02.png diff --git a/accounting/localizations/media/colombia03.png b/accounting/fiscal_localizations/localizations/media/colombia03.png similarity index 100% rename from accounting/localizations/media/colombia03.png rename to accounting/fiscal_localizations/localizations/media/colombia03.png diff --git a/accounting/localizations/media/colombia04.png b/accounting/fiscal_localizations/localizations/media/colombia04.png similarity index 100% rename from accounting/localizations/media/colombia04.png rename to accounting/fiscal_localizations/localizations/media/colombia04.png diff --git a/accounting/localizations/media/colombia05.png b/accounting/fiscal_localizations/localizations/media/colombia05.png similarity index 100% rename from accounting/localizations/media/colombia05.png rename to accounting/fiscal_localizations/localizations/media/colombia05.png diff --git a/accounting/localizations/media/colombia06.png b/accounting/fiscal_localizations/localizations/media/colombia06.png similarity index 100% rename from accounting/localizations/media/colombia06.png rename to accounting/fiscal_localizations/localizations/media/colombia06.png diff --git a/accounting/localizations/media/colombia07.png b/accounting/fiscal_localizations/localizations/media/colombia07.png similarity index 100% rename from accounting/localizations/media/colombia07.png rename to accounting/fiscal_localizations/localizations/media/colombia07.png diff --git a/accounting/localizations/media/colombia08.png b/accounting/fiscal_localizations/localizations/media/colombia08.png similarity index 100% rename from accounting/localizations/media/colombia08.png rename to accounting/fiscal_localizations/localizations/media/colombia08.png diff --git a/accounting/localizations/media/colombia09.png b/accounting/fiscal_localizations/localizations/media/colombia09.png similarity index 100% rename from accounting/localizations/media/colombia09.png rename to accounting/fiscal_localizations/localizations/media/colombia09.png diff --git a/accounting/localizations/media/colombia10.png b/accounting/fiscal_localizations/localizations/media/colombia10.png similarity index 100% rename from accounting/localizations/media/colombia10.png rename to accounting/fiscal_localizations/localizations/media/colombia10.png diff --git a/accounting/localizations/media/colombia11.png b/accounting/fiscal_localizations/localizations/media/colombia11.png similarity index 100% rename from accounting/localizations/media/colombia11.png rename to accounting/fiscal_localizations/localizations/media/colombia11.png diff --git a/accounting/localizations/media/colombia12.png b/accounting/fiscal_localizations/localizations/media/colombia12.png similarity index 100% rename from accounting/localizations/media/colombia12.png rename to accounting/fiscal_localizations/localizations/media/colombia12.png diff --git a/accounting/localizations/media/colombia13.png b/accounting/fiscal_localizations/localizations/media/colombia13.png similarity index 100% rename from accounting/localizations/media/colombia13.png rename to accounting/fiscal_localizations/localizations/media/colombia13.png diff --git a/accounting/localizations/media/colombia14.png b/accounting/fiscal_localizations/localizations/media/colombia14.png similarity index 100% rename from accounting/localizations/media/colombia14.png rename to accounting/fiscal_localizations/localizations/media/colombia14.png diff --git a/accounting/localizations/media/colombia15.png b/accounting/fiscal_localizations/localizations/media/colombia15.png similarity index 100% rename from accounting/localizations/media/colombia15.png rename to accounting/fiscal_localizations/localizations/media/colombia15.png diff --git a/accounting/localizations/media/colombia16.png b/accounting/fiscal_localizations/localizations/media/colombia16.png similarity index 100% rename from accounting/localizations/media/colombia16.png rename to accounting/fiscal_localizations/localizations/media/colombia16.png diff --git a/accounting/localizations/media/colombia17.png b/accounting/fiscal_localizations/localizations/media/colombia17.png similarity index 100% rename from accounting/localizations/media/colombia17.png rename to accounting/fiscal_localizations/localizations/media/colombia17.png diff --git a/accounting/localizations/media/colombia18.png b/accounting/fiscal_localizations/localizations/media/colombia18.png similarity index 100% rename from accounting/localizations/media/colombia18.png rename to accounting/fiscal_localizations/localizations/media/colombia18.png diff --git a/accounting/localizations/media/colombia19.png b/accounting/fiscal_localizations/localizations/media/colombia19.png similarity index 100% rename from accounting/localizations/media/colombia19.png rename to accounting/fiscal_localizations/localizations/media/colombia19.png diff --git a/accounting/localizations/media/colombia_ES01.png b/accounting/fiscal_localizations/localizations/media/colombia_ES01.png similarity index 100% rename from accounting/localizations/media/colombia_ES01.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES01.png diff --git a/accounting/localizations/media/colombia_ES02.png b/accounting/fiscal_localizations/localizations/media/colombia_ES02.png similarity index 100% rename from accounting/localizations/media/colombia_ES02.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES02.png diff --git a/accounting/localizations/media/colombia_ES03.png b/accounting/fiscal_localizations/localizations/media/colombia_ES03.png similarity index 100% rename from accounting/localizations/media/colombia_ES03.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES03.png diff --git a/accounting/localizations/media/colombia_ES04.png b/accounting/fiscal_localizations/localizations/media/colombia_ES04.png similarity index 100% rename from accounting/localizations/media/colombia_ES04.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES04.png diff --git a/accounting/localizations/media/colombia_ES05.png b/accounting/fiscal_localizations/localizations/media/colombia_ES05.png similarity index 100% rename from accounting/localizations/media/colombia_ES05.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES05.png diff --git a/accounting/localizations/media/colombia_ES06.png b/accounting/fiscal_localizations/localizations/media/colombia_ES06.png similarity index 100% rename from accounting/localizations/media/colombia_ES06.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES06.png diff --git a/accounting/localizations/media/colombia_ES07.png b/accounting/fiscal_localizations/localizations/media/colombia_ES07.png similarity index 100% rename from accounting/localizations/media/colombia_ES07.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES07.png diff --git a/accounting/localizations/media/colombia_ES08.png b/accounting/fiscal_localizations/localizations/media/colombia_ES08.png similarity index 100% rename from accounting/localizations/media/colombia_ES08.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES08.png diff --git a/accounting/localizations/media/colombia_ES09.png b/accounting/fiscal_localizations/localizations/media/colombia_ES09.png similarity index 100% rename from accounting/localizations/media/colombia_ES09.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES09.png diff --git a/accounting/localizations/media/colombia_ES10.png b/accounting/fiscal_localizations/localizations/media/colombia_ES10.png similarity index 100% rename from accounting/localizations/media/colombia_ES10.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES10.png diff --git a/accounting/localizations/media/colombia_ES11.png b/accounting/fiscal_localizations/localizations/media/colombia_ES11.png similarity index 100% rename from accounting/localizations/media/colombia_ES11.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES11.png diff --git a/accounting/localizations/media/colombia_ES12.png b/accounting/fiscal_localizations/localizations/media/colombia_ES12.png similarity index 100% rename from accounting/localizations/media/colombia_ES12.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES12.png diff --git a/accounting/localizations/media/colombia_ES13.png b/accounting/fiscal_localizations/localizations/media/colombia_ES13.png similarity index 100% rename from accounting/localizations/media/colombia_ES13.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES13.png diff --git a/accounting/localizations/media/colombia_ES14.png b/accounting/fiscal_localizations/localizations/media/colombia_ES14.png similarity index 100% rename from accounting/localizations/media/colombia_ES14.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES14.png diff --git a/accounting/localizations/media/colombia_ES15.png b/accounting/fiscal_localizations/localizations/media/colombia_ES15.png similarity index 100% rename from accounting/localizations/media/colombia_ES15.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES15.png diff --git a/accounting/localizations/media/colombia_ES16.png b/accounting/fiscal_localizations/localizations/media/colombia_ES16.png similarity index 100% rename from accounting/localizations/media/colombia_ES16.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES16.png diff --git a/accounting/localizations/media/colombia_ES17.png b/accounting/fiscal_localizations/localizations/media/colombia_ES17.png similarity index 100% rename from accounting/localizations/media/colombia_ES17.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES17.png diff --git a/accounting/localizations/media/colombia_ES18.png b/accounting/fiscal_localizations/localizations/media/colombia_ES18.png similarity index 100% rename from accounting/localizations/media/colombia_ES18.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES18.png diff --git a/accounting/localizations/media/colombia_ES19.png b/accounting/fiscal_localizations/localizations/media/colombia_ES19.png similarity index 100% rename from accounting/localizations/media/colombia_ES19.png rename to accounting/fiscal_localizations/localizations/media/colombia_ES19.png diff --git a/accounting/localizations/media/colombia_ubl2.1_1.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_1.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_1.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_1.png diff --git a/accounting/localizations/media/colombia_ubl2.1_10.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_10.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_10.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_10.png diff --git a/accounting/localizations/media/colombia_ubl2.1_11.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_11.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_11.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_11.png diff --git a/accounting/localizations/media/colombia_ubl2.1_12.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_12.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_12.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_12.png diff --git a/accounting/localizations/media/colombia_ubl2.1_13.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_13.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_13.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_13.png diff --git a/accounting/localizations/media/colombia_ubl2.1_14.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_14.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_14.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_14.png diff --git a/accounting/localizations/media/colombia_ubl2.1_15.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_15.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_15.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_15.png diff --git a/accounting/localizations/media/colombia_ubl2.1_16.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_16.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_16.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_16.png diff --git a/accounting/localizations/media/colombia_ubl2.1_17.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_17.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_17.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_17.png diff --git a/accounting/localizations/media/colombia_ubl2.1_18.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_18.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_18.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_18.png diff --git a/accounting/localizations/media/colombia_ubl2.1_2.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_2.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_2.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_2.png diff --git a/accounting/localizations/media/colombia_ubl2.1_3.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_3.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_3.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_3.png diff --git a/accounting/localizations/media/colombia_ubl2.1_4.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_4.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_4.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_4.png diff --git a/accounting/localizations/media/colombia_ubl2.1_5.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_5.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_5.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_5.png diff --git a/accounting/localizations/media/colombia_ubl2.1_6.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_6.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_6.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_6.png diff --git a/accounting/localizations/media/colombia_ubl2.1_7.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_7.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_7.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_7.png diff --git a/accounting/localizations/media/colombia_ubl2.1_8.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_8.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_8.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_8.png diff --git a/accounting/localizations/media/colombia_ubl2.1_9.png b/accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_9.png similarity index 100% rename from accounting/localizations/media/colombia_ubl2.1_9.png rename to accounting/fiscal_localizations/localizations/media/colombia_ubl2.1_9.png diff --git a/accounting/localizations/media/italy_IT01.png b/accounting/fiscal_localizations/localizations/media/italy_IT01.png similarity index 100% rename from accounting/localizations/media/italy_IT01.png rename to accounting/fiscal_localizations/localizations/media/italy_IT01.png diff --git a/accounting/localizations/media/italy_IT02.png b/accounting/fiscal_localizations/localizations/media/italy_IT02.png similarity index 100% rename from accounting/localizations/media/italy_IT02.png rename to accounting/fiscal_localizations/localizations/media/italy_IT02.png diff --git a/accounting/localizations/media/italy_IT03.png b/accounting/fiscal_localizations/localizations/media/italy_IT03.png similarity index 100% rename from accounting/localizations/media/italy_IT03.png rename to accounting/fiscal_localizations/localizations/media/italy_IT03.png diff --git a/accounting/localizations/media/italy_IT04.png b/accounting/fiscal_localizations/localizations/media/italy_IT04.png similarity index 100% rename from accounting/localizations/media/italy_IT04.png rename to accounting/fiscal_localizations/localizations/media/italy_IT04.png diff --git a/accounting/localizations/media/italy_IT05.png b/accounting/fiscal_localizations/localizations/media/italy_IT05.png similarity index 100% rename from accounting/localizations/media/italy_IT05.png rename to accounting/fiscal_localizations/localizations/media/italy_IT05.png diff --git a/accounting/localizations/media/italy_IT06.png b/accounting/fiscal_localizations/localizations/media/italy_IT06.png similarity index 100% rename from accounting/localizations/media/italy_IT06.png rename to accounting/fiscal_localizations/localizations/media/italy_IT06.png diff --git a/accounting/localizations/media/mexico01.png b/accounting/fiscal_localizations/localizations/media/mexico01.png similarity index 100% rename from accounting/localizations/media/mexico01.png rename to accounting/fiscal_localizations/localizations/media/mexico01.png diff --git a/accounting/localizations/media/mexico02.png b/accounting/fiscal_localizations/localizations/media/mexico02.png similarity index 100% rename from accounting/localizations/media/mexico02.png rename to accounting/fiscal_localizations/localizations/media/mexico02.png diff --git a/accounting/localizations/media/mexico03.png b/accounting/fiscal_localizations/localizations/media/mexico03.png similarity index 100% rename from accounting/localizations/media/mexico03.png rename to accounting/fiscal_localizations/localizations/media/mexico03.png diff --git a/accounting/localizations/media/mexico04.png b/accounting/fiscal_localizations/localizations/media/mexico04.png similarity index 100% rename from accounting/localizations/media/mexico04.png rename to accounting/fiscal_localizations/localizations/media/mexico04.png diff --git a/accounting/localizations/media/mexico05.png b/accounting/fiscal_localizations/localizations/media/mexico05.png similarity index 100% rename from accounting/localizations/media/mexico05.png rename to accounting/fiscal_localizations/localizations/media/mexico05.png diff --git a/accounting/localizations/media/mexico06.png b/accounting/fiscal_localizations/localizations/media/mexico06.png similarity index 100% rename from accounting/localizations/media/mexico06.png rename to accounting/fiscal_localizations/localizations/media/mexico06.png diff --git a/accounting/localizations/media/mexico07.png b/accounting/fiscal_localizations/localizations/media/mexico07.png similarity index 100% rename from accounting/localizations/media/mexico07.png rename to accounting/fiscal_localizations/localizations/media/mexico07.png diff --git a/accounting/localizations/media/mexico08.png b/accounting/fiscal_localizations/localizations/media/mexico08.png similarity index 100% rename from accounting/localizations/media/mexico08.png rename to accounting/fiscal_localizations/localizations/media/mexico08.png diff --git a/accounting/localizations/media/mexico09.png b/accounting/fiscal_localizations/localizations/media/mexico09.png similarity index 100% rename from accounting/localizations/media/mexico09.png rename to accounting/fiscal_localizations/localizations/media/mexico09.png diff --git a/accounting/localizations/media/mexico10.png b/accounting/fiscal_localizations/localizations/media/mexico10.png similarity index 100% rename from accounting/localizations/media/mexico10.png rename to accounting/fiscal_localizations/localizations/media/mexico10.png diff --git a/accounting/localizations/media/mexico11.png b/accounting/fiscal_localizations/localizations/media/mexico11.png similarity index 100% rename from accounting/localizations/media/mexico11.png rename to accounting/fiscal_localizations/localizations/media/mexico11.png diff --git a/accounting/localizations/media/mexico12.png b/accounting/fiscal_localizations/localizations/media/mexico12.png similarity index 100% rename from accounting/localizations/media/mexico12.png rename to accounting/fiscal_localizations/localizations/media/mexico12.png diff --git a/accounting/localizations/media/mexico13.png b/accounting/fiscal_localizations/localizations/media/mexico13.png similarity index 100% rename from accounting/localizations/media/mexico13.png rename to accounting/fiscal_localizations/localizations/media/mexico13.png diff --git a/accounting/localizations/media/mexico14.png b/accounting/fiscal_localizations/localizations/media/mexico14.png similarity index 100% rename from accounting/localizations/media/mexico14.png rename to accounting/fiscal_localizations/localizations/media/mexico14.png diff --git a/accounting/localizations/media/mexico15.png b/accounting/fiscal_localizations/localizations/media/mexico15.png similarity index 100% rename from accounting/localizations/media/mexico15.png rename to accounting/fiscal_localizations/localizations/media/mexico15.png diff --git a/accounting/localizations/media/mexico16.png b/accounting/fiscal_localizations/localizations/media/mexico16.png similarity index 100% rename from accounting/localizations/media/mexico16.png rename to accounting/fiscal_localizations/localizations/media/mexico16.png diff --git a/accounting/localizations/media/mexico17.png b/accounting/fiscal_localizations/localizations/media/mexico17.png similarity index 100% rename from accounting/localizations/media/mexico17.png rename to accounting/fiscal_localizations/localizations/media/mexico17.png diff --git a/accounting/localizations/media/mexico18.png b/accounting/fiscal_localizations/localizations/media/mexico18.png similarity index 100% rename from accounting/localizations/media/mexico18.png rename to accounting/fiscal_localizations/localizations/media/mexico18.png diff --git a/accounting/localizations/media/mexico19.png b/accounting/fiscal_localizations/localizations/media/mexico19.png similarity index 100% rename from accounting/localizations/media/mexico19.png rename to accounting/fiscal_localizations/localizations/media/mexico19.png diff --git a/accounting/localizations/media/mexico20.png b/accounting/fiscal_localizations/localizations/media/mexico20.png similarity index 100% rename from accounting/localizations/media/mexico20.png rename to accounting/fiscal_localizations/localizations/media/mexico20.png diff --git a/accounting/localizations/media/mexico21.png b/accounting/fiscal_localizations/localizations/media/mexico21.png similarity index 100% rename from accounting/localizations/media/mexico21.png rename to accounting/fiscal_localizations/localizations/media/mexico21.png diff --git a/accounting/localizations/media/mexico22.png b/accounting/fiscal_localizations/localizations/media/mexico22.png similarity index 100% rename from accounting/localizations/media/mexico22.png rename to accounting/fiscal_localizations/localizations/media/mexico22.png diff --git a/accounting/localizations/media/mexico23.png b/accounting/fiscal_localizations/localizations/media/mexico23.png similarity index 100% rename from accounting/localizations/media/mexico23.png rename to accounting/fiscal_localizations/localizations/media/mexico23.png diff --git a/accounting/localizations/media/mexico24.png b/accounting/fiscal_localizations/localizations/media/mexico24.png similarity index 100% rename from accounting/localizations/media/mexico24.png rename to accounting/fiscal_localizations/localizations/media/mexico24.png diff --git a/accounting/localizations/media/mexico25.png b/accounting/fiscal_localizations/localizations/media/mexico25.png similarity index 100% rename from accounting/localizations/media/mexico25.png rename to accounting/fiscal_localizations/localizations/media/mexico25.png diff --git a/accounting/localizations/media/mexico26.png b/accounting/fiscal_localizations/localizations/media/mexico26.png similarity index 100% rename from accounting/localizations/media/mexico26.png rename to accounting/fiscal_localizations/localizations/media/mexico26.png diff --git a/accounting/localizations/media/mexico27.png b/accounting/fiscal_localizations/localizations/media/mexico27.png similarity index 100% rename from accounting/localizations/media/mexico27.png rename to accounting/fiscal_localizations/localizations/media/mexico27.png diff --git a/accounting/localizations/media/mexico28.png b/accounting/fiscal_localizations/localizations/media/mexico28.png similarity index 100% rename from accounting/localizations/media/mexico28.png rename to accounting/fiscal_localizations/localizations/media/mexico28.png diff --git a/accounting/localizations/media/mexico29.png b/accounting/fiscal_localizations/localizations/media/mexico29.png similarity index 100% rename from accounting/localizations/media/mexico29.png rename to accounting/fiscal_localizations/localizations/media/mexico29.png diff --git a/accounting/localizations/media/mexico30.png b/accounting/fiscal_localizations/localizations/media/mexico30.png similarity index 100% rename from accounting/localizations/media/mexico30.png rename to accounting/fiscal_localizations/localizations/media/mexico30.png diff --git a/accounting/localizations/media/mexico31.png b/accounting/fiscal_localizations/localizations/media/mexico31.png similarity index 100% rename from accounting/localizations/media/mexico31.png rename to accounting/fiscal_localizations/localizations/media/mexico31.png diff --git a/accounting/localizations/media/mexico32.png b/accounting/fiscal_localizations/localizations/media/mexico32.png similarity index 100% rename from accounting/localizations/media/mexico32.png rename to accounting/fiscal_localizations/localizations/media/mexico32.png diff --git a/accounting/localizations/media/mexico33.png b/accounting/fiscal_localizations/localizations/media/mexico33.png similarity index 100% rename from accounting/localizations/media/mexico33.png rename to accounting/fiscal_localizations/localizations/media/mexico33.png diff --git a/accounting/localizations/media/switzerland00.png b/accounting/fiscal_localizations/localizations/media/switzerland00.png similarity index 100% rename from accounting/localizations/media/switzerland00.png rename to accounting/fiscal_localizations/localizations/media/switzerland00.png diff --git a/accounting/localizations/media/switzerland01.png b/accounting/fiscal_localizations/localizations/media/switzerland01.png similarity index 100% rename from accounting/localizations/media/switzerland01.png rename to accounting/fiscal_localizations/localizations/media/switzerland01.png diff --git a/accounting/localizations/media/switzerland02.png b/accounting/fiscal_localizations/localizations/media/switzerland02.png similarity index 100% rename from accounting/localizations/media/switzerland02.png rename to accounting/fiscal_localizations/localizations/media/switzerland02.png diff --git a/accounting/localizations/media/switzerland03.png b/accounting/fiscal_localizations/localizations/media/switzerland03.png similarity index 100% rename from accounting/localizations/media/switzerland03.png rename to accounting/fiscal_localizations/localizations/media/switzerland03.png diff --git a/accounting/localizations/media/switzerland04.png b/accounting/fiscal_localizations/localizations/media/switzerland04.png similarity index 100% rename from accounting/localizations/media/switzerland04.png rename to accounting/fiscal_localizations/localizations/media/switzerland04.png diff --git a/accounting/localizations/media/switzerland05.png b/accounting/fiscal_localizations/localizations/media/switzerland05.png similarity index 100% rename from accounting/localizations/media/switzerland05.png rename to accounting/fiscal_localizations/localizations/media/switzerland05.png diff --git a/accounting/localizations/mexico.rst b/accounting/fiscal_localizations/localizations/mexico.rst similarity index 98% rename from accounting/localizations/mexico.rst rename to accounting/fiscal_localizations/localizations/mexico.rst index 7a36f9ffb..3aad189d9 100644 --- a/accounting/localizations/mexico.rst +++ b/accounting/fiscal_localizations/localizations/mexico.rst @@ -106,7 +106,7 @@ Enabling CFDI Version 3.3 SaaS instance please ask for an upgrade by submitting a ticket to support in https://www.odoo.com/help. -Enable the :doc:`Developer mode <../../general/developer_mode/activate>`. +Enable the :doc:`Developer mode <../../../general/developer_mode/activate>`. Go and look the following technical parameter, on :menuselection:`Settings --> Technical --> Parameters --> System Parameters` @@ -542,7 +542,7 @@ Enabling Explicit errors on the CFDI using the XSD local validator (CFDI 3.3) Frequently you want receive explicit errors from the fields incorrectly set on the xml, those errors are better informed to the user if the check is enable, to enable the Check with xsd feature follow the next steps (with the -:doc:`Developer mode <../../general/developer_mode/activate>` enabled). +:doc:`Developer mode <../../../general/developer_mode/activate>` enabled). - Go to :menuselection:`Settings --> Technical --> Actions --> Server Actions` - Look for the Action called "Download XSD files to CFDI" @@ -692,5 +692,5 @@ FAQ .. _`given by the SAT`: http://sat.gob.mx/informacion_fiscal/factura_electronica/Documents/GuiaAnexo20DPA.pdf .. _`Anexo 24`: http://www.sat.gob.mx/fichas_tematicas/buzon_tributario/Documents/Anexo24_05012015.pdf .. _`official information here`: http://www.sat.gob.mx/fichas_tematicas/declaraciones_informativas/Paginas/declaracion_informativa_terceros.aspx -.. _`Certificate`: ../../_static/files/certificate.cer -.. _`Certificate Key`: ../../_static/files/certificate.key +.. _`Certificate`: ../../../_static/files/certificate.cer +.. _`Certificate Key`: ../../../_static/files/certificate.key diff --git a/accounting/localizations/netherlands.rst b/accounting/fiscal_localizations/localizations/netherlands.rst similarity index 100% rename from accounting/localizations/netherlands.rst rename to accounting/fiscal_localizations/localizations/netherlands.rst diff --git a/accounting/localizations/spain.rst b/accounting/fiscal_localizations/localizations/spain.rst similarity index 100% rename from accounting/localizations/spain.rst rename to accounting/fiscal_localizations/localizations/spain.rst diff --git a/accounting/localizations/switzerland.rst b/accounting/fiscal_localizations/localizations/switzerland.rst similarity index 100% rename from accounting/localizations/switzerland.rst rename to accounting/fiscal_localizations/localizations/switzerland.rst diff --git a/project/overview/main_concepts.rst b/accounting/fiscal_localizations/overview.rst similarity index 59% rename from project/overview/main_concepts.rst rename to accounting/fiscal_localizations/overview.rst index b5d4acae4..f073b655b 100644 --- a/project/overview/main_concepts.rst +++ b/accounting/fiscal_localizations/overview.rst @@ -5,4 +5,4 @@ Overview .. toctree:: :titlesonly: - main_concepts/introduction + overview/fiscal_localization_packages \ No newline at end of file diff --git a/accounting/fiscal_localizations/overview/fiscal_localization_packages.rst b/accounting/fiscal_localizations/overview/fiscal_localization_packages.rst new file mode 100644 index 000000000..7c78f5840 --- /dev/null +++ b/accounting/fiscal_localizations/overview/fiscal_localization_packages.rst @@ -0,0 +1,47 @@ +============================ +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:: media/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:: media/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:`../../overview/getting_started/chart_of_accounts` + - :doc:`../../fiscality/taxes/create` + +.. todo:: update list of linked docs, and link with the future one about country-specific statements. \ No newline at end of file diff --git a/accounting/fiscal_localizations/overview/media/fiscal_localization_packages_modules.png b/accounting/fiscal_localizations/overview/media/fiscal_localization_packages_modules.png new file mode 100644 index 000000000..6f47ea210 Binary files /dev/null and b/accounting/fiscal_localizations/overview/media/fiscal_localization_packages_modules.png differ diff --git a/accounting/fiscal_localizations/overview/media/fiscal_localization_packages_selection.png b/accounting/fiscal_localizations/overview/media/fiscal_localization_packages_selection.png new file mode 100644 index 000000000..1be376ce0 Binary files /dev/null and b/accounting/fiscal_localizations/overview/media/fiscal_localization_packages_selection.png differ diff --git a/accounting/fiscality/taxes.rst b/accounting/fiscality/taxes.rst index b5bbc249c..6be07a3b7 100644 --- a/accounting/fiscality/taxes.rst +++ b/accounting/fiscality/taxes.rst @@ -12,5 +12,4 @@ Taxes taxes/tax_included taxes/retention taxes/B2B_B2C - taxes/cash_basis_taxes - taxes/tax_returns \ No newline at end of file + taxes/cash_basis_taxes \ No newline at end of file diff --git a/accounting/others.rst b/accounting/others.rst index 55f564f98..2ade64341 100644 --- a/accounting/others.rst +++ b/accounting/others.rst @@ -8,5 +8,4 @@ Others others/analytic others/adviser others/multicurrencies - others/reporting others/inventory \ No newline at end of file diff --git a/accounting/others/multicurrencies/exchange.rst b/accounting/others/multicurrencies/exchange.rst index 13a5e945b..c4f872b16 100644 --- a/accounting/others/multicurrencies/exchange.rst +++ b/accounting/others/multicurrencies/exchange.rst @@ -106,5 +106,5 @@ journal entries. All the exchange rates differences are recorded in it. The Exchange difference journal can be changed in your accounting settings. .. seealso:: - * :doc:`../../bank/reconciliation/configure` + * :doc:`../../bank/reconciliation/reconciliation_models` * :doc:`../../bank/reconciliation/use_cases` \ No newline at end of file diff --git a/accounting/overview/getting_started/chart_of_accounts.rst b/accounting/overview/getting_started/chart_of_accounts.rst index 67cff3ee1..730be585d 100644 --- a/accounting/overview/getting_started/chart_of_accounts.rst +++ b/accounting/overview/getting_started/chart_of_accounts.rst @@ -170,4 +170,5 @@ To do so, check the **Deprecated** box and save. .. seealso:: * :doc:`../../payables/supplier_bills/assets` * :doc:`../../payables/supplier_bills/deferred_expenses` - * :doc:`../../receivables/customer_invoices/deferred_revenues` \ No newline at end of file + * :doc:`../../receivables/customer_invoices/deferred_revenues` + * :doc:`../../fiscal_localizations/overview/fiscal_localization_packages` \ No newline at end of file diff --git a/accounting/overview/getting_started/setup.rst b/accounting/overview/getting_started/setup.rst index 06558a9df..72283a333 100644 --- a/accounting/overview/getting_started/setup.rst +++ b/accounting/overview/getting_started/setup.rst @@ -12,7 +12,9 @@ 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. + accounts, reports, and taxes are ready-to-go. :doc:`Click here + <../../fiscal_localizations/overview/fiscal_localization_packages>` for more information about + Fiscal Localization Packages. Accounting onboarding banner ============================ @@ -50,30 +52,31 @@ such as on invoices. Bank Account ------------ -Connect your bank account database to your database, and have your bank statements synced -automatically. To do so, find your bank on the list, click on *Connect*, and follow the instructions -on-screen. +Connect your bank account to your database and have your bank statements synced automatically. To do +so, find your bank in the list, click on *Connect*, and follow the instructions on-screen. .. note:: :doc:`Click here <../../bank/feeds/bank_synchronization>` for more information about this feature. -If your bank can’t be synchronized automatically, or if you prefer not to sync your bank account -with your database, you may also configure your bank account manually by clicking on *Create it*, -and filling out the form. +If your Bank Institution can’t be synchronized automatically, or if you prefer not to sync it with +your database, you may also configure your bank account manually by clicking on *Create it*, and +filling out the form. - **Name**: the bank account's name, as displayed on Odoo. - **Account Number**: your bank account number (IBAN in Europe). -- **Bank**: click on *Create and Edit* to configure the bank's details. Add the real bank's name - and its Identifier Code (BIC or SWIFT). +- **Bank**: click on *Create and Edit* to configure the bank's details. Add the bank institution's + name and its Identifier Code (BIC or SWIFT). - **Code**: this code is your Journal's *Short Code*, as displayed on Odoo. By default, Odoo creates a new Journal with this Short Code. -- **Journal**: if this field is displayed, then select the *Journal* you want to use to record the - financial transactions linked to this bank account, or create a new one by clicking on *Create and - Edit*. +- **Journal**: This field is displayed if you have an existing Bank Journal that is not linked yet + to a bank account. If so, then select the *Journal* you want to use to record the financial + transactions linked to this bank account or create a new one by clicking on *Create and Edit*. .. note:: - You can add as many bank accounts as needed with this tool by going to :menuselection:`Accounting - --> Configuration`, and clicking on *Add a Bank Account*. + - You can add as many bank accounts as needed with this tool by going to :menuselection:`Accounting + --> Configuration`, and clicking on *Add a Bank Account*. + - :doc:`Click here <../../bank/setup/bank_accounts>` for more information about Bank + Accounts. .. _accounting-setup-periods: @@ -184,6 +187,8 @@ Sample Invoice Send yourself a sample invoice by email to make sure everything is correctly configured. .. seealso:: + * :doc:`../../bank/setup/bank_accounts` * :doc:`chart_of_accounts` * :doc:`../../bank/feeds/bank_synchronization` + * :doc:`../../fiscal_localizations/overview/fiscal_localization_packages` * `Odoo Learn: Accounting Basics `_ \ No newline at end of file diff --git a/accounting/payables/misc.rst b/accounting/payables/misc.rst index 2b44dd81c..285a763ff 100644 --- a/accounting/payables/misc.rst +++ b/accounting/payables/misc.rst @@ -5,5 +5,4 @@ Miscellaneous .. toctree:: :titlesonly: - misc/forecast - misc/employee_expense + misc/forecast \ No newline at end of file diff --git a/accounting/payables/misc/employee_expense.rst b/accounting/payables/misc/employee_expense.rst deleted file mode 100644 index 82a13f776..000000000 --- a/accounting/payables/misc/employee_expense.rst +++ /dev/null @@ -1,204 +0,0 @@ -=============================== -Keep track of employee expenses -=============================== - -Employee expenses are charges incurred on behalf of the company. The -company then reimburses these expenses to the employee. The receipts -encountered most frequently are: - -- car travel, reimbursed per unit of distance (mile or kilometer), - -- subsistence expenses, reimbursed based on the bill, - -- other purchases, such as stationery and books, destined for the - company but carried out by the employee. - -Configuration -============= - -To manage expenses, you need to install the **Expense Tracker** -application from the Apps module. - -You will also need to install the **Sales Management** module in order to -re-invoice your expenses to your customers. - -Once these applications are installed you can configure the different -products that represent the types of expenses. To create the firsts -products, go to the menu :menuselection:`Configuration --> Expenses Products` in the -**Expenses** application. - -Some examples of products can be: - -1. **Travel (car)** - - - Product Type: Service - - - Invoicing Policy: Invoice based on time and material - - - Expense Invoice Policy: At sales price - - - Sale Price: 0.32 - - - Unit of Measure: Km or mile (you will need to enable the **Multiple - Unit of Measures** option from :menuselection:`Sales module --> Configuration`) - -.. image:: ./media/expense01.png - :align: center - -1. **Hotel** - - - Product Type: Service - - - Invoicing Policy: Invoice based on time and material - - - Expense Invoice Policy: At cost - - - Unit of Measure: Unit - -In these examples, the first product will be an expense we reimburse to -the employee based on the number of km he did with his own car (e.g. to -visit a customer): 0.32€ / km. The hotel is reimbursed based on the real -cost of the hotel. - -Be sure that all these products have the checkbox **Can be expensed** -checked and the invoicing policy set to **Invoice Based on time and -material**. This invoicing policy means that, if the expense is related -to a customer project/sale order, Odoo will re-invoice this expense to -the customer. - -Odoo support two types of expenses: - -- expenses paid by employee with their own money - -- expenses paid with a company credit card - -The expenses workflow -===================== - -Record a new expense --------------------- - -Every employee of the company can register their expenses from -:menuselection:`Expenses application --> My Expenses`. The workflow for personal -expenses work that way: - -1. an employee record his expense, and submit it to the manager - -2. the manager approve or refuse the expense - -3. the accountant post journal entries - -4. the company reimburse the employee expense (the employee is like a - vendor, with a payable account) - -5. if the expense is linked to an analytic account, the company can - reinvoice the customer - -For every expense, the employee should record at least: - -- a description: that should include the reference of the ticket / bill - -- a product: the expense type - -- a price (e.g. hotel) or a quantity (e.g. reimburse km if travel with - his own car) - -Depending of the policy of the company, he might have to attach a scan -or a photo of the expense. To do that, just a write a message in the -bottom of the expense with the scan of the bill/ticket in attachment. - -.. image:: ./media/expense02.png - :align: center - -If the expense is linked to a customer project, you should not forget to -set an analytic account, related to the customer project or sale order -(you might have to activate analytic accounts in the accounting settings -to get this feature). - -Once the expense is fully recorded, the employee has to click the button -**Submit to Manager**. In some companies, employees should submit their -expenses grouped at the end of the month, or at the end of a business -trip. - -An employee can submit all his expenses in batch, using the Submit -Expenses action from the list view of expenses, or the small icons in -the list view. - -Validation by the manager -------------------------- - -Managers should receive an email for every expense to be approved (the -manager of an employee is defined on the employee form). They can use -the menu **To Approve** to check all expenses that are waiting for -validation. - -The manager can: - -- discuss on an expense to ask for more information (e.g., if a scan of - the bill is missing); - -- reject an expense; - -- approve an expense. - -Control by the accountant -------------------------- - -Then, all expenses that have been validated by the manager should be -posted by the accountant. When an expense is posted, the related journal -entry is created and posted in your accounting. - -If the accountant wants to create only one journal entry for a batch of -expenses, he can post expenses in batch from the list view of all -expenses. - -Reinvoice expenses to customers -------------------------------- - -If the expense was linked to an analytic account related to a sale -order, the sale order has a new line related to the expense. This line -is not invoiced to the customer yet and will be included in the next -invoice that will be send to the customer (charge travel and -accommodations on a customer project) - -To invoice the customer, just click on the invoice button on his sale -order. (or it will be done automatically at the end of the week/month if -you invoice all your orders in batch) - - -.. seealso:: - - :doc:`../../../sales/invoicing/expense` - -Reimburse the employee ----------------------- - -If the expense was paid with the employee's own money, the company -should reimburse the employee. In such a case, the employee will appear -in the aged payable balance until the company reimburse him his -expenses. - -All you have to do is to create a payment to this employee for the -amount due. - -Miscellaneous -============= - -Expenses that are not reinvoiced to customers ---------------------------------------------- - -If some expenses should not be reinvoiced to customers, you have two -options: - -1. if the decision to invoice or not is related to the product, change - the invoicing policy on the product: - - - **based on time and material**: reinvoice the customer - - - **based on sale orders**: do not reinvoice the customer - -2. if you have to make an exception for one invoice that should not be - reinvoiced to the customer, do not set the related analytic - account for this invoice. - -.. seealso:: - - :doc:`forecast` diff --git a/accounting/payables/misc/media/expense01.png b/accounting/payables/misc/media/expense01.png deleted file mode 100644 index 17e0925fa..000000000 Binary files a/accounting/payables/misc/media/expense01.png and /dev/null differ diff --git a/accounting/payables/misc/media/expense02.png b/accounting/payables/misc/media/expense02.png deleted file mode 100644 index 8dd264680..000000000 Binary files a/accounting/payables/misc/media/expense02.png and /dev/null differ diff --git a/accounting/payables/pay/multiple.rst b/accounting/payables/pay/multiple.rst index 7d980b04e..f1862c97d 100644 --- a/accounting/payables/pay/multiple.rst +++ b/accounting/payables/pay/multiple.rst @@ -144,5 +144,4 @@ model for cash discount. Now we are going back to bank statement and opening reconcile view. .. seealso:: - - :doc:`../../bank/reconciliation/configure` - + - :doc:`../../bank/reconciliation/reconciliation_models` \ No newline at end of file diff --git a/accounting/payables/pay/sepa.rst b/accounting/payables/pay/sepa.rst index 67defe4bb..94f6b74ee 100644 --- a/accounting/payables/pay/sepa.rst +++ b/accounting/payables/pay/sepa.rst @@ -127,5 +127,5 @@ field. .. seealso:: - :doc:`check` - - :doc:`../../bank/setup/create_bank_account` + - :doc:`../../bank/setup/bank_accounts` - :doc:`../../bank/reconciliation/use_cases` diff --git a/accounting/payables/supplier_bills.rst b/accounting/payables/supplier_bills.rst index 3999f077c..596820e93 100644 --- a/accounting/payables/supplier_bills.rst +++ b/accounting/payables/supplier_bills.rst @@ -6,7 +6,7 @@ Vendor Bills :titlesonly: supplier_bills/manage - supplier_bills/bills_or_receipts + supplier_bills/purchase_receipts supplier_bills/deferred_expenses supplier_bills/assets supplier_bills/ocr diff --git a/accounting/payables/supplier_bills/bills_or_receipts.rst b/accounting/payables/supplier_bills/bills_or_receipts.rst deleted file mode 100644 index 520eae1c3..000000000 --- a/accounting/payables/supplier_bills/bills_or_receipts.rst +++ /dev/null @@ -1,68 +0,0 @@ -==================================== -Supplier bills or purchase receipts? -==================================== - -Purchase receipts are different than vendor bills. Vendor bills are -requests for payment. If I issue a Purchase Order my vendor will in most -business cases send me a Vendor Bill. Depending on his invoice policy I -then have a defined amount of time to pay the Bill. A Purchase receipts -are confirmations of received payments. They are my day-to-day ticket -receipts. - -From an accounting point of view this makes a difference as a Vendor -Bill will first credit a debt account before reconciling with the bank -account. On the other hand we usually immediately pay the purchase -receipts, which means no debt account is necessary. - -Moreover purchase receipts can have a different tax amount per product -line, as vendors bills apply one tax amount over the entire bill. - -If my company's bank account is used to pay for goods where only a -purchase receipt are issued I should use the purchase receipts function -in Odoo to handle them in accounting. - -Let's take the following example: we need to buy tea for our -customers from a local tea store that doesn't issue bills. We go every -week buy 50 euros worth of tea and a teapot worth 20 euros. We pay with -the company's bank account. - -Configuration -============= - -To handle purchase receipts in Odoo one module and one app has to be -installed. Go into the app module and install the accounting app. - -.. image:: ./media/bill01.png - :align: center - -Then, go in the search bar, delete the default module search, and search -for "purchase". Install the **Sale & Purchase Vouchers** module. - -.. image:: ./media/bill02.png - :align: center - -Register a receipt -=================== - -By installing the **Sale & Purchase Vouchers** I've made the new -**Purchase Receipts** drop down menu visible in the accounting app. - -To import our 50 euros worth of tea purchase receipt, enter the -accounting app, select :menuselection:`Purchases --> Purchase Receipts`. - -Create a new Purchase Receipt and fill in all the necessary information. -Note that you have the choice in the Payment field between **Pay Later** -or **Pay Now**. It's a significant difference as Pay Later will generate -a debt accounting entry whereas Pay Now will immediately credit the Bank -account. - -In most cases you immediately pay, we will thus select the Pay Directly -option. Add the products, the related account and the appropriate taxe. -For the example we suppose the tea is a 12% taxe and the Tea Pott 21%. - -.. image:: ./media/bill03.png - :align: center - -Validate the Purchase Receipt to post it. Don't forget you need to -:doc:`reconcile payments <../../bank/reconciliation/use_cases>` in order to -completely close the transaction in your accounting. diff --git a/accounting/payables/supplier_bills/media/bill01.png b/accounting/payables/supplier_bills/media/bill01.png deleted file mode 100644 index 64d0eba7e..000000000 Binary files a/accounting/payables/supplier_bills/media/bill01.png and /dev/null differ diff --git a/accounting/payables/supplier_bills/media/bill02.png b/accounting/payables/supplier_bills/media/bill02.png deleted file mode 100644 index 2fd61f030..000000000 Binary files a/accounting/payables/supplier_bills/media/bill02.png and /dev/null differ diff --git a/accounting/payables/supplier_bills/media/bill03.png b/accounting/payables/supplier_bills/media/bill03.png deleted file mode 100644 index ccc2a4a1c..000000000 Binary files a/accounting/payables/supplier_bills/media/bill03.png and /dev/null differ diff --git a/accounting/payables/supplier_bills/media/purchase_receipts_draft.png b/accounting/payables/supplier_bills/media/purchase_receipts_draft.png new file mode 100644 index 000000000..583547d06 Binary files /dev/null and b/accounting/payables/supplier_bills/media/purchase_receipts_draft.png differ diff --git a/accounting/payables/supplier_bills/media/purchase_receipts_journal_items.png b/accounting/payables/supplier_bills/media/purchase_receipts_journal_items.png new file mode 100644 index 000000000..f0ac05d3e Binary files /dev/null and b/accounting/payables/supplier_bills/media/purchase_receipts_journal_items.png differ diff --git a/accounting/payables/supplier_bills/purchase_receipts.rst b/accounting/payables/supplier_bills/purchase_receipts.rst new file mode 100644 index 000000000..50650a3d7 --- /dev/null +++ b/accounting/payables/supplier_bills/purchase_receipts.rst @@ -0,0 +1,45 @@ +================= +Purchase Receipts +================= + +**Purchase Receipts** are not invoices but rather confirmations of received payments, such as a +ticket or a receipt. + +This feature is meant to be used when you pay directly with your company's money for an expense. +**Vendor Bills**, on the other hand, are recorded when an invoice is issued to you and that the +amount is first credited on a debt account before a later payment reconciliation. + +.. note:: + Expenses paid by employees can be managed with **Odoo Expenses**, an app dedicated to the + approval of such expenses and the payments management. Click :doc:`here + <../../../expense/expense>` for more information on how to use Odoo Expenses. + +Register a receipt +================== + +To record a new receipt, go to :menuselection:`Accounting --> Vendors --> Receipts`, click on +*Create*, fill out the form, and click on *Post*. + +.. image:: media/purchase_receipts_draft.png + :align: center + :alt: Fill out the draft purchase receipt in Odoo Accounting + +You can register the payment by clicking on *Register Payment*, then filling out the payment's +details, and clicking on *Validate*. + +Edit the Journal Entry before posting it +======================================== + +Once you have filled out the *Invoice Lines* tab, you can modify the **Journal Entry** before you +post it. + +To do so, click on the **Journal Items** tab, change the accounts and values according to your +needs, and click on *Post*. + +.. image:: media/purchase_receipts_journal_items.png + :align: center + :alt: Change the accounts used in the journal entry to record a purchase receipt. + +.. seealso:: + - :doc:`manage` + - :doc:`../../../expense/expense` \ No newline at end of file diff --git a/accounting/receivables/customer_invoices/cash_discounts.rst b/accounting/receivables/customer_invoices/cash_discounts.rst index 4dff8dfc0..d3f20f61c 100644 --- a/accounting/receivables/customer_invoices/cash_discounts.rst +++ b/accounting/receivables/customer_invoices/cash_discounts.rst @@ -65,4 +65,4 @@ match the payment with the two related journal entries. .. seealso:: * :doc:`../../receivables/customer_invoices/payment_terms` - * :doc:`../../bank/reconciliation/configure` + * :doc:`../../bank/reconciliation/reconciliation_models` \ No newline at end of file diff --git a/accounting/receivables/customer_invoices/epc_qr_code.rst b/accounting/receivables/customer_invoices/epc_qr_code.rst index 2c43837d4..c80376a4e 100644 --- a/accounting/receivables/customer_invoices/epc_qr_code.rst +++ b/accounting/receivables/customer_invoices/epc_qr_code.rst @@ -61,5 +61,5 @@ the EPC QR Code. under the *Other Info* tab of the invoice. .. seealso:: - * :doc:`../../bank/setup/create_bank_account` + * :doc:`../../bank/setup/bank_accounts` * `Odoo Academy: QR Code on Invoices for European Customers `_ \ No newline at end of file diff --git a/accounting/receivables/customer_invoices/media/discount01.png b/accounting/receivables/customer_invoices/media/discount01.png index 460460df2..4b99b92d6 100644 Binary files a/accounting/receivables/customer_invoices/media/discount01.png and b/accounting/receivables/customer_invoices/media/discount01.png differ diff --git a/accounting/receivables/customer_payments/batch_sdd.rst b/accounting/receivables/customer_payments/batch_sdd.rst index 3c76c3456..b71ba4e56 100644 --- a/accounting/receivables/customer_payments/batch_sdd.rst +++ b/accounting/receivables/customer_payments/batch_sdd.rst @@ -1,127 +1,153 @@ ======================================= Batch Payments: SEPA Direct Debit (SDD) ======================================= -SEPA, the Single Euro Payments Area, is a payment-integration -initiative of the European Union for simplification of bank transfers -denominated in EURO. With **SEPA Direct Debit**, your customers can -sign a **mandate** that authorizes you to collect future payments -from their bank accounts automatically. -You can record your customer mandates in Odoo, and generate XML -files containing pending payments made with an SDD mandate. +SEPA, the Single Euro Payments Area, is a payment-integration initiative of the European Union for +simplification of bank transfers denominated in EURO. With **SEPA Direct Debit**, your customers can +sign a **mandate** that authorizes you to collect future payments from their bank accounts. This is +particularly useful for recurring payments based on a subscription. + +You can record customer mandates in Odoo, and generate XML files containing pending payments made +with an SDD mandate. .. note:: - | SDD is supported by all SEPA countries, which includes the 28 member states of the European Union as well as additional countries. - | `List of all SEPA countries `_. + | SDD is supported by all SEPA countries, which includes the 27 member states of the European + Union as well as additional countries. + | `List of all SEPA countries + `_. Configuration ============= -Go to :menuselection:`Accounting --> Configuration --> Settings` -nd activate the **SEPA Direct Debit (SDD)** feature. Enter the -**Creditor Identifier** of your company. This number is provided -by your bank, or the authority responsible for delivering them. -.. image:: media/batch_sdd01.png +Go to :menuselection:`Accounting --> Configuration --> Settings`, activate **SEPA Direct Debit +(SDD)** and click on *Save*. Enter your company's **Creditor Identifier**. This number is provided +by your bank institution, or the authority responsible for delivering them. + +.. image:: media/batch-sdd-creditor-identifier.png :align: center + :alt: Add a SEPA Creditor Identifier to Odoo Accounting SEPA Direct Debit Mandates ========================== + Create a mandate ---------------- -The SEPA Direct Debit Mandate is the document that your customers -sign to authorize you to collect money directly from their bank accounts. -To create a new one, go to :menuselection:`Accounting --> Customers ---> Direct Debit Mandates`, click on *Create*, and fill out the -new mandate’s form. +The SEPA Direct Debit Mandate is the document that your customers sign to authorize you to collect +money directly from their bank accounts. -.. image:: media/batch_sdd02.png +To create a new mandate, go to :menuselection:`Accounting --> Customers --> Direct Debit Mandates`, +click on *Create*, and fill out the form. + +.. image:: media/batch-sdd-mandate-form.png :align: center + :alt: Fill out SEPA Direct Debit in Odoo Accounting -First, export the PDF file by clicking on *Print*. -It is then up to your customer to sign this document. -Once done, upload the signed file in the **Original Document** -field, and click on *Validate* to start running the mandate. +Export the PDF file by clicking on *Print*. It is then up to your customer to sign this document. +Once done, upload the signed file in the **Original Document** field, and click on *Validate* to +start running the mandate. -.. tip:: - First, make sure, that the **IBAN bank accounts details** - are correctly recorded on the debtor’s contact form, under - the *Accounting* tab, and in your own *Bank Account* settings. +.. important:: + Make sure that the **IBAN bank accounts details** are correctly recorded on the debtor’s contact + form, under the *Accounting* tab, and in your own :doc:`Bank Account + <../../bank/setup/bank_accounts>` settings. + +SEPA Direct Debit as a Payment Method +------------------------------------- + +SEPA Direct Debit can be used as a payment method both on your **eCommerce** or on the **Customer +Portal** by activating SDD as a **Payment Acquirer**. With this method, your customers can create +and sign their mandates themselves. + +To do so, go to :menuselection:`Accounting --> Configuration --> Payment Acquirers`, click on *SEPA +Direct Debit*, and set it up according to your needs. + +.. important:: + Make sure to change the **State** field to *Enabled*, and to check **Online Signature**, as this + is necessary to let your customers sign their mandates. + +Customers using SDD as payment method get prompted to add their IBAN, email address, and to sign +their SEPA Direct Debit mandate. + +.. todo:: + Add link to future **Payment Acquirer** documentation. Close or revoke a mandate ------------------------- -Direct Debit mandates are closed automatically after their *End Date*. -If this field is left blank, then the mandate keeps being *Active* -until it is *Closed* or *Revoked*. -.. image:: media/batch_sdd03.png +Direct Debit mandates are closed automatically after their *End Date*. If this field is left blank, +the mandate keeps being *Active* until it is *Closed* or *Revoked*. + +.. image:: media/batch-sdd-revoke-close.png :align: center + :alt: Close or Revoke an SDD Mandate in Odoo Accounting -Clicking on **Close** updates the mandate’s end day to the current day. -This means that invoices made after the present day won’t be processed -automatically with an SDD payment. +Clicking on **Close** updates the mandate’s end day to the current day. This means that invoices +issued after the present day will not be processed with an SDD payment. -Clicking on **Revoke** disables the mandate immediately. No SDD -payment can be registered anymore, regardless of the invoice’s date. -However, payments that have already been registered will still be -included to the next SDD XML file. +Clicking on **Revoke** disables the mandate immediately. No SDD payment can be registered anymore, +regardless of the invoice’s date. However, payments that have already been registered are still +included in the next SDD XML file. -.. note:: - Once a mandate has been *closed* or *revoked*, it cannot be reactivated. - If a customer requires to pay with SDD payments again, you will have - to create a new mandate from scratch. +.. warning:: + Once a mandate has been *closed* or *revoked*, it cannot be reactivated. Get paid with SDD Batch Payments ================================ + Customer Invoices ----------------- -All new posted invoice issued to customers with an active mandate -will automatically register payment and have their status marked as *Paid*. -.. tip:: - If you have unpaid invoices that could be paid with a new mandate, - it is still possible to do it. Go on the invoice, click on *Register Payment* - and choose *SEPA Direct Debit* as payment method. +You can register SDD payments for invoices issued to customers who have an active SDD mandate. + +To do so, open the invoice, click on *Register Payment*, and choose *SEPA Direct Debit* as payment +method. + +.. note:: + In previous versions, Odoo used SDD payment as the default payment for all customers with an + active mandate. Your customers can still activate automatic SDD for their subscriptions with a + recurring payment. Generate SEPA Direct Debit XML files to submit payments ------------------------------------------------------- -To submit your SDD payments to your bank, you will first generate an -**XML file** that can be uploaded directly to your bank interface. -The files generated by Odoo follow the SEPA Direct Debit **PAIN.008.001.02** -specifications as required by the SEPA customer-to-bank Implementation Guidelines, -which ensures compatibility with the banks. +**XML files** with all SDD payment instructions can be uploaded to your online banking interface to +process all payments at once. -To generate your XML file for the pending SDD payments, go to the related -*bank journal* on your *Accounting dashboard*, then click on -*Direct Debit Payments to Collect*. +.. note:: + The files generated by Odoo follow the SEPA Direct Debit **PAIN.008.001.02** specifications, as + required by the SEPA customer-to-bank Implementation Guidelines, which ensures compatibility with + the banks. -.. image:: media/batch_sdd04.png +To generate your XML file for the pending SDD payments, go to the related *bank journal* on your +*Accounting dashboard*, then click on *Direct Debit Payments to Collect*. + +.. image:: media/batch-sdd-collect.png :align: center + :alt: Start the SDD payments collection in Odoo Accounting -Select all the payments in the list that you want to include in -your SDD XML file, then click on *Action* and select *Create Batch Payment*. +Select all the payments you want to include in your SDD XML file, then click on *Action* and select +*Create Batch Payment*. -.. image:: media/batch_sdd05.png +.. image:: media/batch-sdd-batch.png :align: center + :alt: Create a batch payment with all the SDD payments in Odoo Accounting -Odoo then takes you to your *Batch Payment*’s form. Click on *Validate* -and then download the SDD XML file. +Odoo then takes you to your *Batch Payment*’s form. Click on *Validate* and download the SDD XML +file. -.. image:: media/batch_sdd06.png +.. image:: media/batch-sdd-xml.png :align: center + :alt: Generate an XML file for your SDD payments in Odoo Accounting -Finally, upload this file to your bank to process the payments. +Finally, upload this file to your online banking interface to process the payments. .. tip:: You can retrieve all the generated SDD XML files by going to :menuselection:`Accounting --> Configuration --> Customers --> Batch Payments`. .. seealso:: - * :doc:`../../bank/setup/create_bank_account` + * :doc:`../../bank/setup/bank_accounts` * `Odoo Academy: SEPA Direct Debit Mandates (SDD) `_ - * `List of all SEPA countries `_. - - - - + * `List of all SEPA countries + `_ \ No newline at end of file diff --git a/accounting/receivables/customer_payments/media/batch_sdd05.png b/accounting/receivables/customer_payments/media/batch-sdd-batch.png similarity index 100% rename from accounting/receivables/customer_payments/media/batch_sdd05.png rename to accounting/receivables/customer_payments/media/batch-sdd-batch.png diff --git a/accounting/receivables/customer_payments/media/batch_sdd04.png b/accounting/receivables/customer_payments/media/batch-sdd-collect.png similarity index 100% rename from accounting/receivables/customer_payments/media/batch_sdd04.png rename to accounting/receivables/customer_payments/media/batch-sdd-collect.png diff --git a/accounting/receivables/customer_payments/media/batch_sdd01.png b/accounting/receivables/customer_payments/media/batch-sdd-creditor-identifier.png similarity index 100% rename from accounting/receivables/customer_payments/media/batch_sdd01.png rename to accounting/receivables/customer_payments/media/batch-sdd-creditor-identifier.png diff --git a/accounting/receivables/customer_payments/media/batch_sdd02.png b/accounting/receivables/customer_payments/media/batch-sdd-mandate-form.png similarity index 100% rename from accounting/receivables/customer_payments/media/batch_sdd02.png rename to accounting/receivables/customer_payments/media/batch-sdd-mandate-form.png diff --git a/accounting/receivables/customer_payments/media/batch_sdd03.png b/accounting/receivables/customer_payments/media/batch-sdd-revoke-close.png similarity index 100% rename from accounting/receivables/customer_payments/media/batch_sdd03.png rename to accounting/receivables/customer_payments/media/batch-sdd-revoke-close.png diff --git a/accounting/receivables/customer_payments/media/batch_sdd06.png b/accounting/receivables/customer_payments/media/batch-sdd-xml.png similarity index 100% rename from accounting/receivables/customer_payments/media/batch_sdd06.png rename to accounting/receivables/customer_payments/media/batch-sdd-xml.png diff --git a/accounting/others/reporting.rst b/accounting/reporting.rst similarity index 57% rename from accounting/others/reporting.rst rename to accounting/reporting.rst index ab93506c8..fc464eb14 100644 --- a/accounting/others/reporting.rst +++ b/accounting/reporting.rst @@ -5,5 +5,5 @@ Reporting .. toctree:: :titlesonly: - reporting/main_reports - reporting/customize \ No newline at end of file + reporting/overview + reporting/declarations \ No newline at end of file diff --git a/accounting/reporting/declarations.rst b/accounting/reporting/declarations.rst new file mode 100644 index 000000000..4aabeb952 --- /dev/null +++ b/accounting/reporting/declarations.rst @@ -0,0 +1,8 @@ +============ +Declarations +============ + +.. toctree:: + :titlesonly: + + declarations/tax_returns \ No newline at end of file diff --git a/accounting/fiscality/taxes/media/tax_return_closing.png b/accounting/reporting/declarations/media/tax_return_closing.png similarity index 100% rename from accounting/fiscality/taxes/media/tax_return_closing.png rename to accounting/reporting/declarations/media/tax_return_closing.png diff --git a/accounting/fiscality/taxes/media/tax_return_grids.png b/accounting/reporting/declarations/media/tax_return_grids.png similarity index 100% rename from accounting/fiscality/taxes/media/tax_return_grids.png rename to accounting/reporting/declarations/media/tax_return_grids.png diff --git a/accounting/fiscality/taxes/media/tax_return_lock.png b/accounting/reporting/declarations/media/tax_return_lock.png similarity index 100% rename from accounting/fiscality/taxes/media/tax_return_lock.png rename to accounting/reporting/declarations/media/tax_return_lock.png diff --git a/accounting/fiscality/taxes/media/tax_return_overview.png b/accounting/reporting/declarations/media/tax_return_overview.png similarity index 100% rename from accounting/fiscality/taxes/media/tax_return_overview.png rename to accounting/reporting/declarations/media/tax_return_overview.png diff --git a/accounting/fiscality/taxes/media/tax_return_periodicity.png b/accounting/reporting/declarations/media/tax_return_periodicity.png similarity index 100% rename from accounting/fiscality/taxes/media/tax_return_periodicity.png rename to accounting/reporting/declarations/media/tax_return_periodicity.png diff --git a/accounting/fiscality/taxes/media/tax_return_report.png b/accounting/reporting/declarations/media/tax_return_report.png similarity index 100% rename from accounting/fiscality/taxes/media/tax_return_report.png rename to accounting/reporting/declarations/media/tax_return_report.png diff --git a/accounting/fiscality/taxes/media/tax_return_taxes.png b/accounting/reporting/declarations/media/tax_return_taxes.png similarity index 100% rename from accounting/fiscality/taxes/media/tax_return_taxes.png rename to accounting/reporting/declarations/media/tax_return_taxes.png diff --git a/accounting/fiscality/taxes/tax_returns.rst b/accounting/reporting/declarations/tax_returns.rst similarity index 93% rename from accounting/fiscality/taxes/tax_returns.rst rename to accounting/reporting/declarations/tax_returns.rst index 47588ec8c..a3a5822d5 100644 --- a/accounting/fiscality/taxes/tax_returns.rst +++ b/accounting/reporting/declarations/tax_returns.rst @@ -60,7 +60,9 @@ grids that are used to record invoices or credit notes. .. note:: Taxes and reports are usually already pre-configured: a *Fiscal Localization Package* is - installed according to the country you select at the creation of your database. + installed according to the country you select at the creation of your database. :doc:`Click here + <../../fiscal_localizations/overview/fiscal_localization_packages>` for more information about + Fiscal Localization Packages. .. _tax_return_lock: @@ -118,5 +120,6 @@ with the amount you have to pay or be refunded. above. .. seealso:: - * :doc:`create` - * :doc:`../../overview/getting_started/setup` \ No newline at end of file + * :doc:`../../fiscality/taxes/create` + * :doc:`../../overview/getting_started/setup` + * :doc:`../../fiscal_localizations/overview/fiscal_localization_packages` \ No newline at end of file diff --git a/accounting/reporting/overview.rst b/accounting/reporting/overview.rst new file mode 100644 index 000000000..8c2de9e49 --- /dev/null +++ b/accounting/reporting/overview.rst @@ -0,0 +1,9 @@ +======== +Overview +======== + +.. toctree:: + :titlesonly: + + overview/main_reports + overview/customize \ No newline at end of file diff --git a/accounting/others/reporting/customize.rst b/accounting/reporting/overview/customize.rst similarity index 100% rename from accounting/others/reporting/customize.rst rename to accounting/reporting/overview/customize.rst diff --git a/accounting/others/reporting/main_reports.rst b/accounting/reporting/overview/main_reports.rst similarity index 100% rename from accounting/others/reporting/main_reports.rst rename to accounting/reporting/overview/main_reports.rst diff --git a/accounting/others/reporting/media/customize02.png b/accounting/reporting/overview/media/customize02.png similarity index 100% rename from accounting/others/reporting/media/customize02.png rename to accounting/reporting/overview/media/customize02.png diff --git a/accounting/others/reporting/media/customize04.png b/accounting/reporting/overview/media/customize04.png similarity index 100% rename from accounting/others/reporting/media/customize04.png rename to accounting/reporting/overview/media/customize04.png diff --git a/accounting/others/reporting/media/main_reports01.png b/accounting/reporting/overview/media/main_reports01.png similarity index 100% rename from accounting/others/reporting/media/main_reports01.png rename to accounting/reporting/overview/media/main_reports01.png diff --git a/accounting/others/reporting/media/main_reports02.png b/accounting/reporting/overview/media/main_reports02.png similarity index 100% rename from accounting/others/reporting/media/main_reports02.png rename to accounting/reporting/overview/media/main_reports02.png diff --git a/accounting/others/reporting/media/main_reports03.png b/accounting/reporting/overview/media/main_reports03.png similarity index 100% rename from accounting/others/reporting/media/main_reports03.png rename to accounting/reporting/overview/media/main_reports03.png diff --git a/accounting/others/reporting/media/main_reports04.png b/accounting/reporting/overview/media/main_reports04.png similarity index 100% rename from accounting/others/reporting/media/main_reports04.png rename to accounting/reporting/overview/media/main_reports04.png diff --git a/accounting/others/reporting/media/main_reports05.png b/accounting/reporting/overview/media/main_reports05.png similarity index 100% rename from accounting/others/reporting/media/main_reports05.png rename to accounting/reporting/overview/media/main_reports05.png diff --git a/accounting/others/reporting/media/main_reports06.png b/accounting/reporting/overview/media/main_reports06.png similarity index 100% rename from accounting/others/reporting/media/main_reports06.png rename to accounting/reporting/overview/media/main_reports06.png diff --git a/accounting/others/reporting/media/main_reports07.png b/accounting/reporting/overview/media/main_reports07.png similarity index 100% rename from accounting/others/reporting/media/main_reports07.png rename to accounting/reporting/overview/media/main_reports07.png diff --git a/accounting/others/reporting/media/main_reports08.png b/accounting/reporting/overview/media/main_reports08.png similarity index 100% rename from accounting/others/reporting/media/main_reports08.png rename to accounting/reporting/overview/media/main_reports08.png diff --git a/accounting/others/reporting/media/main_reports09.png b/accounting/reporting/overview/media/main_reports09.png similarity index 100% rename from accounting/others/reporting/media/main_reports09.png rename to accounting/reporting/overview/media/main_reports09.png diff --git a/accounting/others/reporting/media/main_reports10.png b/accounting/reporting/overview/media/main_reports10.png similarity index 100% rename from accounting/others/reporting/media/main_reports10.png rename to accounting/reporting/overview/media/main_reports10.png diff --git a/applications.rst b/applications.rst index f605376ae..2c3a86ba6 100644 --- a/applications.rst +++ b/applications.rst @@ -2,35 +2,79 @@ Applications ============ -.. toctree:: - :titlesonly: - - accounting +.. ORDER (new apps / sections included): + general + discuss crm sales - website - ecommerce - discuss purchase + rental + accounting + consolidation + subscription + project + timesheets + planning + bi + documents + fsm + point_of_sale inventory manufacturing quality - point_of_sale - project + barcode + iot + website + ecommerce + elearning helpdesk live_chat - expense/expense - iot - mobile/firebase - events + email_marketing social_marketing sms_marketing marketing_automation + events survey - fsm - planning - email_marketing + employees + recruitment + referrals + leaves + expenses + appraisals + fleet + approvals + lunch + studio + mobile + misc + +.. toctree:: + :titlesonly: general - -.. Leave general on the last line ! \ No newline at end of file + discuss + crm + sales + purchase + accounting + project + timesheets + planning + fsm + point_of_sale + inventory + manufacturing + quality + iot + website + ecommerce + helpdesk + live_chat + email_marketing + social_marketing + sms_marketing + marketing_automation + events + survey + expense/expense + mobile/firebase \ No newline at end of file diff --git a/contributing/documentation.rst b/contributing/documentation.rst index e91e241a9..2c33101da 100644 --- a/contributing/documentation.rst +++ b/contributing/documentation.rst @@ -9,4 +9,5 @@ Contributing to the documentation documentation/introduction_guide documentation/rst_cheat_sheet - documentation/guidelines \ No newline at end of file + documentation/rst_guidelines + documentation/content_guidelines \ No newline at end of file diff --git a/contributing/documentation/content_guidelines.rst b/contributing/documentation/content_guidelines.rst new file mode 100644 index 000000000..18185b1f4 --- /dev/null +++ b/contributing/documentation/content_guidelines.rst @@ -0,0 +1,181 @@ +:banner: banners/contributing.png + +================== +Content guidelines +================== + +To give the community the best documentation possible, we listed here a few guidelines, tips and +tricks that will make your content shine at its brightest! While we encourage you to adopt your own +writing style, some rules still apply to give the reader more clarity and comprehension. + +.. note:: + We strongly recommend contributors to carefully read the other documents in this *Contribution* + section of the documentation. Good knowledge of the ins and outs of **RST writing** is required + to write and submit your contribution. Note that it also affects your writing style itself. + + - :doc:`introduction_guide` + - :doc:`rst_cheat_sheet` + - :doc:`rst_guidelines` + +.. _contributing/writing-style: + +Writing style +============= + +**Writing for documentation** isn't the same as writing for a blog or another medium. Readers are +more likely to skim read until they've found the information they are looking for. Keep in mind that +the user documentation is a place to inform and describe, not to convince and promote. + +.. _contributing/consistency: + +Consistency +----------- + +*Consistency is key to everything.* + +Make sure that your writing style remains **consistent**. If you modify an existing text, try to +match the existing tone and presentation, or rewrite it to match your own style. + +.. _contributing/grammatical-tenses: + +Grammatical tenses +------------------ + +In English, descriptions and instructions require the use of a **Present Tense**, while a *future +tense* is appropriate only when a specific event is to happen ulteriorly. This logic might be +different in other languages. + +- | Good example (present): + | *Screenshots are automatically resized to fit the content block's width.* +- | Bad example (future): + | *When you take a screenshot, remember that it will be automatically resized to fit the content + block's width.* + +.. _contributing/paragraphing: + +Paragraphing +------------ + +A paragraph comprises several sentences that are linked by a shared idea. They usually are two to +six lines long. + +In English, a new idea implies a new paragraph, rather than having a *line break* as it is common to +do in some other languages. *Line breaks* are useful for layout purposes but shouldn't be used as a +grammatical way of separating ideas. + +.. seealso:: + - :ref:`RST cheat sheet: Break the line but not the paragraph ` + +.. _contributing/titles: + +Titles +------ + +To write a good title : + +- **Be concise.** +- **Avoid sentences**, questions, and titles starting with "how to." +- **Don't use pronouns** in your titles, especially 2nd person (*your*) + +.. _contributing/document-structure: + +Document's structure +==================== + +Use different **headings levels** to organize your text by sections and sub-sections. Your headings +are also displayed in a dynamic *navigation bar* on the side. + ++---------------------------------------------------------------------------------------+ +| | **H1: Page Title** | +| | Your *page title* gives your reader a quick and clear understanding of what your | +| content is about. It is also referenced in the section's *table of contents*. | +| | +| The *content* in this section describes the upcoming content from a **business point | +| of view**, and shouldn't put the emphasis on Odoo, as this is documentation and not | +| marketing. | +| | +| Start first with a **Lead Paragraph**, which helps the reader make sure that they've | +| found the right page, then explain the **business aspects of this topic** in the | +| following paragraphs. | ++-----+---------------------------------------------------------------------------------+ +| | | **H2: Section Title (configuration)** | +| | | This first H2 section is about the configuration of the feature, or the | +| | prerequisites to achieve a specific goal. To add a path, make sure you | +| | use the ``:menuselection:`` specialized directive (see link below). | +| | | +| | | Example: | +| | | To do so, go to ``:menuselection:`App name --> Menu --> Sub-menu```, and | +| | enable the XYZ feature. | ++-----+---------------------------------------------------------------------------------+ +| | | **H2: Section Title (main sections)** | +| | | Create as many main sections as you have actions or features to distinguish. | +| | The title can start with a verb, but try to avoid using "Create ...". | ++-----+-----+---------------------------------------------------------------------------+ +| | | | **H3: Subsection** | +| | | | Subsections are perfect for assessing very specific points. The title | +| | | can be in the form of a question, if appropriate. | ++-----+-----+---------------------------------------------------------------------------+ +| | **H2: Next Section** | ++-----+---------------------------------------------------------------------------------+ + +.. seealso:: + - :ref:`RST cheat sheet: headings ` + - :ref:`RST cheat sheet: specialized directives ` + +.. _contributing/content-images: + +Images +====== + +Adding a few images to illustrate your text helps the readers to understand and memorize your +content. However, avoid adding too many images: it isn't necessary to illustrate all steps and +features, and it may overload your page. + +.. important:: + Don't forget to :ref:`compress your PNG files with pngquant `. + +.. _contributing/screenshots: + +Screenshots +----------- + +Screenshots are automatically resized to fit the content block's width. This implies that +screenshots can't be too wide, else they would appear very small on-screen. Therefore, we recommend +to avoid to take screenshots of a full screen display of the app, unless it is relevant to do so. + +A few tips to improve your screenshots: + +#. **Zoom** in your browser. We recommend a 110% zoom for better results. +#. **Resize** your browser's width, either by *resizing the window* itself or by opening the + *browser's developer tools* (press the ``F12`` key) and resizing the width. +#. **Select** the relevant area, rather than keeping the full window. +#. If necessary, you can **edit** the screenshot to remove unnecessary fields and to narrow even + more Odoo's display. + +.. image:: media/screenshot-tips.gif + :align: center + :alt: Three tips to take good screenshots for the Odoo documentation. + +.. note:: + Resizing the window's width is the most important step to do as Odoo's responsive design + automatically resizes all fields to match the window's width. + +.. _contributing/alt-tags: + +ALT tags +-------- + +An **ALT tag** is a *text alternative* to an image. This text is displayed if the browser fails to +render the image. It is also helpful for users who are visually impaired. Finally, it helps +search engines, such as Google, to understand what the image is about and index it correctly, which +improves the :abbr:`SEO (Search Engine Optimization)` significantly. + +Good ALT tags are: + +- **Short** (one line maximum) +- **Not a repetition** of a previous sentence or title +- A **good description** of the action happening on the image +- Easily **understandable** if read aloud + +.. seealso:: + - :ref:`RST cheat sheet: image directive ` \ No newline at end of file diff --git a/contributing/documentation/introduction_guide.rst b/contributing/documentation/introduction_guide.rst index cadac2cb3..2e871866f 100644 --- a/contributing/documentation/introduction_guide.rst +++ b/contributing/documentation/introduction_guide.rst @@ -32,13 +32,15 @@ If you need to learn about a specific markup, head over to :doc:`our cheat sheet documentation of Odoo. .. important:: - We kindly ask you to observe a set of :doc:`guidelines ` as you write :abbr:`RST - (reStructuredText)`. This ensures that you stay consistent with the rest of the documentation and - facilitates the approval of your content changes as they are reviewed by a redactor at Odoo. + We kindly ask you to observe a set of :doc:`content ` and :doc:`RST + ` guidelines as you write documentation. This ensures that you stay consistent + with the rest of the documentation and facilitates the approval of your content changes as they + are reviewed by a redactor at Odoo. .. seealso:: - :doc:`rst_cheat_sheet` - - :doc:`guidelines` + - :doc:`rst_guidelines` + - :doc:`content_guidelines` .. _contributing/getting-started: @@ -81,7 +83,8 @@ Use the GitHub interface .. image:: media/fork-repository.png -#. Make the appropriate changes while taking care of following the :doc:`guidelines `. +#. Make the appropriate changes while taking care of following the :doc:`guidelines + `. #. Click on the **Preview changes** button to review your contribution in a more human-readable format. Be aware that the preview is not able to handle all markups correctly. Notes and tips, @@ -307,7 +310,7 @@ Perform your changes You can now perform any change you want to the documentation files. These changes must be compliant with :abbr:`RST (reStructuredText)` syntax (see :doc:`rst_cheat_sheet`) and with our -:doc:`guidelines `. +:doc:`guidelines `. .. important:: If your changes include the addition of a new image, for instance :file:`my_image.png`, proceed diff --git a/contributing/documentation/media/screenshot-max-width.png b/contributing/documentation/media/screenshot-max-width.png new file mode 100644 index 000000000..912aac521 Binary files /dev/null and b/contributing/documentation/media/screenshot-max-width.png differ diff --git a/contributing/documentation/media/screenshot-tips.gif b/contributing/documentation/media/screenshot-tips.gif new file mode 100644 index 000000000..c113e2daa Binary files /dev/null and b/contributing/documentation/media/screenshot-tips.gif differ diff --git a/contributing/documentation/guidelines.rst b/contributing/documentation/rst_guidelines.rst similarity index 99% rename from contributing/documentation/guidelines.rst rename to contributing/documentation/rst_guidelines.rst index 6e890126e..9c37303a7 100644 --- a/contributing/documentation/guidelines.rst +++ b/contributing/documentation/rst_guidelines.rst @@ -1,8 +1,8 @@ :banner: banners/contributing.png -========== -Guidelines -========== +============== +RST guidelines +============== .. _contributing/relative-links: diff --git a/db_management/db_online.rst b/db_management/db_online.rst index d26f0d682..f9f89d399 100644 --- a/db_management/db_online.rst +++ b/db_management/db_online.rst @@ -117,7 +117,7 @@ receive an e-mail with the URL of the test database. Even though we test all upgrades manually, we do not know your work processes. A change in standard worfklows of Odoo in new versions might require you to change internal processes, or some of the customizations you made through Odoo -Studio might now work properly. *It is up to you to make sure that everything +Studio might not work properly. *It is up to you to make sure that everything works as it should!* You can report issues with your test database through our `Support page `__. diff --git a/discuss.rst b/discuss.rst index 1ef6461f4..e977c732d 100644 --- a/discuss.rst +++ b/discuss.rst @@ -14,4 +14,5 @@ Discuss discuss/team_communication discuss/plan_activities discuss/mail_twitter - discuss/email_servers \ No newline at end of file + discuss/email_servers + discuss/advanced \ No newline at end of file diff --git a/discuss/advanced.rst b/discuss/advanced.rst new file mode 100644 index 000000000..ad2b0b857 --- /dev/null +++ b/discuss/advanced.rst @@ -0,0 +1,9 @@ +======== +Advanced +======== + +.. toctree:: + :titlesonly: + :glob: + + advanced/emailtemplate \ No newline at end of file diff --git a/discuss/advanced/emailtemplate.rst b/discuss/advanced/emailtemplate.rst new file mode 100644 index 000000000..8f69a5488 --- /dev/null +++ b/discuss/advanced/emailtemplate.rst @@ -0,0 +1,59 @@ +=============== +Email Templates +=============== + +We all know writing good emails is vital to get a high response rate, but you do not want to +rewrite the same structure every time, do you? That is where email templates come in. +Without the need to rewrite the entire email structure every time, you save time to focus on +the content. Multiple templates also let you deliver the right message to the right audience, +improving their overall experience with the company. + +Enable it and understand a few concepts +======================================= + +The :doc:`Developer mode <../../general/developer_mode/activate>` must be activated. Then, go to +:menuselection:`Settings --> Technical --> Templates`. A view of the existing templates is shown. + +.. warning:: + **It is highly recommended not to change the content in existing templates unless the user has + prior knowledge about placeholders.** + +To add a new one, click on *Create* and choose the type of document this template is used with. In +the example below, the template would be sent to job applicants. + +.. image:: media/newtemplate.png + :align: center + :alt: New email template form in Odoo + +| Under *Email Configuration*, fields such as *From*, *To (Emails)*, *To (Partners)*, require + placeholders. If the *From* field is not set, the default value is the author’s email alias, if + configured, or email address. +| Under *Advanced Settings*, if an *Outgoing Mail Server* is not set, the one with the highest + priority is used. +| The option *Auto Delete* permanently deletes the emails after they are sent, saving space in your + database. + +Writing content including placeholder expressions +------------------------------------------------- + +Under the tab *Dynamic Placeholder Generator*, look for the *Field* you would like to use. + +.. image:: media/placeholders.png + :align: center + :alt: View of the dynamic placeholder generator tab under a new template in Odoo + +Next, copy the *Placeholder Expression* and paste it in the *Body* of the email, under the *Content* +tab, using - essentially - the *Code View*. + +.. image:: media/codeview.png + :align: center + :alt: View of the body code view under the content tab in Odoo + +Deactivate the *Code View* option by simply clicking on it again, and easily design the message. +Click on *Preview* to check how the email looks before sending it. + +.. image:: media/preview.png + :align: center + :alt: View of the content with the standard body view in Odoo + + diff --git a/discuss/advanced/media/codeview.png b/discuss/advanced/media/codeview.png new file mode 100644 index 000000000..5d241d110 Binary files /dev/null and b/discuss/advanced/media/codeview.png differ diff --git a/discuss/advanced/media/newtemplate.png b/discuss/advanced/media/newtemplate.png new file mode 100644 index 000000000..abb091804 Binary files /dev/null and b/discuss/advanced/media/newtemplate.png differ diff --git a/discuss/advanced/media/placeholders.png b/discuss/advanced/media/placeholders.png new file mode 100644 index 000000000..c75425f79 Binary files /dev/null and b/discuss/advanced/media/placeholders.png differ diff --git a/discuss/advanced/media/preview.png b/discuss/advanced/media/preview.png new file mode 100644 index 000000000..399b66062 Binary files /dev/null and b/discuss/advanced/media/preview.png differ diff --git a/ecommerce/shopper_experience/paypal.rst b/ecommerce/shopper_experience/paypal.rst index 9aabfd3ed..8c79f0887 100644 --- a/ecommerce/shopper_experience/paypal.rst +++ b/ecommerce/shopper_experience/paypal.rst @@ -135,8 +135,8 @@ Credentials Odoo requires three Paypal credentials: - *Email ID* is your login email address in Paypal. -- *Merchant ID* can be found in the settings of your Paypal account, in :menuselection:`Profile --> - About the business`. +- *Merchant ID* can be found in the settings of your Paypal account, in + :menuselection:`Account Settings --> Business information`. - *Paypal PDT Token* is given in *Website payments* configuration as explained here above. .. image:: media/paypal09.png diff --git a/email_marketing/overview/mailing_lists.rst b/email_marketing/overview/mailing_lists.rst index a024f5687..75e58caec 100644 --- a/email_marketing/overview/mailing_lists.rst +++ b/email_marketing/overview/mailing_lists.rst @@ -1,16 +1,17 @@ ======================= Work with Mailing Lists ======================= -Mailing lists could be a goldmine for your company’s marketing department as they can provide leads + +Mailing lists can be a goldmine for your company’s marketing department as they can provide leads for sales, focus groups for testing new products, and consumers to provide feedback on satisfaction, for example. -Create Mailing lists -===================== +Create mailing lists +==================== + Go to :menuselection:`Mailing lists --> Mailing lists --> Create`. Enable the option *Is Public* to make the list visible for users when unsubscribing. - .. image:: media/mailing1.png :align: center :alt: Mailing lists in Odoo Email Marketing @@ -18,32 +19,28 @@ make the list visible for users when unsubscribing. Once your mailing list is created, you can manually add contacts clicking on *Create*. *Import* a list of contacts if you have it from a previous tool. - Linking a mailing list to my website ------------------------------------- + | Create a mailing list called Newsletter, as you use this strategy to advertise and communicate new ideas to subscribers interested in listening. | Go to your *Website*, add a *Newsletter* block and choose the respective mailing list. - .. image:: media/mailing2.png :align: center :alt: Mailing lists in Odoo Email Marketing +Contacts +-------- -Check all the contacts of your mailing list(s) ----------------------------------------------- Under :menuselection:`Mailing Lists --> Mailing List Contacts` see a list of all contacts under all your mailing lists, and the ones you individually created here. - .. image:: media/mailing3.png :align: center :alt: Mailing lists in Odoo Email Marketing - -Open a contact to see or add different mailing lists to which the contact is or will be part of. - +Open a contact form to see or add different mailing lists to which the contact is or will be part of. .. image:: media/mailing4.png :align: center diff --git a/email_marketing/overview/manage_unsubscriptions.rst b/email_marketing/overview/manage_unsubscriptions.rst index 31c223b4d..722f6736c 100644 --- a/email_marketing/overview/manage_unsubscriptions.rst +++ b/email_marketing/overview/manage_unsubscriptions.rst @@ -1,33 +1,33 @@ ==================================== Manage Unsubscriptions and Blacklist ==================================== + It is best practice, and legally required, to allow recipients to unsubscribe from mailing lists as you do not want your audience to think that your company is using any tactics that are dishonest or spammy. Enable the Blacklist feature ============================ -Go to :menuselection:`Configuration --> Settings` and enable the option *Blacklist Option when -unsubscribing*. +Go to :menuselection:`Configuration --> Settings` and enable the option *Blacklist Option when +Unsubscribing*. .. image:: media/manage1.png :align: center :alt: Blacklist in Odoo Email Marketing -Now, once the user clicks on the *Unsubscribe* link on your email, he will be redirected to the +Now, once the user clicks on the *Unsubscribe* link on your email, he is redirected to the following page: -.. note:: - After clicking the unsubscribe button when using the test feature, you will be sent to - an error page (error 403 - Access Denied). If you want to be sure the link is working properly, - you should create your mass mail and then send it only to a personal email. - .. image:: media/manage2.png :align: center :height: 350 :alt: Blacklist in Odoo Email Marketing +.. note:: + After clicking on the unsubscribe button when using the test feature, you are sent to + an error page (*error 403 - Access Denied*). If you want to be sure the link is working properly, + create your mass mail and send it only to a personal email. In addition to having the option of unsubscribing from specific mailing lists, the user can also blacklist himself, meaning that he will not receive *any* more emails from you. @@ -35,16 +35,13 @@ blacklist himself, meaning that he will not receive *any* more emails from you. .. note:: The mailing list has to be configured as *Public* in order to be visible for users. - -| Under :menuselection:`Configuration --> Blacklist`, blacklisted email addresses will be shown. +| Under :menuselection:`Configuration --> Blacklist`, blacklisted email addresses are shown. | When opening the record, as a *Log note*, a description-history is kept. .. image:: media/manage3.png :align: center :alt: Blacklist in Odoo Email Marketing - .. seealso:: - :doc:`send_emails` - - :doc:`mailing_lists` \ No newline at end of file diff --git a/email_marketing/overview/media/mailing1.png b/email_marketing/overview/media/mailing1.png index 226e25abc..d5773801d 100644 Binary files a/email_marketing/overview/media/mailing1.png and b/email_marketing/overview/media/mailing1.png differ diff --git a/email_marketing/overview/media/mailing3.png b/email_marketing/overview/media/mailing3.png index b4ac5db65..a839f2c5d 100644 Binary files a/email_marketing/overview/media/mailing3.png and b/email_marketing/overview/media/mailing3.png differ diff --git a/email_marketing/overview/send_emails.rst b/email_marketing/overview/send_emails.rst index bc1f4ddcc..a98add5b5 100644 --- a/email_marketing/overview/send_emails.rst +++ b/email_marketing/overview/send_emails.rst @@ -1,52 +1,46 @@ ========================================== Send Emails Marketing and Manage Campaigns ========================================== + Emails allow you to effectively, and at a low cost, reach a large number of consumers while being able to customize your message in a way that resonates with them. It is measurable, and a call-to-action oriented channel. Choose the right target and create the message ============================================== -| Go to :menuselection:`Mailings --> Create`. -| Choosing *Contacts*, for example, as *Recipients*, will allow you to add specifications to match - just certain contacts, filtering your target. +| Go to :menuselection:`Mailings --> Create`. +| Choosing *Contacts* as *Recipients* (for example), allows you to add specifications to match + just certain contacts, filtering your target. .. image:: media/sendemails1.png :align: center :alt: Send mass mailing in Odoo Email Marketing - .. note:: With a trial databases, you have a limit of 50 emails per day; on Odoo SH Cloud Platform the limit is 200. There is a possibility to increase these numbers by contacting Odoo Support. To contact Support, `click here `_. - Under *Mail Body*, choose a layout and make the modifications needed by dragging, dropping and double-clicking on content. Note that it is possible to start from scratch selecting the *blank* template option. - .. image:: media/sendemails2.png :align: center :alt: Send mass mailing in Odoo Email Marketing - | Under *Settings*, you can assign someone else as the responsible sender if you do not want it to be you. To do so, change the email address used as the sender (*Send From*). - | With the *Reply To* radio button, you can also choose to gather answers either on the respective recipients’ records or on a specific email address. Note that this option is not available if you - target mailing contacts, a mailing list or contacts as recipients. - + target mailing contacts or contacts as recipients. .. image:: media/sendemails3.png :align: center :height: 400 :alt: Send mass mailing in Odoo Email Marketing - Test, send or schedule a mailing ================================ @@ -55,45 +49,39 @@ Test, send or schedule a mailing :height: 350 :alt: Send mass mailing in Odoo Email Marketing - -| *Save*: the work will be allocated in the *draft* column in the kanban view. Modifications can be - made while being in this stage. The option *Discard* will delete the email. - +| *Save*: the work is allocated in the *draft* column in the Kanban view. Modifications can be + made while being in this stage. The option *Discard* deletes the email. | Click on *Test* and send your message to one, or even multiple, test contacts to avoid errors. - -| *Send* will trigger the email with the next run and put the work on the *queue* column in the - kanban view. - -| *Schedule* allows you to choose a date and time and will put the email in the *queue* column in - the kanban view. +| *Send* triggers the email with the next run and put the work on the *queue* column in the + Kanban view. +| *Schedule* allows you to choose a date and time, and puts the email in the *queue* column in + the Kanban view. .. note:: - The daily limit is applied for *all emails* sent, in other words, throughout all applications. + The daily limit is applied for **all emails** sent, in other words, throughout all applications. Therefore, if at the end of the day you have remaining ones to be sent, note that they *will not* - be sent automatically the next day. You will need to force that by opening the email and + be sent automatically the next day. You need to force that by opening the email and clicking on *Retry*. - Manage campaigns ================ + | Go to :menuselection:`Configuration --> Settings` and enable *Mailing Campaigns*. | The campaign option is effective as it allows you to organize your marketing efforts and have a centralized view of its metrics. | Go to *Campaign* and click on *Create* to start one. - .. image:: media/sendemails5.png :align: center :height: 300 :alt: manage campaigns in Odoo Email Marketing - .. note:: If you use the SMS and Social Marketing applications, as well as the Push Notification feature, - you will see the option to create content for those channels. You will also see the *Campaign* + you see the option to create content for those channels. You also see the *Campaign* menu within those applications. All of this is possible because the applications work integrated. - .. seealso:: - :doc:`../../discuss/email_servers` + - :doc:`../../social_marketing/overview/campaigns` diff --git a/events/integrations/media/int2.png b/events/integrations/media/int2.png index d75572d72..28a84ff52 100644 Binary files a/events/integrations/media/int2.png and b/events/integrations/media/int2.png differ diff --git a/events/integrations/media/int3.png b/events/integrations/media/int3.png index 5ca6d308d..4794f4cea 100644 Binary files a/events/integrations/media/int3.png and b/events/integrations/media/int3.png differ diff --git a/events/integrations/media/int5.png b/events/integrations/media/int5.png index f67162d00..34c94e88f 100644 Binary files a/events/integrations/media/int5.png and b/events/integrations/media/int5.png differ diff --git a/fsm/helpdesk/plan_onsite.rst b/fsm/helpdesk/plan_onsite.rst index cc797b55b..53cc68acc 100644 --- a/fsm/helpdesk/plan_onsite.rst +++ b/fsm/helpdesk/plan_onsite.rst @@ -10,6 +10,8 @@ Go to :menuselection:`Helpdesk --> Configuration --> Helpdesk Teams --> Edit` an :menuselection:`Onsite Interventions --> Save`. .. image:: media/po1.png + :align: center + :height: 400 :alt: Tasks from tickets in Odoo Field Service Now once your helpdesk team needs, they have the option to *Plan Intervention* from tickets. diff --git a/fsm/overview/manage_employees_schedule.rst b/fsm/overview/manage_employees_schedule.rst index d10d78781..772f40578 100644 --- a/fsm/overview/manage_employees_schedule.rst +++ b/fsm/overview/manage_employees_schedule.rst @@ -39,4 +39,4 @@ person he can be assigned. Create projects per team, or per working site, and have a more accurate and dynamic database. .. seealso:: - * :doc:`../../project/configuration/setup` + * :doc:`../../project/overview/setup` diff --git a/fsm/overview/media/im1.png b/fsm/overview/media/im1.png index b3e37e7c0..cfb02d044 100644 Binary files a/fsm/overview/media/im1.png and b/fsm/overview/media/im1.png differ diff --git a/fsm/overview/media/im3.png b/fsm/overview/media/im3.png index 8464523fb..2035c0ab7 100644 Binary files a/fsm/overview/media/im3.png and b/fsm/overview/media/im3.png differ diff --git a/fsm/overview/media/kts1.png b/fsm/overview/media/kts1.png index 6f016f905..5c128e8f2 100644 Binary files a/fsm/overview/media/kts1.png and b/fsm/overview/media/kts1.png differ diff --git a/fsm/overview/media/kts2.png b/fsm/overview/media/kts2.png index 8fc115326..a19846e38 100644 Binary files a/fsm/overview/media/kts2.png and b/fsm/overview/media/kts2.png differ diff --git a/fsm/sales/create_quotations.rst b/fsm/sales/create_quotations.rst index e0d75d735..32dc16f77 100644 --- a/fsm/sales/create_quotations.rst +++ b/fsm/sales/create_quotations.rst @@ -16,6 +16,8 @@ First, go to :menuselection:`Field Service --> Configuration --> Settings` and e Second, go to :menuselection:`Configuration --> Projects` and enable *Extra Quotations*. .. image:: media/cq2.png + :align: center + :height: 400 :alt: Create quotations in Odoo Field Service You can now create *New Quotations* directly from your tasks. diff --git a/fsm/worksheets/media/cc3.png b/fsm/worksheets/media/cc3.png index d5de92202..8acff73c2 100644 Binary files a/fsm/worksheets/media/cc3.png and b/fsm/worksheets/media/cc3.png differ diff --git a/general/auth/google_spreadsheets.rst b/general/auth/google_spreadsheets.rst index 540c378aa..bb09ebd14 100644 --- a/general/auth/google_spreadsheets.rst +++ b/general/auth/google_spreadsheets.rst @@ -51,6 +51,13 @@ Applications You have 2 different formulas of using Google Spreadsheet in Odoo: retrieve data and retrieve grouped sums. +.. warning:: + Google Drive limits the execution time of scripts; if the data you requested takes + too long to be delivered, you might get an error. There is no specific size limit, since the + time for Odoo to respond depends on several factors - although reading data regarding several + thousand records is usually fine. + + Retrieve Data ------------- diff --git a/general/developer_mode/media/monkey.png b/general/developer_mode/media/monkey.png index dd421e4ac..bf96b34e6 100644 Binary files a/general/developer_mode/media/monkey.png and b/general/developer_mode/media/monkey.png differ diff --git a/helpdesk.rst b/helpdesk.rst index 232627499..6b189c349 100644 --- a/helpdesk.rst +++ b/helpdesk.rst @@ -7,8 +7,6 @@ Helpdesk .. toctree:: :titlesonly: - helpdesk/getting_started - helpdesk/invoice_time - helpdesk/after_sales - helpdesk/close_tickets - helpdesk/reinvoice_from_project + helpdesk/overview + helpdesk/timesheet_and_invoice + helpdesk/advanced diff --git a/helpdesk/advanced.rst b/helpdesk/advanced.rst new file mode 100644 index 000000000..2edc57cc9 --- /dev/null +++ b/helpdesk/advanced.rst @@ -0,0 +1,9 @@ +======== +Advanced +======== + +.. toctree:: + :titlesonly: + + advanced/after_sales + advanced/close_tickets \ No newline at end of file diff --git a/helpdesk/advanced/after_sales.rst b/helpdesk/advanced/after_sales.rst new file mode 100644 index 000000000..1ad8917ac --- /dev/null +++ b/helpdesk/advanced/after_sales.rst @@ -0,0 +1,69 @@ +==================== +After Sales Features +==================== + +As your business grows, having the right tool to support your helpdesk team on recording, tracking +and managing issues raised easy and efficiently, is key. Odoo’s Helpdesk application allows you to +generate credit notes, manage returns, products, repairs, grant coupons, and even plan onsite +interventions from a ticket’s page. + +Set up the after sales services +=============================== + +Go to :menuselection:`Helpdesk --> Configuration --> Helpdesk Teams` and enable the after sales +options: *Refunds, Returns, Coupons, Repairs and Onsite Interventions*. + +.. image:: ./media/aftersales1.png + :align: center + +Generate credit notes from tickets +---------------------------------- + +You can use a credit note to refund a customer or adjust the amount due. For that, simply go to +your ticket page, click on *Refund* and select the corresponding *Invoice*. Clicking on *Reverse* +generates a credit note, and you can *Post* it while still being in the *Helpdesk* app. + +.. image:: ./media/aftersales2.png + :align: center + +Allow product returns from tickets +---------------------------------- + +The process of a product return from your customer back to your warehouse is taken into action when, +at the ticket page, you choose the option *Return*. + +.. image:: ./media/aftersales3.png + :align: center + +Grant coupons from tickets +-------------------------- + +First, be sure to have your *Coupon Program* planned in the *Sales* or *Website* application. Then, +in *Helpdesk*, open your ticket, click on *Coupon*, and choose the respective one. + +.. image:: ./media/aftersales4.png + :align: center + +Repairs from tickets +-------------------- + +Clicking on *Repair* option, on your ticket page, a new repair order form is shown. Fill in the +information as needed and choose the next step. + +.. image:: ./media/aftersales5.png + :align: center + +Plan onsite interventions from tickets +-------------------------------------- + +At the ticket's page click on *Plan Intervention*, and set up your onsite intervention exactly the +same way as if you were on the *Field Service* application. + +.. image:: ./media/aftersales6.png + :align: center + :height: 300 + +.. seealso:: + - :doc:`../../fsm/overview/invoicing_time` + - `Coupons `_ + - :doc:`../../manufacturing/repair/repair` \ No newline at end of file diff --git a/helpdesk/close_tickets.rst b/helpdesk/advanced/close_tickets.rst similarity index 52% rename from helpdesk/close_tickets.rst rename to helpdesk/advanced/close_tickets.rst index 38976cf54..d26d21f84 100644 --- a/helpdesk/close_tickets.rst +++ b/helpdesk/advanced/close_tickets.rst @@ -1,12 +1,12 @@ -======================================= -Allow customers to close their tickets -======================================= +====================================== +Allow Customers to Close their Tickets +====================================== Allowing customers to close their tickets gives them autonomy and minimize misunderstandings about when an issue is considered solved, or not. It makes communication and actions more efficient. Configure the feature -====================== +===================== To configure the feature go to :menuselection:`Helpdesk --> Settings --> Helpdesk Teams --> Edit` and enable *Ticket closing*. @@ -15,38 +15,40 @@ and enable *Ticket closing*. :align: center :alt: Ticket closing in Odoo Helpdesk -In order to designate to which stage the ticket will migrate to once it is closed, go to -:menuselection:`Overview --> Tickets`. +In order to designate to which stage the ticket migrates to once it is closed, go to +:menuselection:`Helpdesk --> Overview --> Tickets`. .. image:: media/closetickets2.png :align: center :alt: Ticket closing in Odoo Helpdesk -You can either create a new kanban stage or work with an existing one. For both scenarios, go to -:menuselection:`Settings --> Edit Stage` and enable *Closing Stage*. +You can either create a new Kanban stage or work with an existing one. For both scenarios, go to +:menuselection:`Helpdesk --> Settings --> Edit Stage` and enable *Closing Stage*. .. image:: media/closetickets3.png :align: center :alt: Ticket closing in Odoo Helpdesk -If a closing stage is not specified, by default, the ticket will be transferred to the last stage; contrarily, if you have more than one stage set as closing, the ticket will be put in the first one. +If a closing stage is not specified, by default, the ticket is moved to the last stage; +contrarily, if you have more than one stage set as closing, the ticket is put in the first one. -The Costumer Portal -==================== +The Costumer Portal +=================== -Now, once the user logs in to his Portal, the option *Close this ticket* is available. +Now, once the user logs into his Portal, the option *Close this ticket* is available. .. image:: media/closetickets4.png :align: center :alt: Ticket closing in Odoo Helpdesk Get reports on tickets closed by costumers -=========================================== +========================================== To do an analysis of the tickets that have been closed by costumers go to -:menuselection:`Reporting --> Tickets --> Filters --> Add Custom filter --> Closed by partner --> -Applied`. +:menuselection:`Helpdesk --> Reporting --> Tickets --> Filters --> Add Custom filter --> +Closed by partner --> Applied`. .. image:: media/closetickets5.png :align: center + :height: 300 :alt: Reports on Ticket closing in Odoo Helpdesk diff --git a/helpdesk/media/aftersales1.png b/helpdesk/advanced/media/aftersales1.png similarity index 100% rename from helpdesk/media/aftersales1.png rename to helpdesk/advanced/media/aftersales1.png diff --git a/helpdesk/advanced/media/aftersales2.png b/helpdesk/advanced/media/aftersales2.png new file mode 100644 index 000000000..5105e96af Binary files /dev/null and b/helpdesk/advanced/media/aftersales2.png differ diff --git a/helpdesk/media/aftersales3.png b/helpdesk/advanced/media/aftersales3.png similarity index 100% rename from helpdesk/media/aftersales3.png rename to helpdesk/advanced/media/aftersales3.png diff --git a/helpdesk/media/aftersales4.png b/helpdesk/advanced/media/aftersales4.png similarity index 100% rename from helpdesk/media/aftersales4.png rename to helpdesk/advanced/media/aftersales4.png diff --git a/helpdesk/media/aftersales5.png b/helpdesk/advanced/media/aftersales5.png similarity index 100% rename from helpdesk/media/aftersales5.png rename to helpdesk/advanced/media/aftersales5.png diff --git a/helpdesk/media/aftersales6.png b/helpdesk/advanced/media/aftersales6.png similarity index 100% rename from helpdesk/media/aftersales6.png rename to helpdesk/advanced/media/aftersales6.png diff --git a/helpdesk/media/closetickets1.png b/helpdesk/advanced/media/closetickets1.png similarity index 100% rename from helpdesk/media/closetickets1.png rename to helpdesk/advanced/media/closetickets1.png diff --git a/helpdesk/media/closetickets2.png b/helpdesk/advanced/media/closetickets2.png similarity index 100% rename from helpdesk/media/closetickets2.png rename to helpdesk/advanced/media/closetickets2.png diff --git a/helpdesk/media/closetickets3.png b/helpdesk/advanced/media/closetickets3.png similarity index 100% rename from helpdesk/media/closetickets3.png rename to helpdesk/advanced/media/closetickets3.png diff --git a/helpdesk/media/closetickets4.png b/helpdesk/advanced/media/closetickets4.png similarity index 100% rename from helpdesk/media/closetickets4.png rename to helpdesk/advanced/media/closetickets4.png diff --git a/helpdesk/media/closetickets5.png b/helpdesk/advanced/media/closetickets5.png similarity index 100% rename from helpdesk/media/closetickets5.png rename to helpdesk/advanced/media/closetickets5.png diff --git a/helpdesk/after_sales.rst b/helpdesk/after_sales.rst deleted file mode 100644 index 2d641ff2b..000000000 --- a/helpdesk/after_sales.rst +++ /dev/null @@ -1,67 +0,0 @@ -========================================================================== -After sales features: refund, coupon, return, repair, onsite interventions -========================================================================== - -As my business grows, having the tools to allow my helpdesk team to record, track and manage issues -raised easy and efficiently, is key. Odoo’s Helpdesk app allows me to generate credit notes, return -products, grant coupons, do repairs and plan onsite interventions from a ticket’s page. - -Set up the After Sales services -=============================== - -Go to :menuselection:`Configuration --> Helpdesk Teams` and enable the After Sales options: -*Refunds, Returns, Coupons, Repairs and Onsite Interventions*. - -.. image:: ./media/aftersales1.png - :align: center - -Generate credit notes from tickets -========================================= - -I can use a credit note to refund a customer or adjust the amount due. For that, I’ll simply go to -my ticket page, click on *Refund* and select the corresponding *Invoice*. Clicking on *Reverse* the -credit note will be generated, and I can *Post* it while still being in the *Helpdesk* app. - -.. image:: ./media/aftersales2.png - :align: center - -Allow product returns from tickets -================================== - -The process of a product return from my customer back to my warehouse will be taken into action -when, at the ticket page, I choose the option *Return*. - -.. image:: ./media/aftersales3.png - :align: center - -Grant coupons from tickets -========================== - -First, be sure to have your *Coupon Program* planned at the *Sales or Website* app. At the -*Helpdesk* app, I will open my ticket and click on *Coupon*, choose the -:menuselection:`Coupon Program --> Generate`. - -.. image:: ./media/aftersales4.png - :align: center - -Repairs from tickets -==================== - -Clicking on *Repair* option, on my ticket page, a new repair order form will be shown. Fill up the -rest of the fields as needed and choose the next step. - -.. image:: ./media/aftersales5.png - :align: center - -Plan onsite interventions from tickets -====================================== - -At the ticket page, I can now configure my onsite interventions exactly the same way I would do -being on the *Field Service* app, clicking on *Plan Intervention*. - -.. image:: ./media/aftersales6.png - :align: center - -.. seealso:: - * `Coupons `_ - * :doc:`../manufacturing/repair/repair` \ No newline at end of file diff --git a/helpdesk/getting_started.rst b/helpdesk/getting_started.rst deleted file mode 100644 index cb788d60a..000000000 --- a/helpdesk/getting_started.rst +++ /dev/null @@ -1,171 +0,0 @@ -============================== -Get started with Odoo Helpdesk -============================== - -Overview -======== - -Getting started with Odoo Helpdesk ----------------------------------- - -Installing Odoo Helpdesk: - -Open the Apps module, search for "Helpdesk", and click install - -.. image:: media/helpdesk01.png - :align: center - -Set up Helpdesk teams ---------------------- - -By default, Odoo Helpdesk comes with a team installed called "Support" - -.. image:: media/helpdesk02.png - :align: center - -To modify this team, or create additional teams, select "Configuration" -in the purple bar and select "Settings" - -.. image:: media/helpdesk03.png - :align: center - -Here you can create new teams, decide what team members to add to this -team, how your customers can submit tickets and set up SLA policies and -ratings. For the assignation method you can have tickets assigned -randomly, balanced, or manually. - -How to set up different stages for each team --------------------------------------------- - -First you will need to activate the :doc:`Developer mode <../../general/developer_mode/activate>`. - -Now, when you return to your Helpdesk module and select "Configuration" -in the purple bar you will find additional options, like "Stages". Here -you can create new stages and assign those stages to 1 or multiple teams -allowing for customizable stages for each team! - -Start receiving tickets -======================= - -How can my customers submit tickets? ------------------------------------- - -Select "Configuration" in the purple bar and select "Settings", select -your Helpdesk team. Under "Channels you will find 4 options: - -.. image:: media/helpdesk05.png - :align: center - -Email Alias allows for customers to email the alias you choose to create -a ticket. The subject line of the email with become the Subject on the -ticket. - -.. image:: media/helpdesk06.png - :align: center - -Website Form allows your customer to go to -yourwebsite.com/helpdesk/support-1/submit and submit a ticket via a -website form - much like odoo.com/help! - -.. image:: media/helpdesk07.png - :align: center - -Live Chat allows your customers to submit a ticket via Live Chat on your -website. Your customer will begin the live chat and your Live Chat -Operator can create the ticket by using the command /helpdesk Subject of -Ticket. - -.. image:: media/helpdesk08.png - :align: center - -The final option to submit tickets is through an API connection. View the -documentation `here `_. - -Tickets have been created, now what? ------------------------------------- - -Now your employees can start working on them! If you have selecting a -manual assignation method then your employees will need to assign -themselves to tickets using the "Assign To Me" button on the top left of -a ticket or by adding themselves to the "Assigned to" field. - -.. image:: media/helpdesk09.png - :align: center - -If you have selected "Random" or "Balanced" assignation method, your -tickets will be assigned to a member of that Helpdesk team. - -From there they will begin working on resolving the tickets! When they -are completed, they will move the ticket to the solved stage. - -How do I mark this ticket as urgent? ------------------------------------- - -On your tickets you will see stars. You can determine how urgent a -ticket is but selecting one or more stars on the ticket. You can do this -in the Kanban view or on the ticket form. - -.. image:: media/helpdesk10.png - :align: center - -To set up a Service Level Agreement Policy for your employees, first -activate the setting under "Settings" - -.. image:: media/helpdesk11.png - :align: center - -From here, select "Configure SLA Policies" and click "Create". - -You will fill in information like the Helpdesk team, what the minimum -priority is on the ticket (the stars) and the targets for the ticket. - -.. image:: media/helpdesk12.png - :align: center - -What if a ticket is blocked or is ready to be worked on? --------------------------------------------------------- - -If a ticket cannot be resolved or is blocked, you can adjust the "Kanban -State" on the ticket. You have 3 options: - -- Grey - Normal State - -- Red - Blocked - -- Green - Ready for next stage - -Like the urgency stars you can adjust the state in the Kanban or on the -Ticket form. - -.. image:: media/helpdesk13.png - :align: center - -How can my employees log time against a ticket? ------------------------------------------------ - -First, head over to "Settings" and select the option for "Timesheet on -Ticket". You will see a field appear where you can select the project -the timesheets will log against. - -.. image:: media/helpdesk14.png - :align: center - -Now that you have selected a project, you can save. If you move back to -your tickets, you will see a new tab called "Timesheets" - -.. image:: media/helpdesk15.png - :align: center - -Here you employees can add a line to add work they have done for this -ticket. - -How to allow your customers to rate the service they received -------------------------------------------------------------- - -First, you will need to activate the ratings setting under "Settings" - -.. image:: media/helpdesk16.png - :align: center - -Now, when a ticket is moved to its solved or completed stage, it will -send an email to the customer asking how their service went. diff --git a/helpdesk/invoice_time.rst b/helpdesk/invoice_time.rst deleted file mode 100644 index 397c29cd3..000000000 --- a/helpdesk/invoice_time.rst +++ /dev/null @@ -1,126 +0,0 @@ -=================================== -Record and invoice time for tickets -=================================== - -You may have service contracts with your clients to provide them -assistance in case of a problem. For this purpose, Odoo will help you -record the time spent fixing the issue and most importantly, to invoice -it to your clients. - -The modules needed -================== - -In order to record and invoice time for tickets, the following modules -are needed : Helpdesk, Project, Timesheets, Sales. If you are missing -one of them, go to the Apps module, search for it and then click on -*Install*. - -Get started to offer the helpdesk service -========================================= - -Step 1 : start a helpdesk project ---------------------------------- - -To start a dedicated project for the helpdesk service, first go to -:menuselection:`Project --> Configuration --> Settings` and make sure -that the *Timesheets* feature is activated. - -.. image:: media/invoice_time01.png - :align: center - -Then, go to your dashboard, create the new project and allow timesheets -for it. - -Step 2 : gather a helpdesk team -------------------------------- - -To set a team in charge of the helpdesk, go to :menuselection:`Helpdesk ---> Configuration --> Helpdesk Teams` and create a new team or select -an existing one. On the form, tick the box in front of *Timesheet on -Ticket* to activate the feature. Make sure to select the helpdesk -project you have previously created as well. - -.. image:: media/invoice_time02.png - :align: center - -Step 3 : launch the helpdesk service ------------------------------------- - -Finally, to launch the new helpdesk service, first go to -:menuselection:`Sales --> Configuration --> Settings` and make sure -that the *Units of Measure* feature is activated. - -.. image:: media/invoice_time03.png - :align: center - -Then, go to :menuselection:`Products --> Products` and create a new -one. Make sure that the product is set as a service. - -.. image:: media/invoice_time04.png - :align: center - -.. note:: - Here, we suggest that you set the *Unit of Measure* as - *Hour(s)*, but any unit will do. - -Finally, select the invoicing management you would like to have under -the *Sales* tab of the product form. Here, we recommend the following -configuration : - -.. image:: media/invoice_time05.png - :align: center - -Now, you are ready to start receiving tickets ! - -Solve issues and record time spent -================================== - -Step 1 : place an order ------------------------ - -You are now in the Helpdesk module and you have just received a ticket -from a client. To place a new order, go to :menuselection:`Sales --> -Orders --> Orders` and create one for the help desk service product you -have previously recorded. Set the number of hours needed to assist the -client and confirm the sale. - -.. image:: media/invoice_time06.png - :align: center - -Step 2 : link the task to the ticket ------------------------------------- - -If you access the dedicated helpdesk project, you will notice that a new -task has automatically been generated with the order. To link this task -with the client ticket, go to the Helpdesk module, access the ticket in -question and select the task on its form. - -.. image:: media/invoice_time07.png - :align: center - -Step 3 : record the time spent to help the client -------------------------------------------------- - -The job is done and the client's issue is sorted out. To record the -hours performed for this task, go back to the ticket form and add them -under the *Timesheets* tab. - -.. image:: media/invoice_time08.png - :align: center - -.. tip:: - The hours recorded on the ticket will also automatically appear - in the Timesheet module and on the dedicated task. - -Step 4 : invoice the client ---------------------------- - -To invoice the client, go back to the Sales module and select the order -that had been placed. Notice that the hours recorded on the ticket form -now appear as the delivered quantity. - -.. image:: media/invoice_time09.png - :align: center - -All that is left to do, is to create the invoice from the order and then -validate it. Now you just have to wait for the client's payment ! diff --git a/helpdesk/media/aftersales2.png b/helpdesk/media/aftersales2.png deleted file mode 100644 index d952d296f..000000000 Binary files a/helpdesk/media/aftersales2.png and /dev/null differ diff --git a/helpdesk/media/helpdesk01.png b/helpdesk/media/helpdesk01.png deleted file mode 100644 index da06ede20..000000000 Binary files a/helpdesk/media/helpdesk01.png and /dev/null differ diff --git a/helpdesk/media/helpdesk02.png b/helpdesk/media/helpdesk02.png deleted file mode 100644 index b7a18116c..000000000 Binary files a/helpdesk/media/helpdesk02.png and /dev/null differ diff --git a/helpdesk/media/helpdesk03.png b/helpdesk/media/helpdesk03.png deleted file mode 100644 index 2cdb1f3b6..000000000 Binary files a/helpdesk/media/helpdesk03.png and /dev/null differ diff --git a/helpdesk/media/helpdesk05.png b/helpdesk/media/helpdesk05.png deleted file mode 100644 index 805dc9c87..000000000 Binary files a/helpdesk/media/helpdesk05.png and /dev/null differ diff --git a/helpdesk/media/helpdesk06.png b/helpdesk/media/helpdesk06.png deleted file mode 100644 index 8d4675d52..000000000 Binary files a/helpdesk/media/helpdesk06.png and /dev/null differ diff --git a/helpdesk/media/helpdesk07.png b/helpdesk/media/helpdesk07.png deleted file mode 100644 index 540f90f77..000000000 Binary files a/helpdesk/media/helpdesk07.png and /dev/null differ diff --git a/helpdesk/media/helpdesk08.png b/helpdesk/media/helpdesk08.png deleted file mode 100644 index e03ee225e..000000000 Binary files a/helpdesk/media/helpdesk08.png and /dev/null differ diff --git a/helpdesk/media/helpdesk09.png b/helpdesk/media/helpdesk09.png deleted file mode 100644 index 18c2e3655..000000000 Binary files a/helpdesk/media/helpdesk09.png and /dev/null differ diff --git a/helpdesk/media/helpdesk10.png b/helpdesk/media/helpdesk10.png deleted file mode 100644 index e852efbd8..000000000 Binary files a/helpdesk/media/helpdesk10.png and /dev/null differ diff --git a/helpdesk/media/helpdesk11.png b/helpdesk/media/helpdesk11.png deleted file mode 100644 index 72d8b448d..000000000 Binary files a/helpdesk/media/helpdesk11.png and /dev/null differ diff --git a/helpdesk/media/helpdesk12.png b/helpdesk/media/helpdesk12.png deleted file mode 100644 index c7138760f..000000000 Binary files a/helpdesk/media/helpdesk12.png and /dev/null differ diff --git a/helpdesk/media/helpdesk13.png b/helpdesk/media/helpdesk13.png deleted file mode 100644 index cb47276c7..000000000 Binary files a/helpdesk/media/helpdesk13.png and /dev/null differ diff --git a/helpdesk/media/helpdesk14.png b/helpdesk/media/helpdesk14.png deleted file mode 100644 index 46b3065d8..000000000 Binary files a/helpdesk/media/helpdesk14.png and /dev/null differ diff --git a/helpdesk/media/helpdesk15.png b/helpdesk/media/helpdesk15.png deleted file mode 100644 index e1cc12dfb..000000000 Binary files a/helpdesk/media/helpdesk15.png and /dev/null differ diff --git a/helpdesk/media/helpdesk16.png b/helpdesk/media/helpdesk16.png deleted file mode 100644 index ae8973e49..000000000 Binary files a/helpdesk/media/helpdesk16.png and /dev/null differ diff --git a/helpdesk/media/invoice_time01.png b/helpdesk/media/invoice_time01.png deleted file mode 100644 index 193f5dd8f..000000000 Binary files a/helpdesk/media/invoice_time01.png and /dev/null differ diff --git a/helpdesk/media/invoice_time02.png b/helpdesk/media/invoice_time02.png deleted file mode 100644 index 24bb7a70f..000000000 Binary files a/helpdesk/media/invoice_time02.png and /dev/null differ diff --git a/helpdesk/media/invoice_time03.png b/helpdesk/media/invoice_time03.png deleted file mode 100644 index fe832f2c0..000000000 Binary files a/helpdesk/media/invoice_time03.png and /dev/null differ diff --git a/helpdesk/media/invoice_time04.png b/helpdesk/media/invoice_time04.png deleted file mode 100644 index ab6099f3a..000000000 Binary files a/helpdesk/media/invoice_time04.png and /dev/null differ diff --git a/helpdesk/media/invoice_time05.png b/helpdesk/media/invoice_time05.png deleted file mode 100644 index ef8a8455e..000000000 Binary files a/helpdesk/media/invoice_time05.png and /dev/null differ diff --git a/helpdesk/media/invoice_time06.png b/helpdesk/media/invoice_time06.png deleted file mode 100644 index 948b4fa1e..000000000 Binary files a/helpdesk/media/invoice_time06.png and /dev/null differ diff --git a/helpdesk/media/invoice_time07.png b/helpdesk/media/invoice_time07.png deleted file mode 100644 index b353fb3a4..000000000 Binary files a/helpdesk/media/invoice_time07.png and /dev/null differ diff --git a/helpdesk/media/invoice_time08.png b/helpdesk/media/invoice_time08.png deleted file mode 100644 index 63bf86d22..000000000 Binary files a/helpdesk/media/invoice_time08.png and /dev/null differ diff --git a/helpdesk/media/invoice_time09.png b/helpdesk/media/invoice_time09.png deleted file mode 100644 index 0d6d8a70e..000000000 Binary files a/helpdesk/media/invoice_time09.png and /dev/null differ diff --git a/helpdesk/media/reinvoice_time1.png b/helpdesk/media/reinvoice_time1.png deleted file mode 100644 index d90709626..000000000 Binary files a/helpdesk/media/reinvoice_time1.png and /dev/null differ diff --git a/helpdesk/overview.rst b/helpdesk/overview.rst new file mode 100644 index 000000000..b6ad93939 --- /dev/null +++ b/helpdesk/overview.rst @@ -0,0 +1,10 @@ +======== +Overview +======== + +.. toctree:: + :titlesonly: + + overview/getting_started + overview/sla + overview/receiving_tickets diff --git a/helpdesk/overview/getting_started.rst b/helpdesk/overview/getting_started.rst new file mode 100644 index 000000000..2e5588f36 --- /dev/null +++ b/helpdesk/overview/getting_started.rst @@ -0,0 +1,65 @@ +=============== +Getting Started +=============== + +Helpdesk teams provide your customers with support to queries or errors they might encounter while +using your product/service. Therefore, a successful scheme where you can organize multiple teams +with their customized pipeline, visibilities settings, and ticket traceability is essential. + +Set up teams +============ + +| To modify or create teams, go to :menuselection:`Helpdesk --> Configuration --> Helpdesk Teams`. +| Setting up multiple teams allows you to group tickets by your channels (example: BE/US), or by + your support services' types (example: IT, accounting, admin, etc.). + +.. image:: media/helpdesk_teams_view.png + :align: center + :alt: View of the helpdesk teams page in Odoo Helpdesk + +Team’s productivity and visibility +---------------------------------- + +Teams can have individual *Assignment Methods* to ensure that tickets get redirected to the right +person: + +- *Manually*: tickets are manually assigned, allowing employees to manage their own workload and + target tickets they are experts at; +- *Random*: tickets are randomly assigned and everyone gets the same amount. This method ensures + that all tickets are handled as the assignment happens automatically; +- *Balanced*: tickets are assigned to the person with the least amount of tickets so that everyone + fairly gets the same amount. Thereby, you ensure that all tickets get to be taken care of. + +.. image:: media/productivity_visibility.png + :align: center + :alt: View of a helpdesk team settings page emphasizing the productivity and visibility features + in Odoo Helpdesk + +| For the *Random* and *Balanced* assignment methods, you can set the *Team Members* among + whom tickets are assigned. Leave the field empty to include all employees (with the proper + access rights). +| The *Team Visibility* feature allows you to specify who can see and access the team’s tickets. + Therefore, ticket’s with sensible information are only seen by the right people. + Leave the field empty to include all employees (with the proper access rights). + +Set up stages and share it among teams +====================================== + +To set up stages, go to :menuselection:`Helpdesk --> Configuration --> Stages`. Then, create and/or +edit stages as you need and set specific teams to use certain stages under *Team*. + +.. image:: media/stages_teams.png + :align: center + :alt: View of a stage’s setting page emphasizing the option to add teams in Odoo Helpdesk + +Stages can be shared between one or multiple teams, allowing you to adapt the pipeline to your +individual needs. They also apply a visibility and access rule, as other teams are not able to see +or use the stage. + +.. image:: media/helpdesk_kanbanview.png + :align: center + :alt: View of a team’s kanban view in Odoo Helpdesk + +.. seealso:: + - :doc:`../../general/odoo_basics/add_user` + diff --git a/helpdesk/overview/media/channels_emailalias.png b/helpdesk/overview/media/channels_emailalias.png new file mode 100644 index 000000000..190d045a7 Binary files /dev/null and b/helpdesk/overview/media/channels_emailalias.png differ diff --git a/helpdesk/overview/media/channels_options.png b/helpdesk/overview/media/channels_options.png new file mode 100644 index 000000000..34ec12f22 Binary files /dev/null and b/helpdesk/overview/media/channels_options.png differ diff --git a/helpdesk/overview/media/go_to_website.png b/helpdesk/overview/media/go_to_website.png new file mode 100644 index 000000000..873b95427 Binary files /dev/null and b/helpdesk/overview/media/go_to_website.png differ diff --git a/helpdesk/overview/media/helpdesk_kanbanview.png b/helpdesk/overview/media/helpdesk_kanbanview.png new file mode 100644 index 000000000..306ebe0f2 Binary files /dev/null and b/helpdesk/overview/media/helpdesk_kanbanview.png differ diff --git a/helpdesk/overview/media/helpdesk_teams_view.png b/helpdesk/overview/media/helpdesk_teams_view.png new file mode 100644 index 000000000..9e90d4ac2 Binary files /dev/null and b/helpdesk/overview/media/helpdesk_teams_view.png differ diff --git a/helpdesk/overview/media/kanban_view_prioritize.png b/helpdesk/overview/media/kanban_view_prioritize.png new file mode 100644 index 000000000..2224496b8 Binary files /dev/null and b/helpdesk/overview/media/kanban_view_prioritize.png differ diff --git a/helpdesk/overview/media/live_chat.png b/helpdesk/overview/media/live_chat.png new file mode 100644 index 000000000..7ee116bdf Binary files /dev/null and b/helpdesk/overview/media/live_chat.png differ diff --git a/helpdesk/overview/media/new_sla.png b/helpdesk/overview/media/new_sla.png new file mode 100644 index 000000000..46c81ccfb Binary files /dev/null and b/helpdesk/overview/media/new_sla.png differ diff --git a/helpdesk/overview/media/productivity_visibility.png b/helpdesk/overview/media/productivity_visibility.png new file mode 100644 index 000000000..e8a8ba07f Binary files /dev/null and b/helpdesk/overview/media/productivity_visibility.png differ diff --git a/helpdesk/overview/media/sla_analysis.png b/helpdesk/overview/media/sla_analysis.png new file mode 100644 index 000000000..0781c30ab Binary files /dev/null and b/helpdesk/overview/media/sla_analysis.png differ diff --git a/helpdesk/overview/media/stages_teams.png b/helpdesk/overview/media/stages_teams.png new file mode 100644 index 000000000..a131ab877 Binary files /dev/null and b/helpdesk/overview/media/stages_teams.png differ diff --git a/helpdesk/overview/media/submit_a_ticket_form.png b/helpdesk/overview/media/submit_a_ticket_form.png new file mode 100644 index 000000000..18a66befe Binary files /dev/null and b/helpdesk/overview/media/submit_a_ticket_form.png differ diff --git a/helpdesk/overview/media/ticket_green_tag.png b/helpdesk/overview/media/ticket_green_tag.png new file mode 100644 index 000000000..9365e9bf6 Binary files /dev/null and b/helpdesk/overview/media/ticket_green_tag.png differ diff --git a/helpdesk/overview/receiving_tickets.rst b/helpdesk/overview/receiving_tickets.rst new file mode 100644 index 000000000..a1a1ef7cb --- /dev/null +++ b/helpdesk/overview/receiving_tickets.rst @@ -0,0 +1,90 @@ +======================= +Start Receiving Tickets +======================= + +Offering a variety of channels from where your customers can contact you grants them flexibility +and the right to choose the best one for themselves. And, in order to make sure inquiries across +all channels get addressed, it is essential to have a solution where all interactions come in one +place. + +Channels options to submit tickets +================================== + +Go to :menuselection:`Helpdesk --> Configuration --> Helpdesk Teams`, and enable the following +features as you want them to be available to your users. + +.. image:: media/channels_options.png + :align: center + :alt: View of a helpdesk teams setting page emphasizing the channels options in Odoo Helpdesk + +Email Alias +----------- + +| Let your customers submit tickets by sending an email to your support email address. The subject + line of the email becomes the title of the ticket and the content is shown in the Chatter. +| Select *Configure domain name* to be redirected to *Settings* and, from there, enable *External + Email Servers* to determine or change your *Alias Domain*. + +.. image:: media/channels_emailalias.png + :align: center + :height: 250 + :alt: View of the settings page of a helpdesk team emphasizing the email alias feature + in Odoo Helpdesk + +.. note:: + Using your own email server is required to send and receive emails in Odoo Community and + Enterprise. Online users benefit from a ready-to-use email server. + +Website Form +------------ + +| Allow your customers to submit a ticket by filling in a form through your website. +| Once the feature is activated, get redirected to your website by clicking on *Go to Website*. + +.. image:: media/go_to_website.png + :align: center + :alt: View of the settings page of a helpdesk team emphasizing the Go to Website button in + Odoo Helpdesk + +From the website page customize the form as you like. Then, publish it by clicking on *Unpublished*. + +.. image:: media/submit_a_ticket_form.png + :align: center + :alt: View of the website form to submit a ticket for Odoo Helpdesk + +Live Chat +--------- + +| Through live interactions with your website visitors, helpdesk tickets can be instantly created + and redirected to the right person. +| Click on your helpdesk team's name - for the example below: *Customer Care* - + and :doc:`set up your channel <../../livechat/overview/get_started>`. + +.. image:: media/live_chat.png + :align: center + :alt: View of the settings page of a helpdesk team emphasizing the live chat features and links + in Odoo Helpdesk + +Now, your operators can create tickets by using the +:doc:`command <../../livechat/overview/responses>` */helpdesk (subject_of_ticket)*. + +Prioritize tickets +================== + +Use the stars to prioritize your tickets. The most urgent ones appear at the top of your list on +the Kanban view. + +- 1 star = *Low priority* +- 2 stars = *High priority* +- 3 stars = *Urgent* + +.. image:: media/kanban_view_prioritize.png + :align: center + :height: 330 + :alt: View of a team’s kanban view and the prioritized tasks in Odoo Helpdesk + +.. seealso:: + - :doc:`../../discuss/email_servers` + - :doc:`sla` + - :doc:`../advanced/close_tickets` + diff --git a/helpdesk/overview/sla.rst b/helpdesk/overview/sla.rst new file mode 100644 index 000000000..a5ed4ec79 --- /dev/null +++ b/helpdesk/overview/sla.rst @@ -0,0 +1,47 @@ +============================== +Service Level Agreements (SLA) +============================== + +Service Level Agreements (SLA) are commitments you make with your customers to outline how a +service is delivered. It bolsters trust between you and your customers as it makes clear what +needs to be done, to what standard, and when. + +Create your policies +==================== + +| First, enable the feature on the settings of the team you would like policies to be applied, + going to :menuselection:`Helpdesk --> Configuration --> Helpdesk Teams`. +| Create your policies through the team’s settings page or go to :menuselection:`Helpdesk --> + Configuration --> SLA Policies`. + +.. image:: media/new_sla.png + :align: center + :height: 340 + :alt: View of an SLA form in Odoo Helpdesk + +| Choose to which **Team** the policy is relevant and the **Minimum Priority** a ticket needs to + have for the policy to be applied. +| **Target** is the stage a ticket needs to reach within the period defined to satisfy the + SLA. The period is based on the ticket’s creation date, and a deadline is set on the ticket’s form + once it matches an SLA policy rule. If a ticket has more than one policy applied to it, the + closest deadline of all SLAs is the one considered. +| When a ticket has satisfied an SLA policy, the SLA tag appears in green and the deadline field + is not shown anymore. + +.. image:: media/ticket_green_tag.png + :align: center + :height: 330 + :alt: View of a ticket’s form emphasizing a satisfied SLA in Odoo Helpdesk + +SLA Analysis +============ + +Go to :menuselection:`Helpdesk --> Reporting --> SLA Status Analysis`. Apply *Filters* and +*Group by* to identify tickets that should be prioritized and keep track of upcoming deadlines. + +.. image:: media/sla_analysis.png + :align: center + :alt: View of the SLA status analysis page emphasizing the group by option in Odoo Helpdesk + +.. seealso:: + - :doc:`../advanced/close_tickets` \ No newline at end of file diff --git a/helpdesk/timesheet_and_invoice.rst b/helpdesk/timesheet_and_invoice.rst new file mode 100644 index 000000000..c7c8ed0e9 --- /dev/null +++ b/helpdesk/timesheet_and_invoice.rst @@ -0,0 +1,9 @@ +===================== +Timesheet and Invoice +===================== + +.. toctree:: + :titlesonly: + + timesheet_and_invoice/invoice_time + timesheet_and_invoice/reinvoice_from_project diff --git a/helpdesk/timesheet_and_invoice/invoice_time.rst b/helpdesk/timesheet_and_invoice/invoice_time.rst new file mode 100644 index 000000000..8ddf58783 --- /dev/null +++ b/helpdesk/timesheet_and_invoice/invoice_time.rst @@ -0,0 +1,112 @@ +======================================================== +Invoice Time Spent on Tickets (Prepaid Support Services) +======================================================== + +Have the option to work with prepaid support services, meaning that a sales order and a +corresponding invoice are issued and, once the service is done, you can deduct the time spent. Odoo +allows it to happen because the applications are fully integrated, resulting in faster responses +to your customer needs. + +Set up +====== + +Step 1: Set up a helpdesk team +------------------------------ + +| Go to :menuselection:`Helpdesk --> Configuration --> Helpdesk Teams`, create or edit an existing + team, and enable *Timesheet on Ticket* and *Time Reinvoicing*. +| Select or create a project under *Timesheet on Ticket*. The selected/created is + the one at which employees timesheet on by default. However, it can be ultimately modified on + each ticket. + +.. image:: media/sell_track_hours.png + :align: center + :alt: View of a helpdesk team settings page emphasizing the timesheet on ticket and time + reinvoicing features in Odoo Helpdesk + +Step 2: Set up a service +------------------------ + +| Go to :menuselection:`Sales --> Configuration --> Settings` and enable *Units of Measure* to + optionally be able to choose *hours* (for example) as the unit of measure of your service. +| Then, go to :menuselection:`Sales --> Products --> Products`, create or edit an existing one, and + set its *Product Type* as *Service*. + +.. image:: media/product_type_unit.png + :align: center + :alt: View of a product's form emphasizing the product type and unit of measure fields in Odoo + Sales + +Now, select the invoicing management you would like to have under the *Sales* tab. We recommend the +following configuration: + +.. image:: media/product_invoicing.png + :align: center + :alt: View of a product form and the invoicing options under the tab sales in Odoo Sales + +This configuration ensures that the customer is invoiced by the number of hours predicted in the +sales order, meaning that less or extra hours recorded are not taken into account. It also ensures +that every time a sales order is confirmed, a new task is created under the right project, +automating the process. + +.. tip:: + We recommend setting up a specific project, as it was done for this flow example. The important + thing to remember is that the sales order item needs to be set on the corresponding project or + task, in order to reinvoice the time spent on a ticket. + +Prevision an invoice and record time +==================================== + +Step 1: Place an order +---------------------- + +Go to :menuselection:`Sales --> Orders --> Orders` and create one for the helpdesk service product +you have previously set up, with the customer who needs the ticket to be opened. Set the number of +hours needed to assist the customer and *Confirm* the order. + +.. image:: media/sales_order_new.png + :align: center + :alt: View of a sales order emphasizing the order lines in Odoo Sales + +Step 2: Invoice the customer +---------------------------- + +In *Sales*, select the respective sales order to *Create Invoice*. + +.. image:: media/create_invoice.png + :align: center + :height: 330 + :alt: View of a sales order emphasizing the create invoice button in Odoo Sales + +Step 3: Link the task to the ticket +----------------------------------- + +Now, in *Helpdesk*, create or edit the respective ticket and link it to the task created by the +confirmation of the sales order. + +.. image:: media/helpdesk_task.png + :align: center + :alt: View of a helpdesk ticket emphasizing the field task in Odoo Helpdesk + +Step 4: Record the time spent +----------------------------- + +Still on the respective helpdesk ticket, record the hours performed under the *Timesheets* tab. + +.. image:: media/helpdesk_timesheet.png + :align: center + :alt: View of a helpdesk ticket emphasizing the timesheets tab in Odoo Helpdesk + +Note that the hours recorded on the ticket form are shown on the *Delivered* column in the sales +order. + +.. image:: media/quotation_delivered.png + :align: center + :alt: View of a sales order emphasizing the delivered column in Odoo Sales + +.. tip:: + Hours recorded on the ticket are automatically shown in *Timesheets* and on the dedicated task. + +.. seealso:: + - :doc:`reinvoice_from_project` + - :doc:`../../inventory/management/products/uom` diff --git a/helpdesk/timesheet_and_invoice/media/create_invoice.png b/helpdesk/timesheet_and_invoice/media/create_invoice.png new file mode 100644 index 000000000..f9a6728c7 Binary files /dev/null and b/helpdesk/timesheet_and_invoice/media/create_invoice.png differ diff --git a/helpdesk/timesheet_and_invoice/media/helpdesk_task.png b/helpdesk/timesheet_and_invoice/media/helpdesk_task.png new file mode 100644 index 000000000..9a65f54fa Binary files /dev/null and b/helpdesk/timesheet_and_invoice/media/helpdesk_task.png differ diff --git a/helpdesk/timesheet_and_invoice/media/helpdesk_timesheet.png b/helpdesk/timesheet_and_invoice/media/helpdesk_timesheet.png new file mode 100644 index 000000000..6a3442b58 Binary files /dev/null and b/helpdesk/timesheet_and_invoice/media/helpdesk_timesheet.png differ diff --git a/helpdesk/timesheet_and_invoice/media/product_invoicing.png b/helpdesk/timesheet_and_invoice/media/product_invoicing.png new file mode 100644 index 000000000..9e7380716 Binary files /dev/null and b/helpdesk/timesheet_and_invoice/media/product_invoicing.png differ diff --git a/helpdesk/timesheet_and_invoice/media/product_type_unit.png b/helpdesk/timesheet_and_invoice/media/product_type_unit.png new file mode 100644 index 000000000..e7c605985 Binary files /dev/null and b/helpdesk/timesheet_and_invoice/media/product_type_unit.png differ diff --git a/helpdesk/timesheet_and_invoice/media/quotation_delivered.png b/helpdesk/timesheet_and_invoice/media/quotation_delivered.png new file mode 100644 index 000000000..c547e037e Binary files /dev/null and b/helpdesk/timesheet_and_invoice/media/quotation_delivered.png differ diff --git a/helpdesk/timesheet_and_invoice/media/reinvoice_time1.png b/helpdesk/timesheet_and_invoice/media/reinvoice_time1.png new file mode 100644 index 000000000..1303fa484 Binary files /dev/null and b/helpdesk/timesheet_and_invoice/media/reinvoice_time1.png differ diff --git a/helpdesk/media/reinvoice_time2.png b/helpdesk/timesheet_and_invoice/media/reinvoice_time2.png similarity index 100% rename from helpdesk/media/reinvoice_time2.png rename to helpdesk/timesheet_and_invoice/media/reinvoice_time2.png diff --git a/helpdesk/media/reinvoice_time3.png b/helpdesk/timesheet_and_invoice/media/reinvoice_time3.png similarity index 100% rename from helpdesk/media/reinvoice_time3.png rename to helpdesk/timesheet_and_invoice/media/reinvoice_time3.png diff --git a/helpdesk/timesheet_and_invoice/media/sales_order_new.png b/helpdesk/timesheet_and_invoice/media/sales_order_new.png new file mode 100644 index 000000000..bb5008665 Binary files /dev/null and b/helpdesk/timesheet_and_invoice/media/sales_order_new.png differ diff --git a/helpdesk/timesheet_and_invoice/media/sell_track_hours.png b/helpdesk/timesheet_and_invoice/media/sell_track_hours.png new file mode 100644 index 000000000..24cca0bad Binary files /dev/null and b/helpdesk/timesheet_and_invoice/media/sell_track_hours.png differ diff --git a/helpdesk/reinvoice_from_project.rst b/helpdesk/timesheet_and_invoice/reinvoice_from_project.rst similarity index 50% rename from helpdesk/reinvoice_from_project.rst rename to helpdesk/timesheet_and_invoice/reinvoice_from_project.rst index 3abad2cb4..fe2fbb9c3 100644 --- a/helpdesk/reinvoice_from_project.rst +++ b/helpdesk/timesheet_and_invoice/reinvoice_from_project.rst @@ -1,18 +1,18 @@ -============================================================== -Turn helpdesk hours into invoices directly from a project task -============================================================== +========================================================= +Invoice Time Spent on Tickets (Postpaid Support Services) +========================================================= Directly pull the billable time you have tracked on your helpdesk tickets into sales orders and invoices through a project task. It gives you more control over what you charge your client, and it is more efficient. Configuration -============== +============= -Go to :menuselection:`Helpdesk --> Configuration --> Helpdesk team --> Edit` and enable the options -*Timesheet on Ticket* and *Time Reinvoicing*. -Under *Timesheet on Ticket*, choose the *Project* to which the tickets (and timesheets) will be -linked by default. Open its *External link* to enable the feature *Bill from tasks*. +| Go to :menuselection:`Helpdesk --> Configuration --> Helpdesk team --> Edit` and enable the options + *Timesheet on Ticket* and *Time Reinvoicing*. +| Under *Timesheet on Ticket*, choose the *Project* to which tickets (and timesheets) will be + linked by default. Open its *External link* to enable the feature *Bill from tasks*. .. image:: media/reinvoice_time1.png :align: center @@ -21,8 +21,8 @@ linked by default. Open its *External link* to enable the feature *Bill from tas Create a sales order and an invoice ==================================== -Now, once you added the time you spent on the helpdesk ticket, under the *Timesheets* tab, access -the task clicking on its name. +Now, once you have recorded the time you spent on the helpdesk ticket, under the *Timesheets* tab, +access the task clicking on its name. .. image:: media/reinvoice_time2.png :align: center @@ -32,4 +32,5 @@ the task clicking on its name. .. image:: media/reinvoice_time3.png :align: center + :height: 300 :alt: Sales Order from a task in Odoo Helpdesk diff --git a/inventory/management/delivery.rst b/inventory/management/delivery.rst index 63129bdea..d05923eec 100644 --- a/inventory/management/delivery.rst +++ b/inventory/management/delivery.rst @@ -10,7 +10,6 @@ Delivery Orders delivery/one_step delivery/two_steps delivery/three_steps - delivery/scheduled_dates delivery/dropshipping delivery/label_type delivery/packaging_type diff --git a/inventory/management/delivery/media/scheduled_dates01.png b/inventory/management/delivery/media/scheduled_dates01.png deleted file mode 100644 index f1d974d15..000000000 Binary files a/inventory/management/delivery/media/scheduled_dates01.png and /dev/null differ diff --git a/inventory/management/delivery/media/scheduled_dates02.png b/inventory/management/delivery/media/scheduled_dates02.png deleted file mode 100644 index 7943db835..000000000 Binary files a/inventory/management/delivery/media/scheduled_dates02.png and /dev/null differ diff --git a/inventory/management/delivery/media/scheduled_dates03.png b/inventory/management/delivery/media/scheduled_dates03.png deleted file mode 100644 index 8fb289364..000000000 Binary files a/inventory/management/delivery/media/scheduled_dates03.png and /dev/null differ diff --git a/inventory/management/delivery/media/scheduled_dates04.png b/inventory/management/delivery/media/scheduled_dates04.png deleted file mode 100644 index 0d4c0fcba..000000000 Binary files a/inventory/management/delivery/media/scheduled_dates04.png and /dev/null differ diff --git a/inventory/management/delivery/media/scheduled_dates05.png b/inventory/management/delivery/media/scheduled_dates05.png deleted file mode 100644 index 8858a8edc..000000000 Binary files a/inventory/management/delivery/media/scheduled_dates05.png and /dev/null differ diff --git a/inventory/management/delivery/media/scheduled_dates06.png b/inventory/management/delivery/media/scheduled_dates06.png deleted file mode 100644 index 520a7d87a..000000000 Binary files a/inventory/management/delivery/media/scheduled_dates06.png and /dev/null differ diff --git a/inventory/management/delivery/media/scheduled_dates07.png b/inventory/management/delivery/media/scheduled_dates07.png deleted file mode 100644 index e0cc8cda6..000000000 Binary files a/inventory/management/delivery/media/scheduled_dates07.png and /dev/null differ diff --git a/inventory/management/delivery/scheduled_dates.rst b/inventory/management/delivery/scheduled_dates.rst deleted file mode 100644 index 438a98114..000000000 --- a/inventory/management/delivery/scheduled_dates.rst +++ /dev/null @@ -1,154 +0,0 @@ -============================================ -How is the scheduled delivery date computed? -============================================ - -Scheduled dates are computed in order to be able to plan deliveries, -receptions and so on. Depending on the habits of your company Odoo -automatically generates scheduled dates via the scheduler. The Odoo -scheduler computes everything per line, whether it's a manufacturing -order, a delivery order, a sale order, etc. The dates that are computed -are dependent on the different leads times configured in Odoo. - -Configuring lead times -====================== - -Configuring **lead times** is a first essential move in order to compute -scheduled dates. Lead times are the delays (in term of delivery, -manufacturing, ...) promised to your different partners and/or clients. - -Configuration of the different lead times are made as follows: - -At a product level ------------------- - -- **Supplier lead time**: - -Is the time needed for the supplier to deliver your purchased product. -To configure the supplier lead time select a product, and go in the -**Inventory** tab. You will have to add a vendor to your product in order -to select a supplier lead time. - -.. image:: media/scheduled_dates05.png - :align: center - -.. tip:: - Do not forget that it is possible to add different vendors and thus - different delivery lead times depending on the vendor. - -Once a vendor is selected, just open its form and fill its **Delivery lead -time**. In this case security days have no influence, the scheduled -delivery days will be equal to: **Date** of the purchase order + **Delivery -Lead Time**. - -.. image:: media/scheduled_dates02.png - :align: center - -- **Customer lead time**: - -Customer lead time is the time needed to get your product from your -store / warehouse to your customer. It can be configured for any -product. Simply select a product, go into the sales tab and indicate -your **Customer lead time**. - -.. image:: media/scheduled_dates01.png - :align: center - -- **Manufacturing lead time**: - -At the same page it is possible to configure the **Manufacturing Lead -Time** as well. Manufacturing lead time is the time needed to -manufacture the product. - -.. tip:: - Don't forget to tick the manufacturing box in inventory if you - want to create manufacturing routes. - -At the company level --------------------- - -At company level, it is possible to configure **security days** in order -to cope with eventual delays and to be sure to meet your engagements. -The idea is to subtract **backup** days from the **computed scheduled date** -in case of delays. - -- **Sales Safety days**: - -Sales safety days are **back-up** days to ensure you will be able to -deliver your clients engagements in times. They are margins of errors -for delivery lead times. Security days are the same logic as the early -wristwatch, in order to arrive on time. The idea is to subtract the -numbers of security days from the calculation and thus to compute a -scheduled date earlier than the one you promised to your client. In that -way you are sure to be able to keep your commitment. - -To set up your security dates, go to :menuselection:`Settings --> General settings` and -click on **Configure your company data**. - -.. image:: media/scheduled_dates04.png - :align: center - -Once the menu is open, go in the configuration tab and indicate the -number of safety days. - -- **Purchase Safety days**: - -Purchase days follow to the same logic than sales security days. - -They are margins of error for vendor lead times. When the system -generates purchase orders for procuring products, they will be scheduled -that many days earlier to cope with unexpected vendor delays. Purchase -lead time can be found in the same menu as the sales safety days - -.. image:: media/scheduled_dates03.png - :align: center - -.. tip:: - Note that you can also configure a default - Manufacturing lead time from here. - -At route level --------------- - -The internal transfers that a product might do due to the movement of -stocks can also influence the computed date. - -The delays due to internal transfers can be specified in the **inventory** -app when creating a new push rule in a route. - -Go to the push rules section on a route form to set a delay. - -.. image:: media/scheduled_dates06.png - :align: center - -At sale order level: --------------------- - -- **Requested date**: - -Odoo offers the possibility to select a requested date by the client by -indicating the date in the other information tab of the sales order. -If this date is earlier than the theoreticaly computed date odoo will -automatically display a warning. - -.. image:: media/scheduled_dates07.png - :align: center - -Example -======= - -As an example, you may sell a car today (January 1st), that is purchased -on order, and you promise to deliver your customer within 20 days -(January 20). In such a scenario, the scheduler may trigger the -following events, based on your configuration: - -- January 19: actual scheduled delivery (1 day of Sales Safety days) - -- January 18: receive the product from your supplier (1 day of Purchase - days) - -- January 10: deadline to order at your supplier (9 days of supplier - delivery lead time) - -- January 8: trigger a purchase request to your purchase team, since - the team need on average 2 days to find the right supplier and - order. diff --git a/inventory/management/planning.rst b/inventory/management/planning.rst index 43fbfab62..d480d85d5 100644 --- a/inventory/management/planning.rst +++ b/inventory/management/planning.rst @@ -6,5 +6,5 @@ Planning :titlesonly: :glob: - planning/scheduled_date + planning/scheduled_dates planning/schedulers diff --git a/inventory/management/planning/media/scheduled_date_01.png b/inventory/management/planning/media/scheduled_date_01.png deleted file mode 100644 index 31f719922..000000000 Binary files a/inventory/management/planning/media/scheduled_date_01.png and /dev/null differ diff --git a/inventory/management/planning/media/scheduled_date_02.png b/inventory/management/planning/media/scheduled_date_02.png deleted file mode 100644 index 83ab9e25f..000000000 Binary files a/inventory/management/planning/media/scheduled_date_02.png and /dev/null differ diff --git a/inventory/management/planning/media/scheduled_date_03.png b/inventory/management/planning/media/scheduled_date_03.png deleted file mode 100644 index de47d2b92..000000000 Binary files a/inventory/management/planning/media/scheduled_date_03.png and /dev/null differ diff --git a/inventory/management/planning/media/scheduled_date_04.png b/inventory/management/planning/media/scheduled_date_04.png deleted file mode 100644 index bed24bdcf..000000000 Binary files a/inventory/management/planning/media/scheduled_date_04.png and /dev/null differ diff --git a/inventory/management/planning/media/scheduled_date_05.png b/inventory/management/planning/media/scheduled_date_05.png deleted file mode 100644 index 5664f7716..000000000 Binary files a/inventory/management/planning/media/scheduled_date_05.png and /dev/null differ diff --git a/inventory/management/planning/media/scheduled_date_06.png b/inventory/management/planning/media/scheduled_date_06.png deleted file mode 100644 index 4780d3d59..000000000 Binary files a/inventory/management/planning/media/scheduled_date_06.png and /dev/null differ diff --git a/inventory/management/planning/media/scheduled_date_07.png b/inventory/management/planning/media/scheduled_date_07.png deleted file mode 100644 index 98330e83f..000000000 Binary files a/inventory/management/planning/media/scheduled_date_07.png and /dev/null differ diff --git a/inventory/management/planning/media/scheduled_date_08.png b/inventory/management/planning/media/scheduled_date_08.png deleted file mode 100644 index f87031388..000000000 Binary files a/inventory/management/planning/media/scheduled_date_08.png and /dev/null differ diff --git a/inventory/management/planning/media/scheduled_date_09.png b/inventory/management/planning/media/scheduled_date_09.png deleted file mode 100644 index 4b2cb6217..000000000 Binary files a/inventory/management/planning/media/scheduled_date_09.png and /dev/null differ diff --git a/inventory/management/planning/media/scheduled_dates_01.png b/inventory/management/planning/media/scheduled_dates_01.png new file mode 100644 index 000000000..34a90f515 Binary files /dev/null and b/inventory/management/planning/media/scheduled_dates_01.png differ diff --git a/inventory/management/planning/media/scheduled_dates_02.png b/inventory/management/planning/media/scheduled_dates_02.png new file mode 100644 index 000000000..29976c8b5 Binary files /dev/null and b/inventory/management/planning/media/scheduled_dates_02.png differ diff --git a/inventory/management/planning/media/scheduled_dates_03.png b/inventory/management/planning/media/scheduled_dates_03.png new file mode 100644 index 000000000..3ee2885b5 Binary files /dev/null and b/inventory/management/planning/media/scheduled_dates_03.png differ diff --git a/inventory/management/planning/media/scheduled_dates_04.png b/inventory/management/planning/media/scheduled_dates_04.png new file mode 100644 index 000000000..c13ddc003 Binary files /dev/null and b/inventory/management/planning/media/scheduled_dates_04.png differ diff --git a/inventory/management/planning/media/scheduled_dates_05.png b/inventory/management/planning/media/scheduled_dates_05.png new file mode 100644 index 000000000..188fe036c Binary files /dev/null and b/inventory/management/planning/media/scheduled_dates_05.png differ diff --git a/inventory/management/planning/media/scheduled_dates_06.png b/inventory/management/planning/media/scheduled_dates_06.png new file mode 100644 index 000000000..2456d64d1 Binary files /dev/null and b/inventory/management/planning/media/scheduled_dates_06.png differ diff --git a/inventory/management/planning/media/scheduled_dates_07.png b/inventory/management/planning/media/scheduled_dates_07.png new file mode 100644 index 000000000..78c880081 Binary files /dev/null and b/inventory/management/planning/media/scheduled_dates_07.png differ diff --git a/inventory/management/planning/media/scheduled_dates_08.png b/inventory/management/planning/media/scheduled_dates_08.png new file mode 100644 index 000000000..18cb90170 Binary files /dev/null and b/inventory/management/planning/media/scheduled_dates_08.png differ diff --git a/inventory/management/planning/media/scheduled_dates_09.png b/inventory/management/planning/media/scheduled_dates_09.png new file mode 100644 index 000000000..02663ac38 Binary files /dev/null and b/inventory/management/planning/media/scheduled_dates_09.png differ diff --git a/inventory/management/planning/media/scheduled_dates_10.png b/inventory/management/planning/media/scheduled_dates_10.png new file mode 100644 index 000000000..bb70626ab Binary files /dev/null and b/inventory/management/planning/media/scheduled_dates_10.png differ diff --git a/inventory/management/planning/scheduled_date.rst b/inventory/management/planning/scheduled_date.rst deleted file mode 100644 index 3d6618c06..000000000 --- a/inventory/management/planning/scheduled_date.rst +++ /dev/null @@ -1,187 +0,0 @@ -============================================ -How is the Scheduled Delivery Date Computed? -============================================ - -In most cases, scheduled dates are computed to be able to plan -deliveries, receptions, and so on. Depending on your company’s habits, -Odoo generates scheduled dates via the scheduler. - -To make your life easier, the Odoo scheduler computes everything per -line, whether it’s a manufacturing order, a delivery order, a sale -order, etc. - -.. note:: - The computed dates are dependent on the different lead times configured - in Odoo. - -Configuring lead times -====================== - -Configuring lead times is the first move if you want to compute -scheduled dates. Those are the delays promised (in terms of delivery, -manufacturing, etc.) to your partners and/or clients. - -.. note:: - In Odoo, you can configure different lead times. - -At a product level ------------------- - -When configuring lead times at the product level, you have three -different types to take into account: supplier lead time, customer lead -time, and manufacturing lead time. - -Supplier lead time -~~~~~~~~~~~~~~~~~~ - -The supplier lead time is the time needed for the supplier to deliver -your purchased products. To configure it, select a product and click on -the inventory tab. There, you will have to add a vendor to your product. - -.. image:: media/scheduled_date_01.png - :align: center - -Now, just open the vendor form and fill its *Delivery lead time*. In -this case, the delivery day will be equal to *Date of the Purchase -Order + Delivery Lead Time*. - -.. image:: media/scheduled_date_02.png - :align: center - -.. tip:: - Do not forget that it is possible to add different vendor pricelists - and, thus, different delivery lead times, depending on the vendor. - -Customer Lead Time -~~~~~~~~~~~~~~~~~~ - -It is the time needed to get your product from your store/warehouse to -your customer. It can be configured for any product. To add it, select a -product and go to the inventory tab. There, simply indicate your -*customer lead time*. - -.. image:: media/scheduled_date_03.png - :align: center - -Manufacturing lead time -~~~~~~~~~~~~~~~~~~~~~~~ - -On the same page, it is possible to configure what’s called the -*Manufacturing Lead Time*. It is the time needed to manufacture the -product. - -At the company level --------------------- - -At the company level, you can configure security days. Those are useful -to cope with eventual dalys and to be sure to meet your engagements. The -idea is to subtract backup days from the computed scheduled date in case -of delays. - -Once again, there are three different types of security lead times: for -sales, for purchases, and for manufacturing. - -Security lead time for sales -~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -In sales, security lead time corresponds to backup days to ensure you -will be able to deliver your clients in times. They are margins of -errors for delivery lead times. Security days are the same logic as the -early wristwatch, in order to arrive on time. - -The idea is to subtract the numbers of security days from the -calculation and, thus, to compute a scheduled date earlier than the one -you promised to your client. In that way, you are sure to be able to -keep your commitment. - -To set up your security dates, go to :menuselection:`Inventory --> Configuration --> -Settings` and enable the feature. - -.. image:: media/scheduled_date_04.png - :align: center - -Security lead time for purchase -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -It follows the same logic as security lead time for sales except that -security lead time for purchase is the margin of error for vendor lead -times, not for sales. - -When the system generates purchase orders for procuring products, they -will be scheduled that many days earlier to cope with unexpected vendor -delays. - -To find purchase lead time, go to :menuselection:`Inventory --> Configuration --> -Settings` and enable the feature. - -.. image:: media/scheduled_date_05.png - :align: center - -Security lead time for manufacturing -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -The security lead time for manufacturing allows generating manufacturing -orders which are scheduled that many days earlier to cope with -unexpected manufacturing days. - -To configure it, go to :menuselection:`Manufacturing --> Configuration --> Settings` and -enable the *Security Lead Time* option. Then, hit save. - -.. image:: media/scheduled_date_06.png - :align: center - -At route level --------------- - -Sometimes, the internal transfers that a product might do may also -influence the computed date. The delays due to internal transfers can be -specified in the *Inventory* app when you create a new rule in a -route. - -To specify them, go to :menuselection:`Inventory --> Configuration --> Routes` and add a -push rule to set a delay. Of course, you need to activate *Multi-step -Routes* to use this feature. - -.. image:: media/scheduled_date_07.png - :align: center - -At the sale order level ------------------------ - -Expected date -~~~~~~~~~~~~~ - -In the *Sales* application, you have the possibility to activate the -option *Delivery Date*. It will allow you to see additional fields on -the sale order. - -By enabling this option, Odoo will indicate the *Expected Date* in the -*Other Info* tab of the sales order. This one is automatically -computed based on the different lead times. - -.. image:: media/scheduled_date_08.png - :align: center - -If you set a *Commitment Date* to deliver your customer that is -earlier than the *Expected Date*, a warning message will appear on the -screen. - -.. image:: media/scheduled_date_09.png - :align: center - -Example -~~~~~~~ - -To better understand all the above info, here is an example. You may -sell a car today (January 1st), that is purchased on order, and you -promise to deliver your customer within 20 days (January 20th). In such -a scenario, the scheduler will trigger the following events, based on -your configuration: - -- January 19: this is the actual scheduled delivery (1 day of Sales Safety Days); - -- January 18: you receive the product from your supplier (1 day of Purchase days); - -- January 10: this is the deadline to order at your supplier (9 days of Supplier Delivery Lead Time); - -- January 8: trigger a purchase request to your purchase team, since they need, on average, 2 days to find the right supplier and order. \ No newline at end of file diff --git a/inventory/management/planning/scheduled_dates.rst b/inventory/management/planning/scheduled_dates.rst new file mode 100644 index 000000000..7f9489396 --- /dev/null +++ b/inventory/management/planning/scheduled_dates.rst @@ -0,0 +1,260 @@ +=========================================== +How is the Scheduled Delivery Date Computed +=========================================== + +Providing the best possible service to customers is vital for business. It implies planning +every move: manufacturing orders, deliveries, receptions, and so on. To do so, you need to +configure lead time properly and coordinate scheduled dates. + +By using lead times, Odoo provides end dates, the **Commitment +Date**, for each process. On a sales order, for example, this is the +date your customer will get the products he ordered. + +From the customers’ side, the commitment date is important because it +gives them an estimation of when they will receive their products. The +dates take all other lead times, such as manufacturing, delivery, or +suppliers, into account. + +How are Lead Times Calculated? +============================== + +.. image:: media/scheduled_dates_01.png + :align: center + :alt: Visual representation of various lead times such as customer lead time or delivery LT + +As said above, there are several types of lead times. Each is calculated +based on various indicators. Before going through the configuration, +here is a brief summary of how lead times are calculated and what they +are: + +- **Customer Lead Time**: the customer lead time is the default + duration you set. Therefore, the expected date on the sales + orders is today + customer lead time. + +- **Sales Security Lead Time**: the purpose is to be ready shipping + that many days before the actual commitment taken with the + customer. Then, the default scheduled date on the delivery order + is **SO delivery date - Security Lead Time**. + +- **Purchase Security Lead Time**: additional time to mitigate the risk + of a vendor delay. The receipt will be scheduled that many days + earlier to cope with unexpected vendor delays. In case of a + *Replenish to Order*, the **Delivery order scheduled date - + Security lead time** for purchase will be the default + *Receipt* scheduled date. + +- **Purchase Delivery Lead Time**: this is the expected time between a + PO being confirmed and the receipt of the ordered products. The + **Receipt scheduled date - Vendor delivery date** is the + default *PO Order By* date. + +- **Days to Purchase**: number of days the purchasing department takes + to validate a PO. If another RFQ to the same vendor is already + opened, Odoo adds the line to the RFQ instead of creating a new + one. Then, the specific date is set on the line. + +- **Manufacturing Lead Time**: this is the expected time it takes to + manufacture a product. This lead time is independent of the + quantity to produce and does not take the routing time into + account. + +- **Manufacturing Security Lead Time**: additional time to mitigate the + risk of a manufacturing delay. In case of a *Replenish to + Order*, the **Delivery Order scheduled date - Manufacturing + Lead Time - Manufacturing Security Lead Time** is the default + *Manufacturing Order* planned date. + +Sales - Lead Times +================== + +In the *Sales* app, there is an option called *Delivery Date*. It +allows seeing an additional field on the sales orders, *Expected +Date*. This one is automatically computed based on the different lead +times previously configured. + +.. image:: media/scheduled_dates_02.png + :align: center + :alt: View of the delivery settings to have the delivery lead time taken into account + +If the set up *Delivery Date* is earlier than the the *Expected +Date*, a warning message is displayed. + +.. image:: media/scheduled_dates_03.png + :align: center + :alt: View of the error that occurs when trying to choose an earlier date than what calculated + by Odoo + +But, for all of this properly working, it is still necessary to +configure all the lead times that could occur. + +Customer Lead Time +------------------ + +The *Customer Lead Time* is the time needed for your product to go +from your warehouse to the customer place. It can be configured on any +product by going to :menuselection:`Sales --> Products --> Products`. +There, open your product form, go in the inventory tab, and add your +*Customer Lead Time*. + +.. image:: media/scheduled_dates_04.png + :align: center + :alt: View of the customer lead time configuration from the product form + +For example, product B is ordered on the 2nd of April but the *Customer +Lead Time* is two days. In that case, the expected delivery date is the +4th of April. + +Security Lead Time +------------------ + +In sales, *Security Lead Time* corresponds to backup days to ensure +you are able to deliver the products in time. The purpose is to be ready +shipping earlier in order to arrive on time. + +The number of security days is subtracted from the calculation to +compute a scheduled date earlier than the one promised to the customer. + +To set this up, go to :menuselection:`Inventory --> Configuration --> +Settings` and enable the feature *Security Lead Time for Sales*. + +.. image:: media/scheduled_dates_05.png + :align: center + :alt: View of the security lead time for sales configuration from the sales settings + +For example, product B is scheduled to be delivered on the 6th of April +but the *Security Lead Time* is one day. In that case, the scheduled +date for the delivery order is the 5th of April. + +Deliver several products +------------------------ + +In many cases, customers order several products at the same time. Those +can have different lead times but still need to be delivered, at once or +separately. Fortunately, Odoo can help you handle these cases easily. + +From the *Other Info* tab of your *Sale Order*, you can choose +between *When all products are ready* and *As soon as possible*. The +first one is to deliver products at once, while the second is to deliver +them separately. + +For example, products A and B are ordered at the same time. A has 8 lead +days and B has 5. With the first option, the *Expected Date* is +calculated based on the product with the most lead days, here A. If the +order is confirmed on the 2nd of April, then the *Expected Date* is on +the 10th of April. + +With the second option, the *Expected Date* is calculated based on the +product with the least customer lead days. In this example, B is the +product with the least lead days. So, the *Expected Date* is on the +7th of April. + +Purchase - Lead Times +===================== + +Supplier Lead Time +------------------ + +The *Supplier Lead Time* is the time needed for a product you +purchased to be delivered. To configure it, open a product from +:menuselection:`Purchase --> Products --> Products` and add a vendor +under the *Purchase* tab. + +.. image:: media/scheduled_dates_06.png + :align: center + :alt: View of the way to add vendors to products + +By clicking on *Add a line*, a new window is displayed. You can +specify the *Delivery Lead Time* there. If done so, the delivery day +for every purchase of that product is now equal to *Date of the +Purchase Order + Delivery Lead Time*. + +.. image:: media/scheduled_dates_07.png + :align: center + :alt: View of the delivery lead time configuration from a vendor form + +.. note:: + It is possible to add different vendors and, thus, different lead times + depending on the vendor. + +Security Lead Time +------------------ + +The *Security Lead Time* for purchase follows the same logic as the +one for *Sales*, except that you are the customer. Then, it is the +margin of error for your supplier to deliver your order. + +To set up *Security Lead Time* for purchase, go to +:menuselection:`Inventory --> Configuration --> Settings` and enable +the feature. + +.. image:: media/scheduled_dates_08.png + :align: center + :alt: View of the security lead time for purchase from the inventory settings + +Doing so, every time the system generates purchase orders, those are +scheduled that many days earlier to cope with unexpected vendor delays. + +Manufacturing - Lead Times +========================== + +Manufacturing Lead Time +----------------------- + +The *Manufacturing Lead Time* is the time needed to manufacture the +product. To specify it, open the *Inventory* tab of your product form +and add the number of days the manufacturing takes. + +.. image:: media/scheduled_dates_09.png + :align: center + :alt: View of the manufacturing lead time configuration from the product form + +When working with *Manufacturing Lead Times*, the *Deadline Start* +of the *MO* is **Commitment Date - Manufacturing Lead Time**. For +example, the MO’s deadline start date for an order having a commitment +date on the 10th of July is June 27th. + +Security Lead Time +------------------ + +The *Security Lead Time* for manufacturing allows generating +manufacturing orders earlier to cope with the risk of manufacturing +delays. + +To enable it, go to :menuselection:`Manufacturing --> Configuration --> +Settings` and tick *Security Lead Time*. + +.. image:: media/scheduled_dates_10.png + :align: center + :alt: View of the security lead time for manufacturing from the manufacturing app settings + +For example, a customer orders B with a delivery date scheduled on the +20th of June. The *Manufacturing Lead Time* is 14 days and the +*Security Lead Time* is 3 days, so the manufacturing of B needs to +start at the latest on the 3rd of June, which is the MO’s planned date. + +Global Example +============== + +Here is a configuration: + +- 1 day of security lead time for Sales +- 2 days of security lead time for Manufacturing +- 3 days of manufacturing lead time +- 1 day of security lead time for Purchase +- 4 days of supplier lead time + +Let’s say that a customer orders B on the 1st of September and the +delivery date is planned to be within 20 days (September 20th). In such +a scenario, here is when all the various steps are triggered. + +- **September 1st**: the sales order is created +- **September 10th**: the deadline to order components from the supplier + because of the manufacturing process (4 days of supplier lead + time) +- **September 13th**: the reception of the product from the supplier (1 day + of security lead time for Purchase) +- **September 14th**: the deadline start date for the manufacturing (19th - + 3 days of manufacturing lead time - 2 days of security lead time + for Manufacturing) +- **September 19th**: the expected date on the delivery order form (1 day + of security lead time for sales) \ No newline at end of file diff --git a/legal/licenses/licenses.rst b/legal/licenses/licenses.rst index f4af075c7..11d0b1d79 100644 --- a/legal/licenses/licenses.rst +++ b/legal/licenses/licenses.rst @@ -84,6 +84,14 @@ DEALINGS IN THE SOFTWARE. +.. _odoo_12_license: + +Odoo 12 +======= + +The licenses for both editions of Odoo 12 were respectively the same as for +:ref:`odoo_community_license` and :ref:`odoo_enterprise_license`. + .. _odoo_11_license: Odoo 11 diff --git a/manufacturing/management/media/subcontracting_01.png b/manufacturing/management/media/subcontracting_01.png index 27e0fee02..ae5a3a60f 100644 Binary files a/manufacturing/management/media/subcontracting_01.png and b/manufacturing/management/media/subcontracting_01.png differ diff --git a/manufacturing/management/media/subcontracting_02.png b/manufacturing/management/media/subcontracting_02.png index 6cf70111b..ceeedfa99 100644 Binary files a/manufacturing/management/media/subcontracting_02.png and b/manufacturing/management/media/subcontracting_02.png differ diff --git a/manufacturing/management/media/subcontracting_03.png b/manufacturing/management/media/subcontracting_03.png index fbf0d38fd..e2f200393 100644 Binary files a/manufacturing/management/media/subcontracting_03.png and b/manufacturing/management/media/subcontracting_03.png differ diff --git a/manufacturing/management/media/subcontracting_04.png b/manufacturing/management/media/subcontracting_04.png index 661cfd593..6e58ea3d5 100644 Binary files a/manufacturing/management/media/subcontracting_04.png and b/manufacturing/management/media/subcontracting_04.png differ diff --git a/manufacturing/management/media/subcontracting_05.png b/manufacturing/management/media/subcontracting_05.png index ca9149df8..878b2d574 100644 Binary files a/manufacturing/management/media/subcontracting_05.png and b/manufacturing/management/media/subcontracting_05.png differ diff --git a/manufacturing/management/media/subcontracting_06.png b/manufacturing/management/media/subcontracting_06.png index ce1106a45..a6f638358 100644 Binary files a/manufacturing/management/media/subcontracting_06.png and b/manufacturing/management/media/subcontracting_06.png differ diff --git a/manufacturing/management/media/subcontracting_07.png b/manufacturing/management/media/subcontracting_07.png index 453863fcf..5fe226b01 100644 Binary files a/manufacturing/management/media/subcontracting_07.png and b/manufacturing/management/media/subcontracting_07.png differ diff --git a/manufacturing/management/media/subcontracting_08.png b/manufacturing/management/media/subcontracting_08.png index daec4f6ac..2328282a0 100644 Binary files a/manufacturing/management/media/subcontracting_08.png and b/manufacturing/management/media/subcontracting_08.png differ diff --git a/manufacturing/management/media/subcontracting_09.png b/manufacturing/management/media/subcontracting_09.png index a4d4c1cd9..6f03d3b07 100644 Binary files a/manufacturing/management/media/subcontracting_09.png and b/manufacturing/management/media/subcontracting_09.png differ diff --git a/manufacturing/management/media/subcontracting_10.png b/manufacturing/management/media/subcontracting_10.png index 3251cb070..92faa2609 100644 Binary files a/manufacturing/management/media/subcontracting_10.png and b/manufacturing/management/media/subcontracting_10.png differ diff --git a/manufacturing/management/media/subcontracting_11.png b/manufacturing/management/media/subcontracting_11.png index 25e5ed441..d27bf45a4 100644 Binary files a/manufacturing/management/media/subcontracting_11.png and b/manufacturing/management/media/subcontracting_11.png differ diff --git a/manufacturing/management/media/subcontracting_12.png b/manufacturing/management/media/subcontracting_12.png new file mode 100644 index 000000000..bb05d4abd Binary files /dev/null and b/manufacturing/management/media/subcontracting_12.png differ diff --git a/manufacturing/management/subcontracting.rst b/manufacturing/management/subcontracting.rst index 2555caa03..8d184ca19 100644 --- a/manufacturing/management/subcontracting.rst +++ b/manufacturing/management/subcontracting.rst @@ -1,123 +1,232 @@ -============================= -Subcontract the manufacturing -============================= +============================== +Subcontract your Manufacturing +============================== -Some businesses subcontract the production of finished products through -subcontractors. This can be easily managed through Odoo. +Outsourcing a portion of some or all your company’s manufacturing needs +is not easy. To make it work right, you have to: + +- Manage the inventory of raw materials at your subcontractor; +- Ship new materials to your subcontractors based on your forecasted + demand; +- Keep track of manufacturing operations done at the subcontractor + location; +- Control incoming goods quality; +- Control subcontractors bills. + +Here is an example of subcontracting the manufacturing of “C”, which is +produced out of raw materials “A” and “B”. + +.. image:: media/subcontracting_01.png + :align: center + :alt: + +With its subcontracting feature, Odoo helps you handle this flow easily. Configuration ============= -Go to the :menuselection:`Manufacturing app --> Configuration --> Settings` and tick the -box *Subcontracting*. - -.. image:: media/subcontracting_01.png - :align: center - -You can now define subcontracted *Bill of Materials*. Therefore, you need to go to -:menuselection:`Manufacturing --> Master Data --> Bill of Materials` and hit *Create*. In this -*BoM*, list the components which will be used by the subcontractor to manufacture the subcontracted -finished product. Specify that the *BoM* type is *Subcontracting* and define one or -several subcontractors who will provide you the product. +To use the subcontracting feature, go to :menuselection:`Manufacturing +--> Configuration --> Settings` and tick the box *Subcontracting*. .. image:: media/subcontracting_02.png :align: center + :alt: + +To define if a product must be subcontracted, use a *Bill of Materials +(BoM)* of type *Subcontracting*. + +To create a new *BoM*, go to :menuselection:`Manufacturing --> Master +Data --> Bill of Materials` and hit create. Then, list the components +your subcontractor needs to manufacture the product. For costing +purposes, you might want to register all the components, even the ones +that are sourced directly from the subcontractor. + +Once you have set the *BoM Type* to *Subcontracting*, specify one or +several subcontractors. .. image:: media/subcontracting_03.png :align: center + :alt: -And... the configuration part is already done! +Basic Subcontracting Flow +========================= -Receive or buy a subcontracted product -====================================== - -You have two options to trigger the subcontracting of a product: - -- **Option A**: You can buy the subcontracted product from your subcontractor - -- **Option B**: You can directly receive the subcontracted product - -Let’s start with option A (option B is just a simpler version of it). - -Create a new purchase order. The vendor must be a subcontractor. The -unit price should be the cost you are paying to the subcontractor for -the subcontracting (thus, it’s not necessarily the total cost of the -subcontracted product). +To let your subcontractor know how many products you need, create and +send them purchase orders (PO). To do so, open the *Purchase* app and +create a new one. Be sure to send the PO to a vendor that is defined as +a subcontractor on the *BoM*. .. image:: media/subcontracting_04.png :align: center + :alt: -The validation of the purchase order automatically creates the receipt. -Whenever you receive the product, you can validate the receipt. The -following stock moves are created: +Once the *PO* is validated (1), a pending receipt is created. When the +products are received, validate the receipt (2), with the actual +quantity received. Then Odoo automatically created several inventory +moves: -- For the components +- Consume the components at the subcontractor’s location, based on the + *BoM* (3); +- Produce finished goods at the subcontractor’s location (4); +- Move products from the subcontractor’s location to YourCompany + through the validated receipt (5). - - From Subcontracting To Production +Of course, Odoo does all the transactions for you, automatically. Simply +control the vendor bill with the usual matching process with the +purchase order. -- For the subcontracted product +.. note:: + The *PO* is optional. If you create a receipt manually, with the right + subcontractor, Odoo still performs all the moves. Useful if the + subcontractor does not bill a fixed price per item, but rather the time + and materials used. - - From Production to Subcontracting +Inventory Valuation +=================== - - From Subcontracting to Stock +The cost of the manufactured product “C” is defined as: -The *Subcontracting Location* represents the place where the products -are at your subcontractor’s warehouse. It is configured as an internal -location, the components that are sent to the subcontractor are still -valued in your stock. +**C = A + B + s** -For option B, you can simply create the receipt manually with a partner -of type subcontractor defined on it. +With: -Receive or buy a subcontracted product with tracked components -============================================================== +- **A**: Cost of raw materials coming from YourCompany; -In case the subcontracted product you receive from your subcontractor -contains tracked components, you will need to specify the *serial/lot -numbers* of the components in question for traceability. This operation -is included in the receipt of the subcontracted product. +- **B**: Cost of raw materials sourced directly from the + subcontractor; -On the receipt, you see a *Record Components* button appearing when -necessary. If you click on it, a *Produce* wizard opens in which you -will have to enter the *serial/lot numbers* of the components, and the -finished product if it is also tracked, like in the below example. +- **s**: Cost of the subcontracted service. + +Sending raw materials to your subcontractors (**A**) does not impact +the inventory valuation, the components still belonging to your company. +To manage this, the *Subcontracting Location* is configured as an +*Internal Location* so that the components are still valued in the +inventory. + +Then, the vendor price set on the product C form has to be what has to +be paid to the subcontractor for his parts and service time: **B + +s**. The product cost has to be: **A + B + s**, how much the +product is valued in the accounting. + +Finally, the subcontractor bill matches the purchase order, with the +proposed price coming from the finished products C. + +.. note:: + If managing the replenishment of raw materials **B** at your + subcontractor’s location is not needed, simply include the cost of + **B** in the subcontractor’s price **s** and remove the products + *B* from the *BoM*. + +Traceability +============ + +In case the products received from the subcontractor contain tracked +components, their serial or lot numbers need to be specified during the +receipt. + +On the receipt of the subcontracted product, a *Record Components* +button appears when necessary. Click on it to open a dialog and record +the serial/lot numbers of the components. If the finished product is +also tracked, its serial/lot number can be registered here too. .. image:: media/subcontracting_05.png :align: center + :alt: + +For audit purposes, it is possible to check the lot numbers recorded on +a receipt by using the icon on the right of the finished products: .. image:: media/subcontracting_06.png :align: center + :alt: -Once this information has been entered, you will see a new icon on the -receipt stock move, which will allow you to find back the components -which are part of the finished product. +Automate Replenishment of Subcontractors +======================================== + +To manage the resupply of your subcontractor, activate +*Multi-locations* in :menuselection:`Inventory --> Configuration --> +Configuration`. Then, the inventory at the subcontractor location can +be tracked. + +It is possible to resupply subcontractors by sending products from the +company locations, or by sending products from another supplier to the +subcontractors. + +Replenishment from the warehouse +-------------------------------- + +Resupplying subcontractors manually is the simplest approach. To do so, +create delivery orders in which the subcontractor is set as a delivery +address and fill the components to deliver. + +To automate the subcontractors’ replenishment propositions, there are +two approaches: + +- Reordering rules; +- Replenish on order flow. + +For the first one, just define a reordering rule on the subcontracting +location, with a minimum and maximum inventory level. When the +reordering rule is triggered, a delivery order is created to ship the +components to the subcontractor. .. image:: media/subcontracting_07.png :align: center + :alt: -Resupply the subcontractor with the components -============================================== - -There are 3 ways to manage the resupply of your subcontractor with the -components: - -- **Manually**: You create a delivery order in which you set the subcontractor as a partner and you choose the components to deliver. +The second approach is to use a “pull” flow. Here, the demand in the +finished product (real demand or forecasted one through the Master +Production Schedule) triggers the replenishment of the subcontractor. To +do so, select the route *Resupply Subcontractor on Order* on the +wanted components. .. image:: media/subcontracting_08.png :align: center + :alt: -.. note:: - You therefore need to activate *Multi-locations* in the inventory settings. +Replenishment from another supplier +----------------------------------- + +When purchasing items to another supplier, it is possible to ask him to +deliver the subcontractor directly. To do so, activate the *Drop +Shipping* feature in :menuselection:`Purchase --> Configuration --> +Configuration`. + +Now, set the *Dropship* option in the *Deliver To* field of the +*Other Information* tab. Then, provide the address of the +subcontractor for the shipping. .. image:: media/subcontracting_09.png :align: center + :alt: -- **With reordering rules**: You can define a *reordering rule* on the *Subcontracting location* to ensure that they are always enough components sent to your subcontractors. When the reordering rule is triggered, a delivery order is created for the product is automatically created. +That way, the supplier can ship items directly and you simply receive +and pay the bill. However, it is still required to validate receipts for +the subcontractor. .. image:: media/subcontracting_10.png :align: center + :alt: -- **On order**: You can also deliver the components to your subcontractors each time you order a subcontracted product. For this, you need to tick the route *Resupply Subcontractor on Order* on the wanted components. +Quality Control +--------------- + +Controlling the quality of the products manufactured by subcontractors +is possible thanks to the Odoo Quality app. Quality checks can be made +on a manufacturing step but, because the manufacturing process is +handled by an external party, it can be defined on the product +reception. .. image:: media/subcontracting_11.png - :align: center \ No newline at end of file + :align: center + :alt: + +To create a quality check at the receipt, open the *Quality* app and +create a new *Control Point* on the reception. + +.. image:: media/subcontracting_12.png + :align: center + :alt: + +By doing so, a quality check is automatically created each time a +finished product is received. \ No newline at end of file diff --git a/marketing_automation/overview/media/auto1.png b/marketing_automation/overview/media/auto1.png index 67b2ea3f4..746130139 100644 Binary files a/marketing_automation/overview/media/auto1.png and b/marketing_automation/overview/media/auto1.png differ diff --git a/marketing_automation/overview/media/auto2.png b/marketing_automation/overview/media/auto2.png index 8cd6405a8..1e6c83df3 100644 Binary files a/marketing_automation/overview/media/auto2.png and b/marketing_automation/overview/media/auto2.png differ diff --git a/marketing_automation/overview/media/filters2.png b/marketing_automation/overview/media/filters2.png index 3f40fb98f..260c37b6c 100644 Binary files a/marketing_automation/overview/media/filters2.png and b/marketing_automation/overview/media/filters2.png differ diff --git a/marketing_automation/overview/media/filters3.png b/marketing_automation/overview/media/filters3.png index 7039729ca..6d7f68739 100644 Binary files a/marketing_automation/overview/media/filters3.png and b/marketing_automation/overview/media/filters3.png differ diff --git a/marketing_automation/overview/media/filters4.png b/marketing_automation/overview/media/filters4.png index ca8e6f897..a0a44ef0a 100644 Binary files a/marketing_automation/overview/media/filters4.png and b/marketing_automation/overview/media/filters4.png differ diff --git a/marketing_automation/overview/media/filters5.png b/marketing_automation/overview/media/filters5.png index 722386bb6..716a0999b 100644 Binary files a/marketing_automation/overview/media/filters5.png and b/marketing_automation/overview/media/filters5.png differ diff --git a/marketing_automation/overview/media/filters6.png b/marketing_automation/overview/media/filters6.png index aaaf7e718..1687d6818 100644 Binary files a/marketing_automation/overview/media/filters6.png and b/marketing_automation/overview/media/filters6.png differ diff --git a/marketing_automation/overview/media/filters7.png b/marketing_automation/overview/media/filters7.png index 656fcb41b..10801c12a 100644 Binary files a/marketing_automation/overview/media/filters7.png and b/marketing_automation/overview/media/filters7.png differ diff --git a/marketing_automation/overview/media/filters8.png b/marketing_automation/overview/media/filters8.png index a9581c1d3..7456e4321 100644 Binary files a/marketing_automation/overview/media/filters8.png and b/marketing_automation/overview/media/filters8.png differ diff --git a/marketing_automation/overview/segment.rst b/marketing_automation/overview/segment.rst index d6060f58e..5e8c4c021 100644 --- a/marketing_automation/overview/segment.rst +++ b/marketing_automation/overview/segment.rst @@ -63,4 +63,5 @@ Use cases :alt: Filters in Odoo Marketing Automation .. seealso:: - - :doc:`automate_actions` \ No newline at end of file + - :doc:`automate_actions` + - :doc:`../../general/tags/take_tags` \ No newline at end of file diff --git a/odoo_sh/advanced/submodules.rst b/odoo_sh/advanced/submodules.rst index 77cb72f80..8dbc57d52 100644 --- a/odoo_sh/advanced/submodules.rst +++ b/odoo_sh/advanced/submodules.rst @@ -37,6 +37,10 @@ Adding a submodule With Odoo.sh (simple) --------------------- +.. warning:: + For now it is not possible to add **private** repositories with this method. You can nevertheless + do so :ref:`with Git `. + On Odoo.sh, in the branches view of your project, choose the branch in which you want to add a submodule. In the upper right corner, click on the *Submodule* button, and then on *Run*. @@ -58,9 +62,6 @@ On Github, you can get the repository URL with the *Clone or download* button of .. image:: ./media/advanced-submodules-github-sshurl.png :align: center -For now it is not possible to add **private** repositories with this method. -You can nevertheless do so :ref:`with Git `. - .. _odoosh-advanced-submodules-withgit: With Git (advanced) diff --git a/planning.rst b/planning.rst index f383ba532..0d79df0dc 100644 --- a/planning.rst +++ b/planning.rst @@ -7,5 +7,4 @@ Planning .. toctree:: :titlesonly: - planning/duplicate_a_planning - planning/send_planned_shifts + planning/overview diff --git a/planning/media/cs3.png b/planning/media/cs3.png deleted file mode 100644 index ee08f43e7..000000000 Binary files a/planning/media/cs3.png and /dev/null differ diff --git a/planning/media/sp1.png b/planning/media/sp1.png deleted file mode 100644 index 33c347240..000000000 Binary files a/planning/media/sp1.png and /dev/null differ diff --git a/planning/overview.rst b/planning/overview.rst new file mode 100644 index 000000000..4df6d0a84 --- /dev/null +++ b/planning/overview.rst @@ -0,0 +1,9 @@ +======== +Overview +======== + +.. toctree:: + :titlesonly: + + overview/duplicate_a_planning + overview/send_planned_shifts diff --git a/planning/duplicate_a_planning.rst b/planning/overview/duplicate_a_planning.rst similarity index 97% rename from planning/duplicate_a_planning.rst rename to planning/overview/duplicate_a_planning.rst index 6139b164b..d672e2c7b 100644 --- a/planning/duplicate_a_planning.rst +++ b/planning/overview/duplicate_a_planning.rst @@ -1,5 +1,5 @@ ============================================ -Create a schedule and make encoding easier +Create a Schedule and Make Encoding Easier ============================================ Organize regular schedules or forecast projects in a long term basis. Create shifts to manage your tasks, assign employees, and stay organized at a high level. diff --git a/planning/media/cs1.png b/planning/overview/media/cs1.png similarity index 100% rename from planning/media/cs1.png rename to planning/overview/media/cs1.png diff --git a/planning/media/cs2.png b/planning/overview/media/cs2.png similarity index 100% rename from planning/media/cs2.png rename to planning/overview/media/cs2.png diff --git a/planning/overview/media/cs3.png b/planning/overview/media/cs3.png new file mode 100644 index 000000000..882071a27 Binary files /dev/null and b/planning/overview/media/cs3.png differ diff --git a/planning/media/cs4.png b/planning/overview/media/cs4.png similarity index 100% rename from planning/media/cs4.png rename to planning/overview/media/cs4.png diff --git a/planning/overview/media/sp1.png b/planning/overview/media/sp1.png new file mode 100644 index 000000000..513e327b9 Binary files /dev/null and b/planning/overview/media/sp1.png differ diff --git a/planning/media/sp2.png b/planning/overview/media/sp2.png similarity index 100% rename from planning/media/sp2.png rename to planning/overview/media/sp2.png diff --git a/planning/media/sp3.png b/planning/overview/media/sp3.png similarity index 100% rename from planning/media/sp3.png rename to planning/overview/media/sp3.png diff --git a/planning/media/sp4.png b/planning/overview/media/sp4.png similarity index 100% rename from planning/media/sp4.png rename to planning/overview/media/sp4.png diff --git a/planning/send_planned_shifts.rst b/planning/overview/send_planned_shifts.rst similarity index 96% rename from planning/send_planned_shifts.rst rename to planning/overview/send_planned_shifts.rst index c33aa940b..eb1c71c34 100644 --- a/planning/send_planned_shifts.rst +++ b/planning/overview/send_planned_shifts.rst @@ -1,5 +1,5 @@ ============================================================ -Send planned shifts and give employees autonomy over shifts +Send Planned Shifts and Give Employees Autonomy Over Shifts ============================================================ If you are not on top of your tasks and shifts you might fall behind, loosing productivity. Allowing your employees to have a say over shifts helps you to be on top of your workload, and diff --git a/point_of_sale.rst b/point_of_sale.rst index 078c1aebe..7ed6bb5dd 100644 --- a/point_of_sale.rst +++ b/point_of_sale.rst @@ -12,7 +12,6 @@ Point of Sale point_of_sale/restaurant point_of_sale/payment point_of_sale/advanced_pricing_features - point_of_sale/analyze point_of_sale/belgian_fdm diff --git a/point_of_sale/analyze.rst b/point_of_sale/analyze.rst deleted file mode 100644 index 7d1fa4efd..000000000 --- a/point_of_sale/analyze.rst +++ /dev/null @@ -1,8 +0,0 @@ -============= -Analyze sales -============= - -.. toctree:: - :titlesonly: - - analyze/statistics \ No newline at end of file diff --git a/point_of_sale/analyze/media/statistics01.png b/point_of_sale/analyze/media/statistics01.png deleted file mode 100644 index b63a3a06b..000000000 Binary files a/point_of_sale/analyze/media/statistics01.png and /dev/null differ diff --git a/point_of_sale/analyze/media/statistics02.png b/point_of_sale/analyze/media/statistics02.png deleted file mode 100644 index 9affa6628..000000000 Binary files a/point_of_sale/analyze/media/statistics02.png and /dev/null differ diff --git a/point_of_sale/analyze/statistics.rst b/point_of_sale/analyze/statistics.rst deleted file mode 100644 index e06daf098..000000000 --- a/point_of_sale/analyze/statistics.rst +++ /dev/null @@ -1,24 +0,0 @@ -================================== -View your Point of Sale statistics -================================== - -Keeping track of your sales is key for any business. That's why Odoo -provides you a practical view to analyze your sales and get meaningful -statistics. - -View your statistics -==================== - -To access your statistics go to :menuselection:`Point of Sale --> -Reporting --> Orders` - -You can then see your various statistics in graph or pivot form. - -.. image:: media/statistics01.png - :align: center - -.. note:: - You can also access the stats views by clicking here - -.. image:: media/statistics02.png - :align: center diff --git a/point_of_sale/overview.rst b/point_of_sale/overview.rst index 69c8c6126..1fd4f9ef1 100644 --- a/point_of_sale/overview.rst +++ b/point_of_sale/overview.rst @@ -5,5 +5,5 @@ Overview .. toctree:: :titlesonly: - overview/start + overview/getting_started overview/register diff --git a/point_of_sale/overview/getting_started.rst b/point_of_sale/overview/getting_started.rst new file mode 100644 index 000000000..c8ad2dc2f --- /dev/null +++ b/point_of_sale/overview/getting_started.rst @@ -0,0 +1,146 @@ +=============== +Getting started +=============== + +When working with a Point of Sale application, employees want a +simple, and user-friendly solution. A solution that works online or +offline and with any device. + +A Point of Sale system is a fully integrated application that allows any transaction, +automatically registers product moves in your stock, and gives you +real-time statistics and consolidations across all shops. + +Configuration +============= + +Make products available in the PoS +---------------------------------- + +To make products available for sale, go to :menuselection:`Point of +Sale --> Products --> Products` and open a product. In the *Sales* +tab, enable *Available in Point of Sale*. + +.. image:: media/getting_started_01.png + :align: center + :alt: Product form. Making the product available in PoS. + +.. note:: + You can also define if the product has to be weighted or not. + +Configure your payment methods +------------------------------ + +To add a payment method, you first need to create it. Go to +:menuselection:`Point of Sale --> Configuration --> Payment Methods` +and click on create. Then, you can name your payment method and set it +up. + +.. image:: media/getting_started_02.png + :align: center + :alt: Creating a new payment method for a Point of Sale. + +.. note:: + Don’t forget your credentials for methods using a payment terminal. + +Now, you can select the payment method in your PoS settings. To do so, +go to :menuselection:`Point of Sale --> Configuration --> Point of +Sale` and open the PoS in which you want to include the payment method. Then, add the +payment method. + +.. image:: media/getting_started_03.png + :align: center + :alt: Making the payment method available in a point of sale. + +.. note:: + *Configuration* is the menu where you can edit all your point of sale settings. + Some more features are available for restaurants. + +Your first PoS session +====================== + +Your first order +---------------- + +Open a new session from the dashboard by clicking on *New Session*. + +.. image:: media/getting_started_04.png + :align: center + :alt: Launching a new session. + +After the loading screen, you arrive on the PoS interface. + +.. image:: media/getting_started_05.png + :align: center + :alt: Point of sale dashboard. + +Once an order is completed, you can register the payment. All the +available payment methods appear on the left of the screen. Select the payment +method and enter the received amount. Then, you can validate the +payment. + +Return and refund products +-------------------------- + +Having a well-thought-out return policy is key to keep customers satisfied and make the process +of accepting returns and refunds easy for you. + +To do that, from the PoS interface, select the product and quantity (with the +/- button) that the +customer wants to return. For multiple products, repeat the process individually. + +.. image:: media/getting_started_06.png + :align: center + :alt: Refunding a product with the point of sale app. + +When on the payment interface, the total is negative. To end the refund, +process the payment and validate it. + +.. image:: media/getting_started_07.png + :align: center + :alt: Giving back money to customer in Odoo Point of Sale. + +Close the PoS session +--------------------- + +To close your session at the end of the day, click on the close button on the upper right corner +of your screen and confirm. Now, close the session on the dashboard view. + +.. image:: media/getting_started_08.png + :align: center + :alt: How to close a point of sale session. + +.. tip:: + It’s strongly advised to close your PoS session at the end of each day. + +Once a session is closed, you can see a summary of all transactions per payment method. +Then, click on a line to see all orders that were paid during your PoS session. +If everything is correct, validate the session and post the closing entries. + +.. image:: media/getting_started_09.png + :align: center + :alt: Point of sale sales report before closing the session. + +.. tip:: + To connect the PoS hardware with an Odoo IoT Box, please refer to these + docs: :doc:`Connect an IoT Box to your database + <../../iot/config/connect>` and :doc:`Use the IoT Box for the PoS + <../../iot/config/pos>`. + +View your statistics +==================== + +Keeping track of your sales is essential to get meaningful statistics. That’s why Odoo +provides analyzes about your sales. + +To access your statistics, go to :menuselection:`Point of Sales --> +Reporting --> Orders`. There, you can see various statistics in graph +or pivot form. + +.. image:: media/getting_started_10.png + :align: center + :alt: Orders analysis with pivot view of the point of sale reporting feature. + +You can also access them through the dashboard. + +.. image:: media/getting_started_11.png + :align: center + :alt: Accessing orders analysis via the point of sale dashboard. Reporting feature on the PoS form. \ No newline at end of file diff --git a/point_of_sale/overview/media/getting_started_01.png b/point_of_sale/overview/media/getting_started_01.png new file mode 100644 index 000000000..a43da66c1 Binary files /dev/null and b/point_of_sale/overview/media/getting_started_01.png differ diff --git a/point_of_sale/overview/media/getting_started_02.png b/point_of_sale/overview/media/getting_started_02.png new file mode 100644 index 000000000..3abe9d8ee Binary files /dev/null and b/point_of_sale/overview/media/getting_started_02.png differ diff --git a/point_of_sale/overview/media/getting_started_03.png b/point_of_sale/overview/media/getting_started_03.png new file mode 100644 index 000000000..a59b15e42 Binary files /dev/null and b/point_of_sale/overview/media/getting_started_03.png differ diff --git a/point_of_sale/overview/media/getting_started_04.png b/point_of_sale/overview/media/getting_started_04.png new file mode 100644 index 000000000..f764fd11e Binary files /dev/null and b/point_of_sale/overview/media/getting_started_04.png differ diff --git a/point_of_sale/overview/media/getting_started_05.png b/point_of_sale/overview/media/getting_started_05.png new file mode 100644 index 000000000..de696df27 Binary files /dev/null and b/point_of_sale/overview/media/getting_started_05.png differ diff --git a/point_of_sale/overview/media/getting_started_06.png b/point_of_sale/overview/media/getting_started_06.png new file mode 100644 index 000000000..4089995aa Binary files /dev/null and b/point_of_sale/overview/media/getting_started_06.png differ diff --git a/point_of_sale/overview/media/getting_started_07.png b/point_of_sale/overview/media/getting_started_07.png new file mode 100644 index 000000000..b76bd8e81 Binary files /dev/null and b/point_of_sale/overview/media/getting_started_07.png differ diff --git a/point_of_sale/overview/media/getting_started_08.png b/point_of_sale/overview/media/getting_started_08.png new file mode 100644 index 000000000..8eaf8299d Binary files /dev/null and b/point_of_sale/overview/media/getting_started_08.png differ diff --git a/point_of_sale/overview/media/getting_started_09.png b/point_of_sale/overview/media/getting_started_09.png new file mode 100644 index 000000000..08f6797aa Binary files /dev/null and b/point_of_sale/overview/media/getting_started_09.png differ diff --git a/point_of_sale/overview/media/getting_started_10.png b/point_of_sale/overview/media/getting_started_10.png new file mode 100644 index 000000000..83a0be60c Binary files /dev/null and b/point_of_sale/overview/media/getting_started_10.png differ diff --git a/point_of_sale/overview/media/getting_started_11.png b/point_of_sale/overview/media/getting_started_11.png new file mode 100644 index 000000000..d3ede99eb Binary files /dev/null and b/point_of_sale/overview/media/getting_started_11.png differ diff --git a/point_of_sale/overview/media/start01.png b/point_of_sale/overview/media/start01.png deleted file mode 100644 index 1e80e4695..000000000 Binary files a/point_of_sale/overview/media/start01.png and /dev/null differ diff --git a/point_of_sale/overview/media/start02.png b/point_of_sale/overview/media/start02.png deleted file mode 100644 index e4bfbaab5..000000000 Binary files a/point_of_sale/overview/media/start02.png and /dev/null differ diff --git a/point_of_sale/overview/media/start03.png b/point_of_sale/overview/media/start03.png deleted file mode 100644 index 98d0ec1d3..000000000 Binary files a/point_of_sale/overview/media/start03.png and /dev/null differ diff --git a/point_of_sale/overview/media/start04.png b/point_of_sale/overview/media/start04.png deleted file mode 100644 index 3107c5347..000000000 Binary files a/point_of_sale/overview/media/start04.png and /dev/null differ diff --git a/point_of_sale/overview/media/start05.png b/point_of_sale/overview/media/start05.png deleted file mode 100644 index 23a56a74b..000000000 Binary files a/point_of_sale/overview/media/start05.png and /dev/null differ diff --git a/point_of_sale/overview/media/start06.png b/point_of_sale/overview/media/start06.png deleted file mode 100644 index c2f27f6d1..000000000 Binary files a/point_of_sale/overview/media/start06.png and /dev/null differ diff --git a/point_of_sale/overview/media/start07.png b/point_of_sale/overview/media/start07.png deleted file mode 100644 index fc563e8d2..000000000 Binary files a/point_of_sale/overview/media/start07.png and /dev/null differ diff --git a/point_of_sale/overview/media/start08.png b/point_of_sale/overview/media/start08.png deleted file mode 100644 index 1ae55d9fe..000000000 Binary files a/point_of_sale/overview/media/start08.png and /dev/null differ diff --git a/point_of_sale/overview/media/start09.png b/point_of_sale/overview/media/start09.png deleted file mode 100644 index 989c4e428..000000000 Binary files a/point_of_sale/overview/media/start09.png and /dev/null differ diff --git a/point_of_sale/overview/start.rst b/point_of_sale/overview/start.rst deleted file mode 100644 index d6d8052aa..000000000 --- a/point_of_sale/overview/start.rst +++ /dev/null @@ -1,134 +0,0 @@ -======================================= -Getting started with Odoo Point of Sale -======================================= - -Overview -======== - -Odoo's online Point of Sale application is based on a simple, user -friendly interface. The Point of Sale application can be used online or -offline on iPads, Android tablets or laptops. - -Odoo Point of Sale is fully integrated with the Inventory and Accounting -applications. Any transaction in your point of sale will be -automatically registered in your stock and accounting entries but also -in your CRM as the customer can be identified from the app. - -You will be able to run real time statistics and consolidations across -all your shops without the hassle of integrating several external -applications. - -Configuration -============= - -Install the Point of Sale application -------------------------------------- - -Go to Apps and install the Point of Sale application. - -.. image:: media/start01.png - :align: center - -.. tip:: - If you are using Odoo Accounting, do not forget to install a chart of - accounts if it's not already done. This can be achieved in the - accounting settings. - -Make products available in the Point of Sale --------------------------------------------- - -To make products available for sale in the Point of Sale, open a -product, go in the tab Sales and tick the box "Available in Point of -Sale". - -.. image:: media/start02.png - :align: center - -.. tip:: - You can also define there if the product has to be weighted with a - scale. - -Configure your payment methods ------------------------------- - -To add a new payment method for a Point of Sale, go to -:menuselection:`Point of Sale --> Configuration --> Point of Sale --> Choose -a Point of Sale --> Go to the Payments section` and click on the link -"Payment Methods". - -.. image:: media/start03.png - :align: center - -Now, you can create new payment methods. Do not forget to tick the box -"Use in Point of Sale". - -.. image:: media/start04.png - :align: center - -Once your payment methods are created, you can decide in which Point of -Sale you want to make them available in the Point of Sale configuration. - -.. image:: media/start05.png - :align: center - -Configure your Point of Sale ----------------------------- - -Go to :menuselection:`Point of Sale --> Configuration --> Point of Sale` -and select the Point of Sale you want to configure. From this menu, you -can edit all the settings of your Point of Sale. - -Create your first PoS session -============================= - -Your first order ----------------- - -You are now ready to make your first sales through the PoS. From the PoS -dashboard, you see all your points of sale and you can start a new -session. - -.. image:: media/start06.png - :align: center - -You now arrive on the PoS interface. - -.. image:: media/start07.png - :align: center - -Once an order is completed, you can register the payment. All the -available payment methods appear on the left of the screen. Select the -payment method and enter the received amount. You can then validate the -payment. - -You can register the next orders. - -Close the PoS session ---------------------- - -At the end of the day, you will close your PoS session. For this, click -on the close button that appears on the top right corner and confirm. -You can now close the session from the dashboard. - -.. image:: media/start08.png - :align: center - -.. tip:: - It's strongly advised to close your PoS session at the end of each day. - -You will then see a summary of all transactions per payment method. - -.. image:: media/start09.png - :align: center - -You can click on a line of that summary to see all the orders that have -been paid by this payment method during that PoS session. - -If everything is correct, you can validate the PoS session and post the -closing entries. - -It's done, you have now closed your first PoS session. - -.. tip:: - To connect the PoS to hardware with an Odoo IoT Box, please see the section - :doc:`../../../iot/config/connect` and :doc:`../../../iot/config/pos` diff --git a/point_of_sale/shop.rst b/point_of_sale/shop.rst index edbb77a98..19ea2ef6e 100644 --- a/point_of_sale/shop.rst +++ b/point_of_sale/shop.rst @@ -6,7 +6,6 @@ Shop Features :titlesonly: shop/invoice - shop/refund shop/cash_control shop/barcode shop/multicashiers diff --git a/point_of_sale/shop/media/refund01.png b/point_of_sale/shop/media/refund01.png deleted file mode 100644 index 9e74b3d50..000000000 Binary files a/point_of_sale/shop/media/refund01.png and /dev/null differ diff --git a/point_of_sale/shop/media/refund02.png b/point_of_sale/shop/media/refund02.png deleted file mode 100644 index b7f75b691..000000000 Binary files a/point_of_sale/shop/media/refund02.png and /dev/null differ diff --git a/point_of_sale/shop/refund.rst b/point_of_sale/shop/refund.rst deleted file mode 100644 index 652be3c8c..000000000 --- a/point_of_sale/shop/refund.rst +++ /dev/null @@ -1,21 +0,0 @@ -================================== -Accept returns and refund products -================================== - -Having a well-thought-out return policy is key to attract - and keep - -your customers. Making it easy for you to accept and refund those -returns is therefore also a key aspect of your *Point of Sale* -interface. - -From your *Point of Sale* interface, select the product your customer -wants to return, use the +/- button and enter the quantity they need to -return. If they need to return multiple products, repeat the process. - -.. image:: media/refund01.png - :align: center - -As you can see, the total is in negative, to end the refund you simply -have to process the payment. - -.. image:: media/refund02.png - :align: center diff --git a/project.rst b/project.rst index 741de7dff..6d60a1afb 100644 --- a/project.rst +++ b/project.rst @@ -8,7 +8,7 @@ Project :titlesonly: project/overview - project/configuration + project/tasks project/planning + project/record_and_invoice project/advanced - project/application \ No newline at end of file diff --git a/project/advanced.rst b/project/advanced.rst index e0e49a3d8..5646a31c9 100644 --- a/project/advanced.rst +++ b/project/advanced.rst @@ -5,6 +5,7 @@ Advanced .. toctree:: :titlesonly: - advanced/so_to_task + advanced/advanced_projects advanced/feedback - advanced/profitability \ No newline at end of file + advanced/so_to_task + advanced/profitability diff --git a/project/advanced/advanced_projects.rst b/project/advanced/advanced_projects.rst new file mode 100644 index 000000000..ad261748f --- /dev/null +++ b/project/advanced/advanced_projects.rst @@ -0,0 +1,111 @@ +========================= +Advanced Project Settings +========================= + +Projects can be created for a specific customer or team, and can be coordinated among your +employees through visibility options. Stages can be shared among tasks, and the exact time spent on +each project can be tracked. All of it in favor of a more integrated and dynamic organization. + +Create advanced projects +======================== +| Go to :menuselection:`Project --> Configuration --> Projects --> Create`. +| Choose a *Customer* in order to create a project specifically for him. If not, simply leave the + field blank. + +.. image:: media/advanced_project.png + :align: center + :alt: Click on create and enable multiple options for an advanced project in Odoo Project + +Choose who can access a project +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +To create a project for specific teams, under *Visibility*, choose who can have access to the +project: + +- *Invited employees*: the ones who are followers (see :doc:`../tasks/collaborate`) +- *All employees*. +- *Portal users and all employees*: it enables the option *Share*. Recipients receive an + email with an invitation to access the document (project). + +Choose an *Analytic Account* to track the profitability of your project in a specific account. + +Timesheet and record time on tasks +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +| To track the time spent on tasks, enable *Timesheets*. +| In order to be able to launch a timer, also enable *Timesheet timer*. + +.. image:: media/timesheet.png + :align: center + :alt: Tab timesheet is being shown under a task in Odoo Project + +Create sales orders from a task +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +To invoice the time (service) and material used on a task, enable *Bill from tasks*. Then, choose +the service/product which you would like to bill, or create one on the fly. + +.. image:: media/create_sales_order.png + :align: center + :height: 270 + :alt: Menu create sales order is being shown under a task in Odoo Project + +Track the material used on a task +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +After enabling *Bill from Tasks*, enable *Products on Tasks* to track the products/material used +during the work on a specific task. + +.. image:: media/track_material.png + :align: center + :alt: Menu to add products is being shown under a task in Odoo Project + +Take advantage of worksheets +~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Worksheets are reports of the work done. To customize and include them in your tasks, enable +*Worksheets*. Choose an existing template or create one on the fly. + +.. image:: media/worksheets.png + :align: center + :alt: Options worksheet and send report being shown under a task in Odoo Project + +Schedule shifts on projects +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +To create shifts to manage your tasks, assign employees, and stay organized, enable *Planning*. + +.. image:: media/planning_menu.png + :align: center + :width: 290 + :alt: Shortcut to planning from the dashboard in Odoo Project + +.. image:: media/planning_view.png + :align: center + :alt: Planning view from a project in Odoo Project + +Manage employees work hours +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +*Working time* defines the number of your employees’ working hours. It adjusts the Gantt +planning view of your interventions. Open the external link to adjust the daily hours. + +.. image:: media/work_hours.png + :align: center + :height: 380 + :alt: Edit the working hours from Odoo Project + +Share stages across projects +============================ + +| In order to have a clean Kanban view that works across projects, and to avoid duplicates, + delineate specific stages for different projects. +| :doc:`Activate the Developer mode <../../general/developer_mode/activate>` then go to + :menuselection:`Project --> Configuration --> Stages`. Choose the respective one and add + the projects among which you would like to share stages. + +.. image:: media/share_stages.png + :align: center + :alt: Open a stage and choose the projects to share it with in Odoo Project + + diff --git a/project/advanced/media/access_tasks.png b/project/advanced/media/access_tasks.png new file mode 100644 index 000000000..6168bf561 Binary files /dev/null and b/project/advanced/media/access_tasks.png differ diff --git a/project/advanced/media/advanced_project.png b/project/advanced/media/advanced_project.png new file mode 100644 index 000000000..94583bc1d Binary files /dev/null and b/project/advanced/media/advanced_project.png differ diff --git a/project/advanced/media/confirm_quotation.png b/project/advanced/media/confirm_quotation.png new file mode 100644 index 000000000..7f459ee4a Binary files /dev/null and b/project/advanced/media/confirm_quotation.png differ diff --git a/project/advanced/media/create_sales_order.png b/project/advanced/media/create_sales_order.png new file mode 100644 index 000000000..3e985d0df Binary files /dev/null and b/project/advanced/media/create_sales_order.png differ diff --git a/project/advanced/media/hours_profitability.png b/project/advanced/media/hours_profitability.png index 0bf961e67..a2c05ee65 100644 Binary files a/project/advanced/media/hours_profitability.png and b/project/advanced/media/hours_profitability.png differ diff --git a/project/advanced/media/planning_menu.png b/project/advanced/media/planning_menu.png new file mode 100644 index 000000000..5470616ba Binary files /dev/null and b/project/advanced/media/planning_menu.png differ diff --git a/project/advanced/media/planning_view.png b/project/advanced/media/planning_view.png new file mode 100644 index 000000000..f7915c806 Binary files /dev/null and b/project/advanced/media/planning_view.png differ diff --git a/project/advanced/media/record_time.png b/project/advanced/media/record_time.png new file mode 100644 index 000000000..df8a615a1 Binary files /dev/null and b/project/advanced/media/record_time.png differ diff --git a/project/advanced/media/sales_invoicing.png b/project/advanced/media/sales_invoicing.png new file mode 100644 index 000000000..7993964b2 Binary files /dev/null and b/project/advanced/media/sales_invoicing.png differ diff --git a/project/advanced/media/sales_order.png b/project/advanced/media/sales_order.png new file mode 100644 index 000000000..f0212a9fe Binary files /dev/null and b/project/advanced/media/sales_order.png differ diff --git a/project/advanced/media/share_stages.png b/project/advanced/media/share_stages.png new file mode 100644 index 000000000..7d22e8784 Binary files /dev/null and b/project/advanced/media/share_stages.png differ diff --git a/project/advanced/media/so_to_task01.png b/project/advanced/media/so_to_task01.png deleted file mode 100644 index 16df19331..000000000 Binary files a/project/advanced/media/so_to_task01.png and /dev/null differ diff --git a/project/advanced/media/so_to_task02.png b/project/advanced/media/so_to_task02.png deleted file mode 100644 index 0f248c488..000000000 Binary files a/project/advanced/media/so_to_task02.png and /dev/null differ diff --git a/project/advanced/media/so_to_task03.png b/project/advanced/media/so_to_task03.png deleted file mode 100644 index 1b54e74ab..000000000 Binary files a/project/advanced/media/so_to_task03.png and /dev/null differ diff --git a/project/advanced/media/so_to_task04.png b/project/advanced/media/so_to_task04.png deleted file mode 100644 index ffd32ae9b..000000000 Binary files a/project/advanced/media/so_to_task04.png and /dev/null differ diff --git a/project/advanced/media/so_to_task05.png b/project/advanced/media/so_to_task05.png deleted file mode 100644 index ecab10e60..000000000 Binary files a/project/advanced/media/so_to_task05.png and /dev/null differ diff --git a/project/advanced/media/so_to_task06.png b/project/advanced/media/so_to_task06.png deleted file mode 100644 index a92e5eb9d..000000000 Binary files a/project/advanced/media/so_to_task06.png and /dev/null differ diff --git a/project/advanced/media/timesheet.png b/project/advanced/media/timesheet.png new file mode 100644 index 000000000..8d1f6459c Binary files /dev/null and b/project/advanced/media/timesheet.png differ diff --git a/project/advanced/media/track_material.png b/project/advanced/media/track_material.png new file mode 100644 index 000000000..6a37906f8 Binary files /dev/null and b/project/advanced/media/track_material.png differ diff --git a/project/advanced/media/work_hours.png b/project/advanced/media/work_hours.png new file mode 100644 index 000000000..80de31c8b Binary files /dev/null and b/project/advanced/media/work_hours.png differ diff --git a/project/advanced/media/worksheets.png b/project/advanced/media/worksheets.png new file mode 100644 index 000000000..7b17eebe1 Binary files /dev/null and b/project/advanced/media/worksheets.png differ diff --git a/project/advanced/so_to_task.rst b/project/advanced/so_to_task.rst index f0684938a..66ae643c7 100644 --- a/project/advanced/so_to_task.rst +++ b/project/advanced/so_to_task.rst @@ -1,114 +1,71 @@ -====================================== -How to create tasks from sales orders? +=========================================== +Create Projects and Tasks from Sales Orders +=========================================== + +When you sell your services, you can choose to automatically have a project/task created, helping +you to not lose track of the work that needs to get done, streamlining the processes between teams. +In addition to that, you are able to invoice or reinvoice clients according to the exact time +spent on that service. + +Product set up +============== + +| Under :menuselection:`Sales --> Products --> Products` create a new product or set up an existing + one. Under *General Information* set the *Product Type* as *Service*. Under the *Sales* tab select + the *Service Invoicing Policy* and *Service Tracking*. +| If you choose to: + +| - *Create a task in an existing project*: a task is added in the first column of the selected + project. +| - *Create a task in sales order’s project*: a new project for each sales order of that service is + created based on the template you have chosen. +| - *Create a new project but no task*: only creates a new project, for each time that service is + sold, based on the skeleton of the project template chosen. + +.. image:: media/sales_invoicing.png + :align: center + :alt: Choose the invoicing options on a product form under the sales tab in Odoo Project + +Confirm a quotation and have a project/task created +=================================================== + +Now, once a *Quotation* is confirmed and transformed into a *Sales Order*, a project or task +is automatically created. + +.. image:: media/confirm_quotation.png + :align: center + :alt: Click on confirm in a quotation and have a task or project created for Odoo Project + +Access the task generated from Project ====================================== -In this section, we will see the integration between Odoo's **Project -management** and **Sales** modules and more precisely how to generate tasks -from sales order lines. +On the *Project* application, your new project and/or task (depending on the previous *Service +Tracking* options chosen), is shown: -In project management, a task is an activity that needs to be -accomplished within a defined period of time. For a company selling -services, the task typically represents the service that has been sold -to the customer and that needs to be delivered. This is why it is useful -to be able to generate a task from a sale order in order to streamline -the process between the Sales and Services departments. +.. image:: media/access_tasks.png + :align: center + :height: 250 + :alt: Click on tasks in the dashboard view to access them in Odoo Project -As an example, you may sell a pack of ``50 Hours`` of support at ``$25,000``. -The price is fixed and charged initially. But you want to keep track of -the support service you did for the customer. On the sale order, the -service will trigger the creation of a task from which the consultant -will record timesheets and, if needed, reinvoice the client according to -the overtime spent on the project. +Record the time spent and create an invoice +=========================================== -Configuration -============= +From *Project*, access your task and document the time spent under the *Timesheets* tab. -Install the required applications ---------------------------------- +.. image:: media/record_time.png + :align: center + :alt: Access the task and under the tab timesheet record the time spent in Odoo Project -In order to be able to generate a task from a sale order you will need -to install the **Sales Management** and **Project** application. Simply go into -the application module and install the following: +Once the task is complete, click on *Sales Order* and *Create Invoice*. -.. image:: media/so_to_task01.png - :align: center +.. image:: media/sales_order.png + :align: center + :alt: Click on sales order in the task once it is complete in Odoo Project -.. image:: media/so_to_task02.png - :align: center - -And finally, the **Timesheet** app, Timesheet will not only let you create a task from a Sales order, but also invoice your customer based on the time spent on that task. - -Simply go into the application module and install the following: - -.. image:: media/so_to_task03.png - :align: center - -Create and set up a product -=========================== - -You need to configure your service on the product form itself in order -to generate a task every time it will be sold. From the **Sales** module, -use the menu :menuselection:`Sales --> Products` and create a new -product with the`following setup: - -- **Name**: Technical Support - -- **Product Type**: Service - -- **Unit of Measure**: Hours (go to :menuselection:`Configuration --> Settings` - and, under **Unit of measures**, check the **Some products may be - sold/purchased in different unit of measures (advanced)** radio - button) - -- **Invoicing policy**: You can set up your invoice policy either on - ordered quantity or on delivered quantity. You can easily follow - the amount of hours that were delivered and/or invoiced to your - client. - -- **Track Service**: Create a task and track hours, as your product - is a service invoiceable by hours you have to set the units of - measures of the product to hours as well. - -.. image:: media/so_to_task04.png - :align: center - -.. note:: - Link your task to an existing project or create a new one on the fly if - the product is specific to one project. Otherwise, you can leave it - blank, odoo will then create a project per SO. - -Create the Sales Order -====================== - -Once the product is set up, you can create a quotation or a sale order -with the related product. Once the quotation is confirmed and -transformed into a sale order, the task will be created. - -.. image:: media/so_to_task05.png - :align: center - -Access the task generated from the sale order -============================================= - -On the Project module, your new task will appear : - -- either on a related project if you have selected one in the product - form - -- either on a new project with the name of related the sale order as - title (you can easily change the name of the project by clicking - on :menuselection:`More --> Settings`) - -.. image:: media/so_to_task06.png - :align: center - -On the task itself, you will now be able to record timesheets and to -invoice your customers based on your invoicing policy. - -.. note:: - On Odoo, the central document is the sales order, which means that - the source document of the task is the related sales order. +.. tip:: + To only invoice approved timesheets, go to :menuselection:`Timesheets --> Configuration --> + Settings`, and enable *Approved timesheets only*. .. seealso:: - * :doc:`../configuration/setup` - * :doc:`../../sales/invoicing/subscriptions` + - :doc:`../overview/setup` + - :doc:`../../sales/invoicing/subscriptions` diff --git a/project/application.rst b/project/application.rst deleted file mode 100644 index 326d369a9..000000000 --- a/project/application.rst +++ /dev/null @@ -1,9 +0,0 @@ -===================== -Awesome Timesheet App -===================== - -.. toctree:: - :titlesonly: - - application/intro - diff --git a/project/application/intro.rst b/project/application/intro.rst deleted file mode 100644 index 598d7a610..000000000 --- a/project/application/intro.rst +++ /dev/null @@ -1,28 +0,0 @@ -=================== -Demonstration Video -=================== - -.. youtube:: v2O0YZU19ms - :align: right - :width: 700 - :height: 394 - -Transcript -========== - -Awesome Timesheet is a mobile app that helps me to instantly record -any time spent on projects in just a click. It's so effortless. - -Regardless of the device, the timesheet app is just one click away. -Look at the chrome plugin. No need to sign in, just click and start. -It's smooth. It works offline too and is automatically synchronized -with my Odoo account. - -Plus, I get individual statistics via the mobile and chrome plugin. -I can go further in the analysis in my Odoo account. I receive reports -of timesheets per user, drill-down per project, and much more. - -Awesome Timesheet is fully integrated with Odoo invoicing, the customer -billing is done automatically. But also with Odoo projects. It's time-saving! - -Download awesome timesheet now and gain in productivity. diff --git a/project/configuration.rst b/project/configuration.rst deleted file mode 100644 index 76205b7ab..000000000 --- a/project/configuration.rst +++ /dev/null @@ -1,11 +0,0 @@ -============================= -Configuration and basic usage -============================= - -.. toctree:: - :titlesonly: - - configuration/setup - configuration/visualization - configuration/collaboration - configuration/time_record \ No newline at end of file diff --git a/project/configuration/collaboration.rst b/project/configuration/collaboration.rst deleted file mode 100644 index e134deebe..000000000 --- a/project/configuration/collaboration.rst +++ /dev/null @@ -1,295 +0,0 @@ -===================================== -How to manage & collaborate on tasks? -===================================== - -Responsibilities -================ - -In Odoo, you can assign the person who is in charge of the task. - -When creating a task, by default you are responsible for it. You can -change this by simply typing the username of someone else and choosing -it from the suggestions in the drop down menu. - -.. tip:: - If you add someone new, you can "Create & Edit" a new user on the - fly. In order to do so, you need the administrator rights. - -Followers -========= - -In a task, you can add other users as **Followers**. Adding a follower means -that this person will be notified of any changes that might happen in -the task. The goal is to allow outside contribution from the chatter. -This can be invaluable when you need the advice of colleagues from other -departments. You could also invite customers to take part in the task. -They'll be notified by email of the conversation in the chatter, and -will be able to take part in it simply by replying to the mail. The -followers can see the whole task like you, with the description and the -chatter. - -Project: follow a project to follow the pipe --------------------------------------------- - -You can decide to follow a Project. In this situation, you'll be -notified of any changes from the project: tasks sliding from one stage -to another,conversation taking place,, etc. You'll receive all the -information in your inbox. This feature is perfect for a Project Manager -who wants to see the big picture all the time. - -Task: follow a specific task ----------------------------- - -Following a task is the same idea as following a project, except you are -focused on a specific part of the project. All notifications or changes -in that task also appear in your inbox. - -Choose which action to follow ------------------------------ - -You can choose what you want to follow by clicking on the down arrow in -the Following button. - -By default, you follow the discussions but you can also choose to be -notified when a note is logged in, when a task is created, blocked or -ready to go, and when the stage of the task has changed. - -.. image:: media/manage_collaborate01.png - :align: center - -Time management: analytic accounts -================================== - -Whether it helps you for estimation of future projects or data for -billing or invoicing, time tracking in Project Management is a real -plus. - -The Odoo Timesheet app is perfectly integrated with Odoo Project and can -help you track time easily. - -Once Odoo Timesheet is installed, the timesheet option is automatically -available in projects and on tasks. - -To avoid any confusion, Odoo works with analytic accounts. An analytic -account is the name that will always be the reference for a specific -project or contract. Each time a project is created, an analytic account -is automatically created under the same name. - -Record a timesheet on a project: ---------------------------------- - -Click on the settings of a project. - -.. image:: media/manage_collaborate02.png - :align: center - -Click on the Timesheet button in the top grey menu. - -.. image:: media/manage_collaborate03.png - :align: center - -You get the Odoo Timesheet. Click on Create and a line will appear with -today's date and time. Your project name is automatically selected as -the Analytic Account. No task is set, you can choose to add a specific -task for it, or not. - -.. image:: media/manage_collaborate04.png - :align: center - -If you go now to Odoo Timesheet, your line will be recorded among your -other timesheets. - -Record a timesheet on a task: ------------------------------- - -Within a task, the timesheet option is also available. - -In the task, click on the Edit button. Go on the Timesheet tab and click -on Add an item. - -A line will appear with the name of the project already selected in the -Analytic account. - -Again, you'll find back these timesheet lines in the Odoo Timesheet -application. - -.. image:: media/manage_collaborate05.png - :align: center - -At the end of your project, you can get a real idea of the time you -spent on it by searching based on the Analytic Account name of your -project. - -Document Management in tasks -============================ - -You can manage documents related to tasks whether they're plans, -pictures of the formatting, etc. An image is sometimes more informative -than a thousand words! You have two ways to add a document to a task. - -1. You can add an image/document to your task by clicking on the -Attachment tab on the top of the form. - -.. image:: media/manage_collaborate06.png - :align: center - -2. You can add an image/document to your task through the Chatter. You -can log a note/send a message and attach a file to it. Or if someone -sends an email with an attachment, the document will be automatically -saved in the task. - -.. image:: media/manage_collaborate07.png - :align: center - -.. tip:: - If you have an important image that helps to understand the tasks you - can set it up as Cover Image. It'll show up in the Kanban view directly. - -.. image:: media/manage_collaborate08.png - :align: center - -Collaborate on tasks -==================== - -Tasks in Odoo Project are made to help you to work easily together with -your colleagues. This helps you save time and energy. - -The idea is to stay up to date with what interests you. You can -collaborate with your colleagues by writing on the same task at the same -time, with task delegation and the Chatter. - -Create a task from an email ---------------------------- - -You can configure an email address linked to your project. When an email -is sent to that address, it automatically creates a task in the first -step of the project, with all the recipients (To/Cc/Bcc) as followers. - -With Odoo Online, the mail gateway is already configured and so every -project gets an automatic email address. - -The email is always the name of the project (with "-" instead of the -space), you'll see it under the name of your project in the Project -Dashboard. - -.. image:: media/manage_collaborate09.png - :align: center - -This email address create by default following the project name can be -changed. - -The alias of the email address can be changed by the project manager. - -To do so, go to the Project Settings and click on the Email Tab. - -You can directly edit your project email address. - -.. image:: media/manage_collaborate10.png - :align: center - -The Chatter, status and follow-up. ----------------------------------- - -The Chatter is a very useful tool. It is a communication tool and shows -the history of the task. - -In the Chatter, you can see when the task has been created, when it has -passed from one stage to another, etc. Any changes made to that task are -logged into the Chatter automatically by the system. It also includes -the history of the interaction between you and your customer or -colleagues. All interactions are logged on the chatter, making it easy -for the task leader to remember past interactions. - -You can interact with followers whether there are internal (your -colleagues) or external (the client for example) by logging a note or -important information. Also, if you want to send an email to all the -followers of that specific task, you can choose to add a message to -notify all of them. For both of these options, the date and time is -saved on the entry. - -.. image:: media/manage_collaborate11.png - :align: center - -The description of the task, the Pad ------------------------------------- - -Odoo allows you to replace the task description field by an Etherpad -collaborative note (http://etherpad.org). This means that you can -collaborate on tasks in real time with several users contributing to the -same content. Every user has their own color and you can replay the -whole creation of the content. - -To activate this option, go to :menuselection:`Project Settings --> Pads`, -tick "Collaborative rich text on task description". - -.. image:: media/manage_collaborate12.png - :align: center - -.. tip:: - If you just need the pad and not the whole task page, you can click - on the icon on the top right to get to the pad directly in a full - screen view. Click on the ```` icon to get the direct URL of the task - description: useful if you want to send it to someone without adding - this person as a follower. - -.. image:: media/manage_collaborate13.png - :align: center - -Tasks states -============ - -Set the state of a task ------------------------ - -The status of the task is the easiest way to inform your colleagues when -you are working on a task, if the task is ready or if it is blocked. It -is a visual indicator that is seen in a glance. - -You can change the status of the task from the kanban view or directly -from the task. Just click on the status ball to get the choices: - -.. image:: media/manage_collaborate14.png - :align: center - -.. image:: media/manage_collaborate15.png - :align: center - -Custom states -------------- - -You can decide what the different status mean for each stage of your -project. On the kanban view, click on the gear icon on the top of the -stage, then click on edit: - -.. image:: media/manage_collaborate16.png - :align: center - -Next to the color ball, write the explanation of the state. - -.. image:: media/manage_collaborate17.png - :align: center - -Now, the explanation will be displayed instead of the generic text: - -.. image:: media/manage_collaborate18.png - :align: center - -Color Tags -========== - -In every task, you can add a tag. Tags are very useful to categorize the -tasks. It helps you to highlight a task from the Kanban view or better -find them thanks to the filters. - -If you are always working with a specific type of tag, you can highlight -the tasks containing the tag with the colors. Each tag can get a -specific color, it's very visual on the Kanban view. - -.. image:: media/manage_collaborate19.png - :align: center - -In order to make it appear on the kanban view, you have to set a color -on the tag, directly from the task: - -.. image:: media/manage_collaborate20.png - :align: center diff --git a/project/configuration/media/manage_collaborate01.png b/project/configuration/media/manage_collaborate01.png deleted file mode 100644 index 2f590c742..000000000 Binary files a/project/configuration/media/manage_collaborate01.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate02.png b/project/configuration/media/manage_collaborate02.png deleted file mode 100644 index 334ebc6f8..000000000 Binary files a/project/configuration/media/manage_collaborate02.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate03.png b/project/configuration/media/manage_collaborate03.png deleted file mode 100644 index daf23a859..000000000 Binary files a/project/configuration/media/manage_collaborate03.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate04.png b/project/configuration/media/manage_collaborate04.png deleted file mode 100644 index 6f598e088..000000000 Binary files a/project/configuration/media/manage_collaborate04.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate05.png b/project/configuration/media/manage_collaborate05.png deleted file mode 100644 index 5cd619c4b..000000000 Binary files a/project/configuration/media/manage_collaborate05.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate06.png b/project/configuration/media/manage_collaborate06.png deleted file mode 100644 index c44968631..000000000 Binary files a/project/configuration/media/manage_collaborate06.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate07.png b/project/configuration/media/manage_collaborate07.png deleted file mode 100644 index b1972134f..000000000 Binary files a/project/configuration/media/manage_collaborate07.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate08.png b/project/configuration/media/manage_collaborate08.png deleted file mode 100644 index 294d0daff..000000000 Binary files a/project/configuration/media/manage_collaborate08.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate09.png b/project/configuration/media/manage_collaborate09.png deleted file mode 100644 index 1830dce84..000000000 Binary files a/project/configuration/media/manage_collaborate09.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate10.png b/project/configuration/media/manage_collaborate10.png deleted file mode 100644 index 095f8a544..000000000 Binary files a/project/configuration/media/manage_collaborate10.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate11.png b/project/configuration/media/manage_collaborate11.png deleted file mode 100644 index 002c77277..000000000 Binary files a/project/configuration/media/manage_collaborate11.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate12.png b/project/configuration/media/manage_collaborate12.png deleted file mode 100644 index 59020391a..000000000 Binary files a/project/configuration/media/manage_collaborate12.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate13.png b/project/configuration/media/manage_collaborate13.png deleted file mode 100644 index 5140cab39..000000000 Binary files a/project/configuration/media/manage_collaborate13.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate14.png b/project/configuration/media/manage_collaborate14.png deleted file mode 100644 index a2f1854e1..000000000 Binary files a/project/configuration/media/manage_collaborate14.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate15.png b/project/configuration/media/manage_collaborate15.png deleted file mode 100644 index 019e8dfb7..000000000 Binary files a/project/configuration/media/manage_collaborate15.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate16.png b/project/configuration/media/manage_collaborate16.png deleted file mode 100644 index 268e2441a..000000000 Binary files a/project/configuration/media/manage_collaborate16.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate17.png b/project/configuration/media/manage_collaborate17.png deleted file mode 100644 index 4f66d5f75..000000000 Binary files a/project/configuration/media/manage_collaborate17.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate18.png b/project/configuration/media/manage_collaborate18.png deleted file mode 100644 index 30f8fd2c1..000000000 Binary files a/project/configuration/media/manage_collaborate18.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate19.png b/project/configuration/media/manage_collaborate19.png deleted file mode 100644 index a948ad47a..000000000 Binary files a/project/configuration/media/manage_collaborate19.png and /dev/null differ diff --git a/project/configuration/media/manage_collaborate20.png b/project/configuration/media/manage_collaborate20.png deleted file mode 100644 index 56df365c5..000000000 Binary files a/project/configuration/media/manage_collaborate20.png and /dev/null differ diff --git a/project/configuration/media/setup01.png b/project/configuration/media/setup01.png deleted file mode 100644 index 4c8f1a358..000000000 Binary files a/project/configuration/media/setup01.png and /dev/null differ diff --git a/project/configuration/media/setup02.png b/project/configuration/media/setup02.png deleted file mode 100644 index bf1fa9dbf..000000000 Binary files a/project/configuration/media/setup02.png and /dev/null differ diff --git a/project/configuration/media/setup03.png b/project/configuration/media/setup03.png deleted file mode 100644 index e39094b52..000000000 Binary files a/project/configuration/media/setup03.png and /dev/null differ diff --git a/project/configuration/media/setup04.png b/project/configuration/media/setup04.png deleted file mode 100644 index ac8ec25ef..000000000 Binary files a/project/configuration/media/setup04.png and /dev/null differ diff --git a/project/configuration/media/setup05.png b/project/configuration/media/setup05.png deleted file mode 100644 index b62f55198..000000000 Binary files a/project/configuration/media/setup05.png and /dev/null differ diff --git a/project/configuration/media/setup06.png b/project/configuration/media/setup06.png deleted file mode 100644 index bd5a91745..000000000 Binary files a/project/configuration/media/setup06.png and /dev/null differ diff --git a/project/configuration/media/setup07.png b/project/configuration/media/setup07.png deleted file mode 100644 index dacbe7d1f..000000000 Binary files a/project/configuration/media/setup07.png and /dev/null differ diff --git a/project/configuration/media/time_record01.png b/project/configuration/media/time_record01.png deleted file mode 100644 index 0b28b0c05..000000000 Binary files a/project/configuration/media/time_record01.png and /dev/null differ diff --git a/project/configuration/media/time_record02.png b/project/configuration/media/time_record02.png deleted file mode 100644 index d34963a28..000000000 Binary files a/project/configuration/media/time_record02.png and /dev/null differ diff --git a/project/configuration/media/time_record03.png b/project/configuration/media/time_record03.png deleted file mode 100644 index ea2a3290b..000000000 Binary files a/project/configuration/media/time_record03.png and /dev/null differ diff --git a/project/configuration/media/time_record04.png b/project/configuration/media/time_record04.png deleted file mode 100644 index fec0cf8c2..000000000 Binary files a/project/configuration/media/time_record04.png and /dev/null differ diff --git a/project/configuration/setup.rst b/project/configuration/setup.rst deleted file mode 100644 index 2dc70ba3a..000000000 --- a/project/configuration/setup.rst +++ /dev/null @@ -1,102 +0,0 @@ -==================================== -How to set up & configure a project? -==================================== - -Overview -======== - -Odoo Project allows you to manage a project together with your whole -team, and to communicate with any member for each project and task. - -It works with projects containing tasks following customizable stages. -A project can be internal or customer-oriented. A task is something to -perform as part of a project. You will be able to give different tasks -to several employees working on this project. - -Installing the Project module -============================= - -Open the **Apps** module, search for **Project Management**, and click on -**Install**. - -.. image:: media/setup01.png - :align: center - -Creating a new project -====================== - -Open the **Project** application, and click on **Create**. From this window, -you can specify the name of the project and set up the privacy of the -project. - -The privacy setting works as: - -- **Customer Project**: visible in portal if the customer is a - follower. - -- **All Employees**: employees see all tasks or issues. - -- **Private Project**: followers can see only the followed tasks or - issues - -You can also specify if the project is destined to a customer, or leave -the **Customer** field empty if not. - -.. image:: media/setup02.png - :align: center - -When you have entered all the required details, click on **Save**. - -Manage your project's stages -============================ - -Add your project's stages -------------------------- - -On your project's dashboard. Click on **# Tasks**. - -.. image:: media/setup03.png - :align: center - -In the new window, add a new column and name it according to the first -stage of your project, then add as many columns as there are stages in -your project. - -.. image:: media/setup04.png - :align: center - -For each stage, there are markers for the status of tasks within a -stage, that you can personalize to fit your needs. - -Drag your mouse pointer over a stage name, and click on the appearing -bearing, and on the opening menu, click on **Edit**. - -.. image:: media/setup05.png - :align: center - -A new window will open. The color dots and star icon correspond to -customizable markers applied on tasks, making it easier to know what -task requires attention. You can give them any signification you like. - -.. image:: media/setup06.png - :align: center - -Click on **Save** when you are done. - -Rearrange stages ----------------- - -You can easily personalize this view to better suit your business needs -by creating new columns. From the Kanban view of your project, you can -add stages by clicking on **Add new column**. If you want to rearrange -the order of your stages, you can easily do so by dragging and dropping -the column you want to move to the desired location. You can also fold -or unfold your stages by using the **Setting** icon on your desired stage. - -.. image:: media/setup07.png - :align: center - -.. seealso:: - * :doc:`visualization` - * :doc:`collaboration` - * :doc:`time_record` diff --git a/project/configuration/time_record.rst b/project/configuration/time_record.rst deleted file mode 100644 index 881312807..000000000 --- a/project/configuration/time_record.rst +++ /dev/null @@ -1,58 +0,0 @@ -========================= -How to record time spent? -========================= - -Overview -======== - -Odoo allows you to record the time spent per employee and per project, -for simple reports as well as for direct invoicing to the customer. - -Configuration -============= - -In order to record the time spent on projects, you must first activate -the invoicing of timesheets. Into the **Project** application, open -:menuselection:`Configuration --> Settings`. In the **Timesheets** section -of the page, tick **Activate timesheets on issues**. - -.. image:: media/time_record01.png - :align: center - -.. note:: - Activating the option will install the Sales, Invoicing, - Issue Tracking, Employee and Timesheet apps. - -Recording timesheets -==================== - -You can record the time spent in projects straight from the projects -application. You can either record timesheets in a project, or in a -task. - -Recording in a project ----------------------- - -In the **Project** application dashboard, open the **More** menu of the -project you want to record timesheets for, and click on **Timesheets**. - -.. image:: media/time_record02.png - :align: center - -In the new window, click on **Create** and insert the required details, then -click on **Save**. - -.. image:: media/time_record03.png - :align: center - -Recording in a task -------------------- - -In the **Project** app, open the project you want to record timesheets for, -and open the task on which you have been working. - -In the task, click on **Edit**, open the **Timesheets** tab and click on **Add -an item**. Insert the required details, then click on **Save**. - -.. image:: media/time_record04.png - :align: center diff --git a/project/configuration/visualization.rst b/project/configuration/visualization.rst deleted file mode 100644 index 7802fad95..000000000 --- a/project/configuration/visualization.rst +++ /dev/null @@ -1,87 +0,0 @@ -=========================== -Visualize a project's tasks -=========================== - -In day to day business, your company might struggle due to the important -amount of tasks to fulfill. Those tasks already are complex enough. -Having to remember them all and follow up on them can be a burden. -Luckily, Odoo enables you to efficiently visualize and organize the -different tasks you have to cope with. - -Create a task -============= - -While in the project app, select an existing project or create a new -one. - -In the project, create a new task. - -.. image:: media/visualization01.png - :align: center - -In that task you can then assigned it to the right person, add tags, a -deadline, descriptions… and anything else you might need for that task. - -.. image:: media/visualization02.png - :align: center - -View your tasks with the Kanban view -==================================== - -Once you created several tasks, they can be managed and followed up -thanks to the Kanban view. - -The Kanban view is a post-it like view, divided in different stages. It -enables you to have a clear view on the stages your tasks are in and -which one have the higher priorities. - -The Kanban view is the default view when accessing a project, but if you -are on another view, you can go back to it any time by clicking the -Kanban view logo in the upper right corner - -.. image:: media/visualization03.png - :align: center - -You can also notify your colleagues about the status of a task right -from the Kanban view by using the little dot, it will notify follower of -the task and indicate if the task is ready. - -.. image:: media/visualization04.png - :align: center - -Sort tasks in your Kanban view -============================== - -Tasks are ordered by priority, which you can give by clicking on the -star next to the clock and then by sequence, meaning if you manually -move them using drag & drop, they will be in that order and finally by -their ID linked to their creation date. - -.. image:: media/visualization06.png - :align: center - -Tasks that are past their deadline will appear in red in your Kanban -view. - -.. note:: - If you put a low priority task on top, when you go back to your - dashboard the next time, it will have moved back below the high priority - tasks. - -Manage deadlines with the Calendar view -======================================= - -You also have the option to switch from a Kanban view to a calendar -view, allowing you to see every deadline for every task that has a -deadline set easily in a single window. - -Tasks are color coded to the employee they are assigned to and you can -filter deadlines by employees by selecting who's deadline you wish to -see. - -.. image:: media/visualization05.png - :align: center - -.. tip:: - You can easily change the deadline from the Calendar view by - dragging and dropping the task to another case. diff --git a/project/overview.rst b/project/overview.rst index 819c3b37a..102ac698c 100644 --- a/project/overview.rst +++ b/project/overview.rst @@ -5,4 +5,5 @@ Overview .. toctree:: :titlesonly: - overview/main_concepts \ No newline at end of file + overview/setup + overview/share \ No newline at end of file diff --git a/project/overview/main_concepts/introduction.rst b/project/overview/main_concepts/introduction.rst deleted file mode 100644 index 4506462ec..000000000 --- a/project/overview/main_concepts/introduction.rst +++ /dev/null @@ -1,91 +0,0 @@ -============================ -Introduction to Odoo Project -============================ - -.. youtube:: PWKez0gn6Ts - :align: right - :width: 700 - :height: 394 - -Transcript -========== - -As a business manager, I have a varied job involving -multiple stakeholders. To manage every task seamlessly, -Odoo Projects is of great help. - -With Odoo Projects, our project team members can easily -plan and execute the launching of a new product line in -Canada. I organized this project by creating different -stages. It allows us to clearly identify the status of -any task at any time, and for any user. It is convenient -for any other project manager too. - -These well-structured project stages are fully customizable. -Here I identify one missing stage, I can easily add it -in just a click. In our project management process, I -proceed to a final review, so I add this stage. Odoo -projects is designed to work for any kind of business. - -Once a task is done, each colleague can highlight it by -changing its status. That will help the project manager -to review the task before changing the stage with a -simple drag and drop. Easy, right? - -We can also organize the different tasks by adapting the -view. Here, I select the list view, which shows other -information such as the working time progress. If I click -on my task, I land on the form view where I can edit the -planned hours and enter my timesheets. This is a great -tool for any project manager. Controlling the working -time progress and the time spent for each team member is -essential. I set the time for the sales team training to -24 hours. Today, I prepared the material, so I will log 4 -hours in the timesheet. The working time progress updates -automatically. Thanks to this timesheet integration, the -project manager has a thorough follow-up on the progress -of each task. - -Another great feature in Odoo projects is the forecast -tool. When it is activated, I can plan resources per -project and the workload. Therefore, the time allocation -for other projects is much easier. For this project, I -have to train members of the sales team. It will require -50% of my time until the end of the week. As project -manager, I can do this resource allocation for any user -and adapt it according to their other projects. This will -prevent any form of time overlap. I can reassign a task -or adapt the deadline. Odoo projects is the perfect app -for strategic and executive planning. - -Plus, every aspect of any project can be analyzed, thanks -to the reports. For example, We can have a report of -effective hours spent in comparison with the planned -hours. I can assess the profitability of any project, -any task, or any team member. I can also look at the -number of hours assigned to each team member. - -Another element of an excellent project management is -communication. This is a key factor for the success of -any project. While dealing with multiple stakeholders, -being able to share documents directly in the task is -very helpful. With Odoo projects, I can discuss through -the chat feature that is always one-click away. I can -also start a new conversation with anyone in my team. - -In addition to being a powerful app for managing projects -seamlessy, Odoo projects is also an effective customer -service or after-sales app. With it, I can follow any -customer issue, even create a dedicated support project. -The app also automatically creates an invoice of time -spent on tasks or issues. - -Odoo projects is a powerful, yet easy-to-use app. At -first, I used the planner to clearly state my objectives -and set up the project app. Get this app, it will help -you get started quickly too. - -Start your free trial now and better manage your -projects with Odoo! - -Start your free trial now with the CRM sales people love \ No newline at end of file diff --git a/project/overview/media/create_new.png b/project/overview/media/create_new.png new file mode 100644 index 000000000..56b60f4b6 Binary files /dev/null and b/project/overview/media/create_new.png differ diff --git a/project/overview/media/edit_form.png b/project/overview/media/edit_form.png new file mode 100644 index 000000000..91555777e Binary files /dev/null and b/project/overview/media/edit_form.png differ diff --git a/project/overview/media/edit_stage.png b/project/overview/media/edit_stage.png new file mode 100644 index 000000000..d660f1966 Binary files /dev/null and b/project/overview/media/edit_stage.png differ diff --git a/project/overview/media/fold_stage.png b/project/overview/media/fold_stage.png new file mode 100644 index 000000000..a5e1ddbb5 Binary files /dev/null and b/project/overview/media/fold_stage.png differ diff --git a/project/overview/media/share_project.png b/project/overview/media/share_project.png new file mode 100644 index 000000000..d4db157cb Binary files /dev/null and b/project/overview/media/share_project.png differ diff --git a/project/overview/media/share_task.png b/project/overview/media/share_task.png new file mode 100644 index 000000000..5241b20c1 Binary files /dev/null and b/project/overview/media/share_task.png differ diff --git a/project/overview/media/shared_project.png b/project/overview/media/shared_project.png new file mode 100644 index 000000000..f30272b4e Binary files /dev/null and b/project/overview/media/shared_project.png differ diff --git a/project/overview/media/stages.png b/project/overview/media/stages.png new file mode 100644 index 000000000..19fb94ceb Binary files /dev/null and b/project/overview/media/stages.png differ diff --git a/project/configuration/media/visualization01.png b/project/overview/media/visualization01.png similarity index 100% rename from project/configuration/media/visualization01.png rename to project/overview/media/visualization01.png diff --git a/project/configuration/media/visualization02.png b/project/overview/media/visualization02.png similarity index 100% rename from project/configuration/media/visualization02.png rename to project/overview/media/visualization02.png diff --git a/project/configuration/media/visualization03.png b/project/overview/media/visualization03.png similarity index 100% rename from project/configuration/media/visualization03.png rename to project/overview/media/visualization03.png diff --git a/project/configuration/media/visualization04.png b/project/overview/media/visualization04.png similarity index 100% rename from project/configuration/media/visualization04.png rename to project/overview/media/visualization04.png diff --git a/project/configuration/media/visualization05.png b/project/overview/media/visualization05.png similarity index 100% rename from project/configuration/media/visualization05.png rename to project/overview/media/visualization05.png diff --git a/project/configuration/media/visualization06.png b/project/overview/media/visualization06.png similarity index 100% rename from project/configuration/media/visualization06.png rename to project/overview/media/visualization06.png diff --git a/project/overview/setup.rst b/project/overview/setup.rst new file mode 100644 index 000000000..70ff57593 --- /dev/null +++ b/project/overview/setup.rst @@ -0,0 +1,63 @@ +======================== +Get Started with Project +======================== + +Managing projects means managing people, tasks, due dates, budgets and predicted return on +investments. For all of it, you need a solution that allows you to reduce risks, get information at +a glance, have an overview of your progress and stay organized. And, from start to finish, to be +able to run multiple projects in parallel easily. Odoo Project application is the solution you need. + +Creating a new project +====================== + +Click on *Create*. Specify the name of the project and choose which features you would like to +integrate. Note that they can be enabled afterward through *Settings*. + +.. image:: media/create_new.png + :align: center + :alt: Click on create to start a new project in Odoo Project + +Manage your project’s stages +============================ + +| Open your project and add as many columns as there are stages in your project. +| Each project stage can be characterized by a distinct set of activities, or your stages can guide + you to the different steps a project has to go through. It is important to set them right as they + lead you from the first idea or step to its conclusion, contributing to the overall success + of your project. + +.. image:: media/stages.png + :align: center + :alt: View of the stages created under a project in Odoo Project + +| For each stage, there are markers for the status of tasks that you can personalize. +| Drag your mouse over a stage name, and click on :menuselection:`Settings --> Edit`. + +.. image:: media/edit_stage.png + :align: center + :height: 300 + :alt: Click on settings then edit stage to edit in Odoo Project + +The dots correspond to customizable markers applied on tasks, making it easier to know which tasks +require attention. You can give them any signification you like. + +.. image:: media/edit_form.png + :align: center + :height: 300 + :alt: Image of the edit form of a stage in Odoo Project + +Rearrange stages +================ + +| From the Kanban view of your project, you can add stages by clicking on *Add a column*. +| To rearrange the order of your stages easily do so by dragging and dropping columns. You can also + fold or unfold them on *Settings*. + +.. image:: media/fold_stage.png + :align: center + :height: 280 + :alt: Click on setting then fold to hide a column in Odoo Project + +.. seealso:: + - :doc:`../tasks/collaborate` + - :doc:`../record_and_invoice/time_record` diff --git a/project/overview/share.rst b/project/overview/share.rst new file mode 100644 index 000000000..8cc335ce2 --- /dev/null +++ b/project/overview/share.rst @@ -0,0 +1,33 @@ +======================== +Share Projects and Tasks +======================== + +When you share your projects/tasks, you allow external users to be on the same page as you. +It avoids misunderstandings, simplifies communication, and allows you to become a more coordinated +company as you get the right information to the right people. + +Share projects and tasks +======================== + +To share a project, go to :menuselection:`Manage --> Share`. + +.. image:: media/share_project.png + :align: center + :height: 270 + :alt: Edit a project from the dashboard view and click on share in Odoo Project + +To share a task, open it and click on :menuselection:`Action --> Share`. Choose an existing +*Recipient(s)* or create it on the fly. + +.. image:: media/share_task.png + :align: center + :height: 300 + :alt: Open a task and click on action then share in Odoo Project + +The recipient receives an email saying that he has been invited to access a document. In the example +below, a project was shared. When the user opens it, he sees the settings of that project and can +access its tasks, for example. + +.. image:: media/shared_project.png + :align: center + :alt: View of a shared project from the recipients side for Odoo Project \ No newline at end of file diff --git a/project/planning.rst b/project/planning.rst index ba5309e6d..5d6338ba2 100644 --- a/project/planning.rst +++ b/project/planning.rst @@ -1,6 +1,6 @@ -===================== -Planning your project -===================== +======== +Planning +======== .. toctree:: :titlesonly: diff --git a/project/planning/media/allocate_time.png b/project/planning/media/allocate_time.png index 1dfa55d87..694572ccf 100644 Binary files a/project/planning/media/allocate_time.png and b/project/planning/media/allocate_time.png differ diff --git a/project/planning/media/compare_forecast.png b/project/planning/media/compare_forecast.png index 4f6a0d8a6..fac4f34da 100644 Binary files a/project/planning/media/compare_forecast.png and b/project/planning/media/compare_forecast.png differ diff --git a/project/record_and_invoice.rst b/project/record_and_invoice.rst new file mode 100644 index 000000000..4761846f3 --- /dev/null +++ b/project/record_and_invoice.rst @@ -0,0 +1,9 @@ +======================= +Record Time and Invoice +======================= + +.. toctree:: + :titlesonly: + + record_and_invoice/time_record + record_and_invoice/invoice_time diff --git a/project/record_and_invoice/invoice_time.rst b/project/record_and_invoice/invoice_time.rst new file mode 100644 index 000000000..5ca9feec5 --- /dev/null +++ b/project/record_and_invoice/invoice_time.rst @@ -0,0 +1,65 @@ +=========================== +Invoice Time Spent on Tasks +=========================== + +When it is time to bill your client for their finished project/task, you can choose to shorten +processes and save time by pulling the billable time you have tracked into sales orders, and +invoices, directly from the project/task. + +Enable the Timesheet feature +============================ + +Go to :menuselection:`Project --> Configuration --> Settings` and enable *Timesheets*. + +Create a sales order and invoice from a task +============================================ + +| Under :menuselection:`Project --> Configuration --> Project`, choose the corresponding one and + enable *Timesheet*, *Timesheet Timer* and *Bill from Tasks*. +| Once the time spent on a task under that project has been recorded, click on *Create Sales Order* + and continue to create your invoice. + +.. image:: media/sales_timesheet.png + :align: center + :alt: Have the sales order menu and the timesheet tab being shown under a task in Odoo Project + +This way, you can invoice different customers, for different services, at different rates, +without the need to create numerous projects. + +Create a sales order and invoice from a project +=============================================== + +| Under :menuselection:`Project --> Configuration --> Project`, choose the corresponding one and + enable *Timesheet* plus *Timesheet Timer*. +| Now, go to :menuselection:`Project --> Configuration --> Projects`, choose the project, + *Create Sales Order*, and continue to create your invoice. +| From here, choose if you want the billing to be based on the project rate: all timesheets are + billed by the same rate, or by the employee rate: timesheets are billed by the individual + rate of the employee. + +.. image:: media/create_sales.png + :align: center + :alt: Click on create sales order and choose the billing type in Odoo Project + +| The project rate allows you to invoice a whole project, for a specific service, at a specific + rate, at once. Example: the implementation of a system. +| The employee rate billing lets you invoice a project broken down into different services, and + different rates. Example: different rates for junior and senior consultants. + +Invoice only approved timesheets +================================ + +Go to :menuselection:`Timesheets --> Configuration --> Settings --> Invoicing Policy`, and choose +*Approved timesheets only*. + +.. image:: media/invoice_approved.png + :align: center + :alt: Enabling the feature to invoice only approved timesheets in Odoo Project + +This ensures that the manager is aware of the hours being logged by each employee before the +customer gets invoiced. + +.. seealso:: + - :doc:`../advanced/so_to_task` + - :doc:`./time_record` + diff --git a/project/record_and_invoice/media/create_sales.png b/project/record_and_invoice/media/create_sales.png new file mode 100644 index 000000000..0c6643303 Binary files /dev/null and b/project/record_and_invoice/media/create_sales.png differ diff --git a/project/record_and_invoice/media/invoice_approved.png b/project/record_and_invoice/media/invoice_approved.png new file mode 100644 index 000000000..ce2dd42ef Binary files /dev/null and b/project/record_and_invoice/media/invoice_approved.png differ diff --git a/project/record_and_invoice/media/manually_timesheet.png b/project/record_and_invoice/media/manually_timesheet.png new file mode 100644 index 000000000..739db6b46 Binary files /dev/null and b/project/record_and_invoice/media/manually_timesheet.png differ diff --git a/project/record_and_invoice/media/sales_timesheet.png b/project/record_and_invoice/media/sales_timesheet.png new file mode 100644 index 000000000..acf935e0c Binary files /dev/null and b/project/record_and_invoice/media/sales_timesheet.png differ diff --git a/project/record_and_invoice/media/time_tasks.png b/project/record_and_invoice/media/time_tasks.png new file mode 100644 index 000000000..10878c903 Binary files /dev/null and b/project/record_and_invoice/media/time_tasks.png differ diff --git a/project/record_and_invoice/time_record.rst b/project/record_and_invoice/time_record.rst new file mode 100644 index 000000000..13abd5b43 --- /dev/null +++ b/project/record_and_invoice/time_record.rst @@ -0,0 +1,33 @@ +========================== +Record Time Spent on Tasks +========================== + +Get to know how much time you are spending on tasks in order to make your employees’ life easier, +and records error-free. Launch the timer in your browser, stop it on your phone and have all entries +synced. Generate invoices based on the timesheet entries and be sure to invoice your customers +the exact right amount. + +Manually timesheet on task +========================== + +| Go to :menuselection:`Project --> Configuration --> Settings` and enable *Timesheets*. Then, + enable the *Timesheets* option on the project. +| Now, once you are in your task, under the *Timesheet* tab, *Add a line* and specify the *Duration*. + +.. image:: media/manually_timesheet.png + :align: center + :alt: On the task under the timesheets tab add the time spent in Odoo Project Application + +Time tasks +========== + +| Under :menuselection:`Project --> Configuration --> Projects`, enable *Timesheet timer* on the + projects on which you need the functionality. +| Now, you can time your task clicking on *Start*. *Pause* at any moment, and *Stop* to confirm the + recorded time and add a description. + +.. image:: media/time_tasks.png + :align: center + :alt: Click on start in the task to initiate the timer in Odoo Project Application + + diff --git a/project/tasks.rst b/project/tasks.rst new file mode 100644 index 000000000..8039f160d --- /dev/null +++ b/project/tasks.rst @@ -0,0 +1,11 @@ +===== +Tasks +===== + +.. toctree:: + :titlesonly: + + tasks/get_started + tasks/sub_tasks + tasks/collaborate + tasks/email_alias \ No newline at end of file diff --git a/project/tasks/collaborate.rst b/project/tasks/collaborate.rst new file mode 100644 index 000000000..4ad276bfe --- /dev/null +++ b/project/tasks/collaborate.rst @@ -0,0 +1,93 @@ +==================== +Collaborate on Tasks +==================== + +Being able to collaborate virtually but with the same effect as if people were in the same room +increases your productivity. It results in faster execution of processes, brainstorming and decision +made easier while also allowing the support of outside contributions. + +Add followers to a project +========================== + +| *Edit* the project to add followers. +| Followers are notified of any changes: tasks sliding from one stage to another, conversations + taking place, etc. + +.. image:: media/add_followers.png + :align: center + :alt: Click on the follower icon to add followers to a project in Odoo Project + +.. note:: + Following a project automatically makes you a follower of all its tasks. + +Add followers to a task +======================= + +Within a task, click on the *Followers* icon. Followers get notified of any changes in the task +and can see the task like you do, with the description and the chatter. + +.. image:: media/follower_task.png + :align: center + :alt: Click on the follower icon to add followers to a task in Odoo Project + +Select which notifications to get +--------------------------------- + +For a project or task, select what you would like to be notified about. For that, *Edit +subscription*. + +.. image:: media/select_notif.png + :align: center + :alt: Click on the follower icon, then on edit subscription in Odoo Project + +Use the pad like a collaborative note +===================================== + +| Go to :menuselection:`Project --> Configuration --> Settings --> Collaborative Pads`, then edit + the *Settings* of the project you would like the feature to work and enable *Use + Collaborative Pads*. +| Now, you are able to contribute to tasks in real-time, with several users, with an Etherpad + collaborative note. Every user has his own color and you can replay the whole creation + of the content. + +.. image:: media/pad_collaborative.png + :align: center + :alt: View of the collaborative pad in Odoo Project + +.. tip:: + Click on the ** icon to get the direct URL of the task description: useful if you want to + share it without adding this person as a follower, or to someone outside of the company. + +The Chatter +=========== + +| *Chatter* is a communication tool that shows the history of a task, including changes and the + interactions between you and your customers or colleagues. +| To interact with followers, whether there are internal or external, click on *Log a note* and ping + them using the at symbol (*@*). If you want to send a message/email to all the followers in the + task, use *Send a message*. +| You can also ping a channel using the hashtag sign (*#*). This way, users can have a channel per + project team, for example. + +.. image:: media/the_chatter.png + :align: center + :alt: Overview of the chatter in Odoo Project + +Schedule activities +------------------- + +Do not forget promises made and stay organized by conveniently *Scheduling activities* from the +chatter. + +.. image:: media/schedule_activities.png + :align: center + :alt: Click on schedule activity and choose the activity to be scheduled in Odoo Project + +Edit or create new activities types +----------------------------------- + +Go to :menuselection:`Project --> Configuration --> Activity Types`. + +.. image:: media/activity_type.png + :align: center + :alt: Overview of the activity types form in Odoo Project \ No newline at end of file diff --git a/project/tasks/email_alias.rst b/project/tasks/email_alias.rst new file mode 100644 index 000000000..11ebc2871 --- /dev/null +++ b/project/tasks/email_alias.rst @@ -0,0 +1,42 @@ +========================================== +Create Project's Tasks from an Email Alias +========================================== + +When you already have an email address that customers know from the top of their heads, changing +it is the last thing you want to do. Instead, link that address to your project and transform +those conversations into structured work. It automatically creates a task in the first stage +of a project. + +Set up an incoming email server +=============================== + +| On the *Settings* application, enable *External Email Servers* and define the incoming email + alias you would like to use. +| **For more information**: :doc:`../../discuss/email_servers` + +Configure the email alias in your project +----------------------------------------- + +| Now that you have the incoming email server set up, go to + :menuselection:`Project --> Configuration --> Projects --> Edit`. Under the *Emails* tab, define + the wanted email alias and choose the policy to receive a message. +| In addition, you can now directly set it when creating a new project. + +.. image:: media/email_alias.png + :align: center + :alt: In the settings of your project, define the emails alias under the tab email in Odoo Project + +.. important:: + All the recipients of the email (To/Cc/Bcc) are automatically added as followers of the task. + +The email can be seen under the name of your project on the dashboard. + +.. image:: media/email_test.png + :align: center + :height: 300 + :alt: View of the email alias chosen on the dashboard view in Odoo Project + +.. seealso:: + - :doc:`./get_started` + - :doc:`./collaborate` + diff --git a/project/tasks/get_started.rst b/project/tasks/get_started.rst new file mode 100644 index 000000000..5c0b72258 --- /dev/null +++ b/project/tasks/get_started.rst @@ -0,0 +1,87 @@ +====================== +Get Started with Tasks +====================== + +Break down a project by creating, assigning and organizing tasks. Set priorities to help you +determine where you want to invest your time first, manage files within it and keep everything you +need to complete your work in one place. Ensure that your strategies are turned into actionable +plans and, as a result, have a successful project. + +Create a task +============= + +Click on *Create*. Once created, add more details opening it and clicking on *Edit*. + +.. image:: media/create.png + :align: center + :height: 300 + :alt: Click on create under a project to initiate a task in Odoo Project + +Assignation +----------- + +Choose the responsible person for a task under *Assigned to*. + +.. image:: media/assignation.png + :align: center + :alt: Choosing the responsible person for the task in Odoo Project + +Sort tasks by priority +====================== + +| Mark the star on your task to set it as a high priority one. That automatically moves the task + to the top of the column. Tasks that are not starred are classified according to their + deadlines. +| Note that tasks with dates passed their deadlines are shown in red; tasks with a deadline for + the current date are orange. + +.. image:: media/priority.png + :align: center + :alt: Tasks prioritized are shown first in the list in Odoo Project + +Manage files in tasks +===================== + +Add images/documents to your task by clicking on the *Attachment icon*. + +.. image:: media/manage_files.png + :align: center + :alt: Click on the attachment icon to manage files in Odoo Project + +.. tip:: + Files from emails are automatically saved. + +Set cover images in tasks +========================= + +Use *Set Cover Image* to your task and quickly get to comprehend what the task is about. The image +is directly shown in the Kanban view. + +.. image:: media/cover_image.png + :align: center + :height: 280 + :alt: Click on the drop down menu and set a cover image in Odoo Project + +Choose how to visualize tasks +============================= + +Tasks can be managed and followed up in the Kanban view, which is a post-it kind of view divided +into different stages. More options are otherwise available. + +.. image:: media/visualize_tasks.png + :align: center + :alt: Overview of the kanban view in Odoo Project + +Drag and drop tasks to change their stage and define colors to help you identify them. + +.. image:: media/colors.png + :align: center + :height: 340 + :alt: Choose a color to identify your task in Odoo Project + +.. seealso:: + - :doc:`../../general/tags/take_tags` + + + + diff --git a/project/tasks/media/activity_type.png b/project/tasks/media/activity_type.png new file mode 100644 index 000000000..af96e0c27 Binary files /dev/null and b/project/tasks/media/activity_type.png differ diff --git a/project/tasks/media/add_followers.png b/project/tasks/media/add_followers.png new file mode 100644 index 000000000..ee4aab2c0 Binary files /dev/null and b/project/tasks/media/add_followers.png differ diff --git a/project/tasks/media/assignation.png b/project/tasks/media/assignation.png new file mode 100644 index 000000000..eec07c72a Binary files /dev/null and b/project/tasks/media/assignation.png differ diff --git a/project/tasks/media/colors.png b/project/tasks/media/colors.png new file mode 100644 index 000000000..53ba7deb4 Binary files /dev/null and b/project/tasks/media/colors.png differ diff --git a/project/tasks/media/config.png b/project/tasks/media/config.png new file mode 100644 index 000000000..09e72eb4e Binary files /dev/null and b/project/tasks/media/config.png differ diff --git a/project/tasks/media/cover_image.png b/project/tasks/media/cover_image.png new file mode 100644 index 000000000..f7edda39a Binary files /dev/null and b/project/tasks/media/cover_image.png differ diff --git a/project/tasks/media/create.png b/project/tasks/media/create.png new file mode 100644 index 000000000..c1458745f Binary files /dev/null and b/project/tasks/media/create.png differ diff --git a/project/tasks/media/email_alias.png b/project/tasks/media/email_alias.png new file mode 100644 index 000000000..291021726 Binary files /dev/null and b/project/tasks/media/email_alias.png differ diff --git a/project/tasks/media/email_test.png b/project/tasks/media/email_test.png new file mode 100644 index 000000000..d50a50ca1 Binary files /dev/null and b/project/tasks/media/email_test.png differ diff --git a/project/tasks/media/follower_task.png b/project/tasks/media/follower_task.png new file mode 100644 index 000000000..cf73ccce5 Binary files /dev/null and b/project/tasks/media/follower_task.png differ diff --git a/project/tasks/media/manage_files.png b/project/tasks/media/manage_files.png new file mode 100644 index 000000000..3b83cddee Binary files /dev/null and b/project/tasks/media/manage_files.png differ diff --git a/project/tasks/media/pad_collaborative.png b/project/tasks/media/pad_collaborative.png new file mode 100644 index 000000000..1eb60f6f9 Binary files /dev/null and b/project/tasks/media/pad_collaborative.png differ diff --git a/project/tasks/media/priority.png b/project/tasks/media/priority.png new file mode 100644 index 000000000..5f1359882 Binary files /dev/null and b/project/tasks/media/priority.png differ diff --git a/project/tasks/media/schedule_activities.png b/project/tasks/media/schedule_activities.png new file mode 100644 index 000000000..7cd245aa3 Binary files /dev/null and b/project/tasks/media/schedule_activities.png differ diff --git a/project/tasks/media/select_notif.png b/project/tasks/media/select_notif.png new file mode 100644 index 000000000..b6521faf3 Binary files /dev/null and b/project/tasks/media/select_notif.png differ diff --git a/project/tasks/media/specific_project.png b/project/tasks/media/specific_project.png new file mode 100644 index 000000000..dc5e812ad Binary files /dev/null and b/project/tasks/media/specific_project.png differ diff --git a/project/tasks/media/sub_task_menu.png b/project/tasks/media/sub_task_menu.png new file mode 100644 index 000000000..dff82cbc4 Binary files /dev/null and b/project/tasks/media/sub_task_menu.png differ diff --git a/project/tasks/media/task_subtask.png b/project/tasks/media/task_subtask.png new file mode 100644 index 000000000..9e7e017db Binary files /dev/null and b/project/tasks/media/task_subtask.png differ diff --git a/project/tasks/media/the_chatter.png b/project/tasks/media/the_chatter.png new file mode 100644 index 000000000..ef9191763 Binary files /dev/null and b/project/tasks/media/the_chatter.png differ diff --git a/project/tasks/media/timesheet_sub_tasks.png b/project/tasks/media/timesheet_sub_tasks.png new file mode 100644 index 000000000..d6b405d99 Binary files /dev/null and b/project/tasks/media/timesheet_sub_tasks.png differ diff --git a/project/tasks/media/unlink_sub.png b/project/tasks/media/unlink_sub.png new file mode 100644 index 000000000..ab64f28e4 Binary files /dev/null and b/project/tasks/media/unlink_sub.png differ diff --git a/project/tasks/media/visualize_tasks.png b/project/tasks/media/visualize_tasks.png new file mode 100644 index 000000000..8ff7e7769 Binary files /dev/null and b/project/tasks/media/visualize_tasks.png differ diff --git a/project/tasks/sub_tasks.rst b/project/tasks/sub_tasks.rst new file mode 100644 index 000000000..7d03c329b --- /dev/null +++ b/project/tasks/sub_tasks.rst @@ -0,0 +1,66 @@ +=================== +Work with Sub-tasks +=================== + +Being a dynamic and organized company is important as it also helps you to not overload your +employees. For that, split large tasks into smaller ones by creating subs-tasks, timesheet +on them, and have an overview of all hours recorded. + +Configuration +============= + +Go to :menuselection:`Project --> Configuration --> Settings --> Sub-tasks`. + +.. image:: media/config.png + :align: center + :alt: Enable the feature under settings in Odoo Project + +From now on, a *Sub-tasks* menu is available within your task. + +.. image:: media/sub_task_menu.png + :align: center + :alt: Overview of a task and the sub-tasks menu being shown in Odoo Project + +Select a specific project in which sub-tasks will be created by default +----------------------------------------------------------------------- + +By default, sub-tasks are created under the same project. However, you can select another one +by going to :menuselection:`Project --> Configuration --> Projects --> Sub-task Project`. + +.. image:: media/specific_project.png + :align: center + :alt: Under the settings of a project, select the sub-task project in Odoo Project + +Timesheet on sub-tasks +====================== + +Make sure the feature *Timesheets* is enabled under :menuselection:`Project --> Configuration --> +Settings` and under the settings of the needed *Project*. Now you are able to timesheet on your +tasks and sub-tasks. The time recorded on a sub-task is counted on the parent task. + +.. image:: media/timesheet_sub_tasks.png + :align: center + :alt: Timesheets tab being shown under a task in Odoo Project + +Transform an existing task into a sub-task +========================================== + +| Go to :menuselection:`Settings --> Activate the developer mode`. +| Now access your task, *Edit*, and add a *Parent Task*. + +.. image:: media/task_subtask.png + :align: center + :alt: A tab extra info with a field parent task is being shown in Odoo Project + +Unlink a sub-task from a parent task +==================================== + +| Go to :menuselection:`Settings --> Activate the developer mode`. +| Open and *Edit* the respective sub-task to remove the *Parent Task*. + +.. image:: media/unlink_sub.png + :align: center + :alt: A tab extra info with a field parent task is being shown in Odoo Project + +.. seealso:: + - :doc:`../record_and_invoice/time_record` diff --git a/redirects.txt b/redirects.txt index 219e17a12..cdf968bfe 100644 --- a/redirects.txt +++ b/redirects.txt @@ -26,7 +26,7 @@ # Redirections introduced in 11.0 : - +contributing/documentation/guidelines.rst contributing/documentation/rst_guidelines.rst # guidelines --> rst_guidelines # Redirections introduced in 12.0 : @@ -41,8 +41,108 @@ sales/sale_amazon/manage.rst sales/amazon_connector/manage.rst # sale_amazon/* sales/sale_ebay.rst sales/ebay_connector.rst # sale_ebay -> ebay_connector (#524) sales/ebay/setup.rst sales/ebay_connector/setup.rst # ebay/* moved to ebay_connector/* (#524) sales/ebay/manage.rst sales/ebay_connector/manage.rst # ebay/* moved to ebay_connector/* (#524) +sales/send_quotations/optional_items.rst sales/send_quotations/optional_products.rst # (#533) accounting/localizations/nederlands.rst accounting/localizations/netherlands.rst # (#514) +accounting/receivables/customer_invoices/refund.rst accounting/receivables/customer_invoices/credit_notes.rst # refund --> credit_notes (#475) +accounting/receivables/customer_payments/payment_sepa.rst accounting/receivables/customer_payments/batch_sdd.rst # payment_sepa --> batch_sdd (#475) +accounting/bank/feeds/synchronize.rst accounting/bank/feeds/bank_synchronization.rst # synchronize --> bank_synchronization (#535) +accounting/others/adviser/assets.rst accounting/payables/supplier_bills/assets.rst # others/adviser/* --> payables/supplier_bills/* (#541) +accounting/others/configuration/account_type.rst accounting/overview/getting_started/chart_of_accounts.rst # others/configuration/account_type --> overview/getting_started/chart_of_accounts (#554) +accounting/bank/feeds/manual.rst accounting/bank/feeds/bank_statements.rst # manual --> bank_statements [merged] (#569) +accounting/bank/feeds/coda.rst accounting/bank/feeds/bank_statements.rst # coda --> bank_statements [merged] (#569) +accounting/bank/feeds/ofx.rst accounting/bank/feeds/bank_statements.rst # ofx --> bank_statements [merged] (#569) +accounting/bank/feeds/qif.rst accounting/bank/feeds/bank_statements.rst # qif --> bank_statements [merged] (#569) +accounting/receivables/customer_invoices/installment_plans.rst accounting/receivables/customer_invoices/payment_terms.rst # installment_plans --> payment_terms [merged] (#573) +accounting/others/adviser/fiscalyear.rst accounting/fiscality/fiscal_year/close_fiscal_year.rst # others/adviser/fiscalyear --> fiscality/fiscal_year/close_fiscal_year (#575) +accounting/others/configuration/fiscal_year.rst accounting/fiscality/fiscal_year/fiscal_year.rst # others/configuration/* --> fiscality/fiscal_year/* (#575) +accounting/others/taxes.rst accounting/fiscality/taxes.rst # others/* --> fiscality/* (#575) +accounting/others/taxes/B2B_B2C.rst accounting/fiscality/taxes/B2B_B2C.rst # others/* --> fiscality/* (#575) +accounting/others/taxes/application.rst accounting/fiscality/taxes/application.rst # others/* --> fiscality/* (#575) +accounting/others/taxes/cash_basis_taxes.rst accounting/fiscality/taxes/cash_basis_taxes.rst # others/* --> fiscality/* (#575) +accounting/others/taxes/create.rst accounting/fiscality/taxes/create.rst # others/* --> fiscality/* (#575) +accounting/others/taxes/default_taxes.rst accounting/fiscality/taxes/default_taxes.rst # others/* --> fiscality/* (#575) +accounting/others/taxes/retention.rst accounting/fiscality/taxes/retention.rst # others/* --> fiscality/* (#575) +accounting/others/taxes/tax_included.rst accounting/fiscality/taxes/tax_included.rst # others/* --> fiscality/* (#575) +accounting/others/taxes/taxcloud.rst accounting/fiscality/taxes/taxcloud.rst # others/* --> fiscality/* (#575) +accounting/payables/misc/employee_expense.rst expense/expense.rst # accounting/payables/misc/employee_expense --> expense/expense [merged] +accounting/others/reporting/customize.rst accounting/reporting/overview/customize.rst # others/reporting/* --> reporting/overview/* +accounting/others/reporting/main_reports.rst accounting/reporting/overview/main_reports.rst # others/reporting/* --> reporting/overview/* +accounting/fiscality/taxes/tax_returns.rst accounting/reporting/declarations/tax_returns.rst # fiscality/taxes/* --> reporting/declarations/* +accounting/bank/setup/create_bank_account.rst accounting/bank/setup/bank_accounts.rst # create_bank_account -> bank_accounts +accounting/localizations.rst accounting/fiscal_localizations/localizations.rst # localizations --> fiscal_localizations/localizations +accounting/localizations/argentina.rst accounting/fiscal_localizations/localizations/argentina.rst # localizations/* --> fiscal_localizations/localizations/* +accounting/localizations/colombia.rst accounting/fiscal_localizations/localizations/colombia.rst # localizations/* --> fiscal_localizations/localizations/* +accounting/localizations/colombia_ES.rst accounting/fiscal_localizations/localizations/colombia_ES.rst # localizations/* --> fiscal_localizations/localizations/* +accounting/localizations/france.rst accounting/fiscal_localizations/localizations/france.rst # localizations/* --> fiscal_localizations/localizations/* +accounting/localizations/germany.rst accounting/fiscal_localizations/localizations/germany.rst # localizations/* --> fiscal_localizations/localizations/* +accounting/localizations/italy_IT.rst accounting/fiscal_localizations/localizations/italy_IT.rst # localizations/* --> fiscal_localizations/localizations/* +accounting/localizations/mexico.rst accounting/fiscal_localizations/localizations/mexico.rst # localizations/* --> fiscal_localizations/localizations/* +accounting/localizations/netherlands.rst accounting/fiscal_localizations/localizations/netherlands.rst # localizations/* --> fiscal_localizations/localizations/* +accounting/localizations/spain.rst accounting/fiscal_localizations/localizations/spain.rst # localizations/* --> fiscal_localizations/localizations/* +accounting/localizations/switzerland.rst accounting/fiscal_localizations/localizations/switzerland.rst # localizations/* --> fiscal_localizations/localizations/* +accounting/payables/supplier_bills/bills_or_receipts.rst accounting/payables/supplier_bills/purchase_receipts.rst # bills_or_receipts.rst -> purchase_receipts.rst +accounting/bank/reconciliation/configure.rst accounting/bank/reconciliation/reconciliation_models.rst # configure -> reconciliation_models (#613) + +social_marketing/social_marketing.rst social_marketing/overview.rst # social_marketing/* -> overview/* (#578) + +project/planning/assignments.rst project/planning/forecast.rst # assignments/* -> forecast/* (#583) +project/overview/main_concepts/introduction.rst project/overview/setup.rst # main_concepts/* -> overview/* (#581) +project/configuration/collaboration.rst project/tasks/collaborate.rst # configuration/collaboration -> tasks/collaborate (#581) +project/application/intro.rst project/record_and_invoice/time_record.rst # application/intro -> record_and_invoice/time_record (#581) +project/configuration/setup.rst project/overview/setup.rst # configuration/setup -> overview/setup (#581) +project/configuration/visualization.rst project/tasks/get_started.rst # configuration/visualization -> tasks/get_started (#581) +project/configuration/time_record.rst project/record_and_invoice/time_record.rst # configuration/time_record -> record_and_invoice/time_record (#581) + +livechat/livechat.rst livechat/overview.rst # livechat/* -> overveiw/* (#601) + +point_of_sale/advanced/barcode.rst point_of_sale/shop/barcode.rst # advanced/* --> shop/* (#612) +point_of_sale/advanced/multicashiers.rst point_of_sale/shop/multicashiers.rst # advanced/* --> shop/* (#612) +point_of_sale/advanced/reprint.rst point_of_sale/shop/reprint.rst # advanced/* --> shop/* (#612) +point_of_sale/advanced/cash_rounding.rst point_of_sale/shop/cash_rounding.rst # advanced/* --> shop/* (#612) +point_of_sale/overview/start.rst point_of_sale/overview/getting_started.rst # start --> getting_started (#600) +point_of_sale/shop/refund.rst point_of_sale/overview/getting_started.rst # shop/refund --> overview/getting_started (#600) +point_of_sale/analyze/statistics.rst point_of_sale/overview/getting_started.rst # analyze/statistics --> overview/getting_started (#600) + +quality/control_points.rst quality/control/control_points.rst # /* --> control/* (#469) +quality/alert_mo.rst quality/alert/alert_mo.rst # /* --> alert/* (#469) +quality/alert_transfer.rst quality/alert/alert_transfer.rst # /* --> alert/* (#469) +quality/quality_mo.rst quality/checks/quality_mo.rst # /* --> checks/* (#469) +quality/quality_transfers.rst quality/checks/quality_transfers.rst # /* --> checks/* (#469) + +iot/connect.rst iot/config/connect.rst # /* --> config/* (#446) +iot/pos.rst iot/config/pos.rst # /* --> config/* (#446) +iot/iot_notfound.rst iot/config/iot_notfound.rst # /* --> config/* (#446) +iot/flash_sdcard.rst iot/config/flash_sdcard.rst # /* --> config/* (#446) +iot/devices/payment_terminal.rst point_of_sale/payment/ingenico.rst # iot/devices/payment_terminal --> point_of_sale/payment/ingenico (#446) + +inventory/barcode/operations/delivery.rst inventory/barcode/operations/internal.rst # delivery --> internal (#436) +inventory/barcode/operations/receipts.rst inventory/barcode/operations/internal.rst # delivery --> internal (#436) +inventory/barcode/operations/lots_serial_numbers.rst inventory/barcode/operations/internal.rst # delivery --> internal (#436) +inventory/barcode/operations/internal.rst inventory/barcode/operations/internal.rst # delivery --> internal (#436) +inventory/routes/costing/landed_costs.rst inventory/management/reporting/integrating_landed_costs.rst # routes/costing/landed_costs --> management/reporting/integrating_landed_costs (#503) +inventory/management/misc/schedulers.rst inventory/management/planning/schedulers.rst # misc/* --> planning/* (#443) +inventory/settings/products/variants.rst inventory/management/products/variants.rst # settings/* --> management/* (#424) +inventory/management/products/variants.rst sales/products_prices/products/variants.rst # inventory/management/products/variants --> sales/products_prices/products/variants (#448) +inventory/settings/products.rst inventory/management/products.rst # settings/* --> management/* (#424) +inventory/settings/products/strategies.rst inventory/management/products/strategies.rst # settings/* --> management/* (#424) +inventory/settings/products/uom.rst inventory/management/products/uom.rst # settings/* --> management/* (#424) +inventory/settings/products/usage.rst inventory/management/products/usage.rst # settings/* --> management/* (#424) +inventory/management/adjustment/min_stock_rule_vs_mto.rst inventory/management/replenishment_strategies/min_stock_rule_vs_mto.rst # adjustment/* --> replenishment_strategies/* (#424) +inventory/management/adjustment/virtual_warehouses.rst inventory/management/replenishment_strategies/virtual_warehouses.rst # adjustment/* --> replenishment_strategies/* (#424) +inventory/settings/warehouses.rst inventory/management/warehouses.rst # settings/* --> management/* (#424) +inventory/settings/warehouses/difference_warehouse_location.rst inventory/management/warehouses/difference_warehouse_location.rst # settings/* --> management/* (#424) +inventory/settings/warehouses/location_creation.rst inventory/management/warehouses/location_creation.rst # settings/* --> management/* (#424) +inventory/management/delivery/scheduled_dates.rst inventory/management/planning/scheduled_dates.rst # delivery/scheduled_dates --> planning/scheduled_dates (#660) +inventory/management/planning/scheduled_date.rst inventory/manamgent/planning/scheduled_dates.rst # scheduled_date --> scheduled_dates (#660) + +helpdesk/getting_started.rst helpdesk/overview/getting_started.rst # (#565) +helpdesk/after_sales.rst helpdesk/advanced/after_sales.rst # (#565) +helpdesk/close_tickets.rst helpdesk/advanced/close_tickets.rst # (#565) +helpdesk/invoice_time.rst helpdesk/timesheet_and_invoice/invoice_time.rst # (#565) +helpdesk/reinvoice_from_project.rst helpdesk/timesheet_and_invoice/reinvoice_from_project.rst # (#565) # Redirections introduced in 13.2 : +planning/duplicate_a_planning.rst planning/overview/duplicate_a_planning.rst # (#567) +planning/send_planned_shifts.rst planning/overview/send_planned_shifts.rst # (#567) diff --git a/sms_marketing/overview.rst b/sms_marketing/overview.rst index 9a5d8e88d..b28e1342b 100644 --- a/sms_marketing/overview.rst +++ b/sms_marketing/overview.rst @@ -5,6 +5,6 @@ Overview .. toctree:: :titlesonly: - overview/integrations_and_template overview/sms_mailing_reports + overview/integrations_and_template overview/contact_lists_and_blacklist diff --git a/sms_marketing/overview/contact_lists_and_blacklist.rst b/sms_marketing/overview/contact_lists_and_blacklist.rst index f5ab90ed7..b96bff05c 100644 --- a/sms_marketing/overview/contact_lists_and_blacklist.rst +++ b/sms_marketing/overview/contact_lists_and_blacklist.rst @@ -1,42 +1,41 @@ =========================== -Contact lists and Blacklist +Contact Lists and Blacklist =========================== + Creating your own list of contacts, or importing it, is useful when you want to create specific groups of people, such as the subscribers of your newsletter. It is also the best way to get started if you are coming from another system and already have built an audience. It makes the SMS -distribution a lot easier. - +distribution easier. Contact lists ============= + | Go to :menuselection:`Contacts lists --> Contacts lists --> Create`. -| Choose a name for your *Mailing list*, and activate the option *Public* if you would like to make - the mailing list accessible to your recipients in the unsubscription page to allow them to update - their subscription preferences. -| Once inside the list, you can again *Create* or *Import* contacts for that specific list. +| Choose a name for your *Mailing list*, and activate the option *Is Public* if you would like to + make the mailing list accessible to your recipients in the unsubscription page (allowing users to + update their subscription preferences). .. image:: ./media/sms_marketing9.png :align: center History with the Log Notes -------------------------- -A record of the mailings sent is kept in the chatter of the recipient (whether it is a contact or -an opportunity, for example). + +| A record of the mailings sent is kept on the recipient's chatter (whether it is a contact or + an opportunity, for example). +| This is important as you and team members can easily keep track and see a history of the + interactions with your contacts or prospects. Example: your sales representative can easily find + out which SMS mailing promotions a customer has received or not. .. image:: ./media/sms_marketing10.png :align: center :height: 300 -| This is important as you and your team can easily keep track and see a history of interactions - with your contacts or prospects, granting you the ability to better understand them. -| Example: your sales representative can easily find out which SMS mailing promotions a customer has - received or not. - - Blacklist ========= + | If you are coming from another software and have a list of clients who have already asked to be - blacklisted, you can import those entries in your database. + blacklisted, you can import those entries to your database. | For that, go to :menuselection:`Configuration --> Phone Blacklist --> Import`. .. image:: ./media/sms_marketing11.png diff --git a/sms_marketing/overview/integrations_and_template.rst b/sms_marketing/overview/integrations_and_template.rst index 15eb5aa57..18bdb7a95 100644 --- a/sms_marketing/overview/integrations_and_template.rst +++ b/sms_marketing/overview/integrations_and_template.rst @@ -1,26 +1,27 @@ ========================== Integrations and Templates ========================== -Using SMS to reach people can be a strategy not just used for advertisement purposes but also as a + +Using SMS to reach people can be a strategy not just used for advertisement purposes, but also as a reminder of events or issued invoices to your costumers, for example. +Campaigns +========= -Organize Email Marketing and SMS Campaigns -========================================== First, make sure to have the necessary feature activated. Go to the :menuselection:`Email Marketing -app --> Configuration --> Settings --> activate the option Mailing Campaigns`. +app --> Configuration --> Settings` and enable *Mailing Campaigns*. .. image:: ./media/sms_marketing12.png :align: center -Now, you will also have the menu *Campaigns* included in your *SMS Marketing* page, allowing you -to have an overview of your SMS mailings and your email marketing ones. +Now, the menu *Campaigns* is also available on the *SMS Marketing* app, allowing you to manage and +have an overview of your SMS mailings under campaigns. .. image:: ./media/sms_marketing13.png :align: center This feature is especially useful if you have aggregated campaigns, as you have a global reporting -view. In addition to that, you can create stages in your kanban view to better organize the work +view. In addition to that, you can create stages in your Kanban view to better organize the work being done. .. image:: ./media/sms_marketing14.png @@ -28,6 +29,7 @@ being done. Sending SMSs through the Contacts app ===================================== + | Sending SMSs through the contact’s form is available by default in Odoo. It makes your work easier if you need to send an SMS to a specific contact, for example. | For that, go to the *Contacts* app, select the contact and click on the *SMS* icon next to the @@ -36,18 +38,17 @@ Sending SMSs through the Contacts app .. image:: ./media/sms_marketing15.png :align: center -If you would like to send a message in a batch here, you could go to -:menuselection:`List View --> select all the contacts --> Action --> Send SMS`. +If you would like to send a message to multiple contacts at once, choose the *List View*, select +all the contacts needed, and under *Action* select *Send SMS*. .. image:: ./media/sms_marketing16.png :align: center - -Set up SMS Templates +Set up SMS templates ==================== -To set up *SMS Templates*, activate -the :doc:`Developer mode <../../general/developer_mode/activate>`. Now, go to -:menuselection:`Technical --> Phone/SMS section --> SMS Templates`. + +To set up *SMS Templates*, activate the :doc:`Developer mode <../../general/developer_mode/activate>`, +then go to :menuselection:`Technical --> SMS Templates`. .. image:: ./media/sms_marketing17.png :align: center @@ -59,7 +60,7 @@ the :doc:`Developer mode <../../general/developer_mode/activate>`. Now, go to Use *Dynamic Placeholders* to adapt automatically the content of the SMS to the context. .. note:: - SMS Text Messaging is available throughout Odoo! Here are some of our extra notable integrations: + SMS Text Messaging is available throughout Odoo: - *CRM*: send SMSs to your leads and opportunities. - *Subscription*: alert customers about their subscription. @@ -70,7 +71,10 @@ the :doc:`Developer mode <../../general/developer_mode/activate>`. Now, go to - *SEPA debit payment provider*: send a verification code to your customers. - *Studio*: send an SMS according to your needs by using automated actions. -.. tip:: +.. important:: For more information about SMS integrations in Odoo and a list of frequently asked questions, go to :doc:`../pricing/pricing_and_faq`. +.. seealso:: + - :doc:`../../social_marketing/overview/campaigns` + - :doc:`../../discuss/advanced/emailtemplate` \ No newline at end of file diff --git a/sms_marketing/overview/media/sms_marketing1.png b/sms_marketing/overview/media/sms_marketing1.png index baf8b22f0..eb3e9b6c8 100644 Binary files a/sms_marketing/overview/media/sms_marketing1.png and b/sms_marketing/overview/media/sms_marketing1.png differ diff --git a/sms_marketing/overview/media/sms_marketing13.png b/sms_marketing/overview/media/sms_marketing13.png index 8ad7adf4f..ebc55ec1a 100644 Binary files a/sms_marketing/overview/media/sms_marketing13.png and b/sms_marketing/overview/media/sms_marketing13.png differ diff --git a/sms_marketing/overview/media/sms_marketing14.png b/sms_marketing/overview/media/sms_marketing14.png index f9a30cbb0..f6e808ac8 100644 Binary files a/sms_marketing/overview/media/sms_marketing14.png and b/sms_marketing/overview/media/sms_marketing14.png differ diff --git a/sms_marketing/overview/media/sms_marketing16.png b/sms_marketing/overview/media/sms_marketing16.png index 713e8ba2d..aed0abb1e 100644 Binary files a/sms_marketing/overview/media/sms_marketing16.png and b/sms_marketing/overview/media/sms_marketing16.png differ diff --git a/sms_marketing/overview/media/sms_marketing2.png b/sms_marketing/overview/media/sms_marketing2.png index 14727b2ea..f04097358 100644 Binary files a/sms_marketing/overview/media/sms_marketing2.png and b/sms_marketing/overview/media/sms_marketing2.png differ diff --git a/sms_marketing/overview/sms_mailing_reports.rst b/sms_marketing/overview/sms_mailing_reports.rst index 309370c0c..f17051b7f 100644 --- a/sms_marketing/overview/sms_mailing_reports.rst +++ b/sms_marketing/overview/sms_mailing_reports.rst @@ -1,48 +1,39 @@ -=============================================== +============================================== Build, Send and Get Reports from a SMS Mailing -=============================================== +============================================== + Using SMS Marketing as part of your communication strategies can empower you to expand your markets, considering that in some countries emails are not very used or used at all. It also helps to boost conversion rates, as this strategy has a high open-rate percentage among people who use -smartphones - people usually don’t keep unread SMSs! +smartphones. - -Install the app -=============== - -Go to *Apps*, search for *SMS Marketing* and click on *Install*. - -Build an SMS mailing -==================== +Get started +=========== Go to :menuselection:`SMS Marketing --> Create`. .. image:: ./media/sms_marketing1.png :align: center -| First, you will be able to specify a *subject* name that will help you to remember what the - mailing is about. -| Under *recipients*, choose to whom you would like the SMS to be sent. If you choose *Contact*, - all your Odoo contacts (vendor, customers, etc.) will receive your SMS. +| Specify a *subject* name to help you remembering what the mailing is about. +| Under *Recipients*, choose to whom you would like the SMS to be sent. If you choose *Contact*, + all your Odoo contacts (vendor, customers, etc.) receive your SMS. | From there, you can refine your recipient list with the *add filter* option. In the example below, - the message will be sent to contacts living in Belgium. - + the message would be sent to the contacts living in Belgium. .. image:: ./media/sms_marketing2.png :align: center -The *Mailing list* option, on the other hand, allows you to choose mailing lists you ve created with -specific contacts or people who have subscribed to your Newsletters, or both! -Note that you are allowed to select more than one *Mailing list*. +The *Mailing list* option, on the other hand, allows you to choose the specific mailing lists you +created to group specific contacts. You are allowed to select multiple ones. .. image:: ./media/sms_marketing3.png :align: center -| Under the *SMS Content* tab, links can be included and Odoo will automatically generate - *link trackers*. Thank to those, you will be able to get data about those links. - -| On *Settings* you have the option *include opt-out link* available. If activated, the contact - will be able to unsubscribe from the mailing list he is not interested in anymore. +| Under the *SMS Content* tab, links can be included and Odoo automatically generates *link + trackers* in order to generate data about these links. +| Under *Settings* you have the option *Include opt-out link*. If activated, the contact + is able to unsubscribe from the mailing list. .. image:: ./media/sms_marketing4.png :align: center @@ -58,42 +49,39 @@ Note that you are allowed to select more than one *Mailing list*. .. note:: Double-check that you have the phone number of your contacts saved. - -Sending my mailing -================== +Send a mailing +============== .. image:: ./media/sms_marketing6.png Once you have your mailing created, you must choose when you would like it to be delivered: -- Put in queue: the mailing will be triggered with the next automatic run. Interesting option - if you do not mind when the triggering will happen. -- Send now: sends the message immediately. Advised to use this option if there are not that - many recipients. -- Schedule: allows you to choose a day and time. Best option for mailings that you would like to - send during a specific event, to promote an offer while it is active or to simply plan your +- *Put in Queue*: the mailing is triggered with the next automatic run. Interesting option if you do + not need the message to be sent at a specific time. +- *Send Now*: sends the message immediately. Use this option if the recipient list is not excessive. +- *Schedule*: allows you to choose a day and time. Best option for mailings that you would like to + send during a specific event, to promote an offer while it is active, or to simply plan your content strategy in advance. -- Test: allows you to send an SMS to one or multiple numbers for test purposes. Check, for +- *Test*: allows you to send an SMS to one or multiple numbers for test purposes. Check, for example, if the link provided lands on the right page while making sure they are responsive. If sending it to multiple numbers, you must remember to use a comma between them. - Visualize reports ================= -On the *Reporting* menu, with just a few clicks, you are capable of applying filters, measures and -adopt different layouts to do an analysis of the performance of your SMS mailings. + +Under the *Reporting* menu apply filters, measures, and adopt different layouts to do analyses of +the performance of your SMS mailings. .. image:: ./media/sms_marketing7.png :align: center .. tip:: - You can also check the price to send an SMS on your country when clicking on the - *information* icon when creating a new SMS. + You can also check the price to send an SMS for your country by clicking on the *Information* + icon. .. image:: ./media/sms_marketing8.png :align: center .. note:: - **Buy Credits!** - In order to take advantage of the app and its features, make sure you have purchased credits. - For more information on that access: :doc:`../pricing/pricing_and_faq` + **Buy Credits:** in order to take advantage of the app and its features, make sure you have + purchased credits. For more information: :doc:`../pricing/pricing_and_faq`. diff --git a/social_marketing/overview/media/individually_push.png b/social_marketing/overview/media/individually_push.png index 6d754bfda..cf1dd78b4 100644 Binary files a/social_marketing/overview/media/individually_push.png and b/social_marketing/overview/media/individually_push.png differ diff --git a/social_marketing/overview/media/push_to_a_group.png b/social_marketing/overview/media/push_to_a_group.png index a53c966ef..4df21ea21 100644 Binary files a/social_marketing/overview/media/push_to_a_group.png and b/social_marketing/overview/media/push_to_a_group.png differ diff --git a/survey/overview/media/sur1.png b/survey/overview/media/sur1.png index 6e493f564..44942aede 100644 Binary files a/survey/overview/media/sur1.png and b/survey/overview/media/sur1.png differ diff --git a/survey/overview/media/sur2.png b/survey/overview/media/sur2.png index 4ba3edc41..b0068b203 100644 Binary files a/survey/overview/media/sur2.png and b/survey/overview/media/sur2.png differ diff --git a/timesheets.rst b/timesheets.rst new file mode 100644 index 000000000..41e231d79 --- /dev/null +++ b/timesheets.rst @@ -0,0 +1,10 @@ +:banner: banners/timesheets.png + +========== +Timesheets +========== + +.. toctree:: + :titlesonly: + + timesheets/overview \ No newline at end of file diff --git a/timesheets/overview.rst b/timesheets/overview.rst new file mode 100644 index 000000000..376085978 --- /dev/null +++ b/timesheets/overview.rst @@ -0,0 +1,9 @@ +======== +Overview +======== + +.. toctree:: + :titlesonly: + + overview/get_started + overview/compare \ No newline at end of file diff --git a/timesheets/overview/compare.rst b/timesheets/overview/compare.rst new file mode 100644 index 000000000..e81d80a3b --- /dev/null +++ b/timesheets/overview/compare.rst @@ -0,0 +1,34 @@ +============================= +Compare Hours and do Analyses +============================= + +Make sure your employees’ workload is being fairly distributed and control your tasks to get +powerful insights when comparing planned versus effective hours. + +Compare the planned and effective hours of your tasks +===================================================== + +Go to :menuselection:`Project --> Reporting --> Tasks Analysis`, select the *Pivot* view and +refine your *Measures* to *Effective Hours* and *Planned Hours*. + +.. image:: media/compare1.png + :align: center + :alt: Select effective and planned hours under measures in Odoo Timesheets application + +Still on *Project*, under :menuselection:`Reporting --> Planning Analysis` find a pivot view with +an analysis of allocated and effective hours of your tasks by user and start date, or by any of +the other available filters. + +.. image:: media/compare2.png + :align: center + :alt: Go to reporting to see a planning analyses in Odoo Timesheets application + +HR analysis +=========== + +Under :menuselection:`Timesheets --> Reporting --> Timesheet/Attendance` have an overview of the +worked hours and allocated time of your employees. + +.. image:: media/compare3.png + :align: center + :alt: Report about employees' attendance in Odoo Timesheets application diff --git a/timesheets/overview/get_started.rst b/timesheets/overview/get_started.rst new file mode 100644 index 000000000..1e4ad7c04 --- /dev/null +++ b/timesheets/overview/get_started.rst @@ -0,0 +1,67 @@ +=========================== +Get Started with Timesheets +=========================== + +When you use timesheets (from any device, anywhere) to track the time spent on tasks, you are able +to bill customers for the exact right amount they should be billed. In addition to it, add a +description of the work done to have a reliable tracking and history, and compare the forecasted +times, all in favor of becoming a more proactive company. + +Choose an encoding unit +======================= + +| Under :menuselection:`Timesheets --> Configuration --> Settings`, choose the unit of measure to + register your timesheet. This provides tools and widgets to help you encoding. +| *Minimal duration* is the minimum time at which a task is recorded. +| *Rounding up* allows you to time up or down to the nearest minutes or hours. For example: if the + interval is set to 30min, a 14min entry will show up in reports as 0min, and a 29min entry + as 30min. + +.. image:: media/get1.png + :align: center + :alt: Set the time unit used to record your timesheets in Odoo Timesheets application + +.. note:: + Reportings are expressed in hours, the default value. + +Create a task from a SO & timesheet on it +========================================= + +| Under the *General Settings* of your product, categorize it as a service. +| On the *Sales* tab, (section *Sales Invoicing Policy*) choose if you want to invoice customers + based on the quantity previous ordered (the one sent on a quotation, for instance), on the time + recorded (while the service was being executed), or by manually adding the time spent when + creating the invoice. +| Chose the right *Service Tracking* for you and, from now on, when a sales order is confirmed, + Odoo automatically creates a task/project (if that was the chosen option) and allows you to + timesheet on it. + +.. image:: media/get2.png + :align: center + :alt: Choose the invoicing options under a product form in Odoo Timesheets application + +Choose an Invoicing Policy +========================== + +Go to :menuselection:`Timesheets --> Configuration --> Settings` and choose if you want the recorded +time to be directly invoiced, or if it should be approved first. + +.. image:: media/get3.png + :align: center + :alt: Choose how to invoice the recorded times in Odoo Timesheets application + +Send reminders +============== + +| Choose to have an automatic email being sent to all users and managers who have not recorded their + times. +| Go to :menuselection:`Timesheets --> Configuration --> Settings` and enable the *Employee + Reminder* and *Manager Reminder* features. + +.. image:: media/get4.png + :align: center + :alt: Activate timesheet reminders for managers and employees in Odoo Timesheets application + +.. tip:: + Odoo Timesheets continues to run even if there is no internet connection. The data syncs once you + are back online. diff --git a/timesheets/overview/media/compare1.png b/timesheets/overview/media/compare1.png new file mode 100644 index 000000000..2302b44a2 Binary files /dev/null and b/timesheets/overview/media/compare1.png differ diff --git a/timesheets/overview/media/compare2.png b/timesheets/overview/media/compare2.png new file mode 100644 index 000000000..9448c861e Binary files /dev/null and b/timesheets/overview/media/compare2.png differ diff --git a/timesheets/overview/media/compare3.png b/timesheets/overview/media/compare3.png new file mode 100644 index 000000000..d2c0188c6 Binary files /dev/null and b/timesheets/overview/media/compare3.png differ diff --git a/timesheets/overview/media/get1.png b/timesheets/overview/media/get1.png new file mode 100644 index 000000000..8c5574286 Binary files /dev/null and b/timesheets/overview/media/get1.png differ diff --git a/timesheets/overview/media/get2.png b/timesheets/overview/media/get2.png new file mode 100644 index 000000000..79361482a Binary files /dev/null and b/timesheets/overview/media/get2.png differ diff --git a/timesheets/overview/media/get3.png b/timesheets/overview/media/get3.png new file mode 100644 index 000000000..a24b6047d Binary files /dev/null and b/timesheets/overview/media/get3.png differ diff --git a/timesheets/overview/media/get4.png b/timesheets/overview/media/get4.png new file mode 100644 index 000000000..805c00cf5 Binary files /dev/null and b/timesheets/overview/media/get4.png differ