diff --git a/_static/banners/subscriptions.png b/_static/banners/subscriptions.png new file mode 100644 index 000000000..41a3947c8 Binary files /dev/null and b/_static/banners/subscriptions.png differ diff --git a/accounting/bank/misc.rst b/accounting/bank/misc.rst index c7332adda..25116bf6c 100644 --- a/accounting/bank/misc.rst +++ b/accounting/bank/misc.rst @@ -5,5 +5,4 @@ Miscellaneous .. toctree:: :titlesonly: - misc/batch misc/interbank \ No newline at end of file diff --git a/accounting/bank/misc/batch.rst b/accounting/bank/misc/batch.rst deleted file mode 100644 index 9987803d7..000000000 --- a/accounting/bank/misc/batch.rst +++ /dev/null @@ -1,146 +0,0 @@ -=============================== -Manage batch deposits of checks -=============================== - -When your company's collections group receives checks from customers -they will often place this money into their bank account in batches. As -this money has been received in a physical form, someone in your company -must manually bring the checks to the bank. - -The bank will ask for a deposit ticket (also referred to as deposit -slip) to be filled-in with the details of the checks or cash to be -included in the transactions. - -The bank statement will reflect the total amount that was deposited and -the reference to the deposit ticket, not the individual checks. - -Odoo assists you to prepare and print your deposit tickets, and later on -reconcile them with your bank statement easily. - -Configuration -============= - -Install the batch deposit feature ---------------------------------- - -In order to use the batch deposit feature, you need the module **Batch -Deposit** to be installed. - -.. note:: - - Usually, this module is automatically - installed if checks are widely used in your country. - -To verify that the **Batch Deposit** feature is installed, go to the -:menuselection:`Configuration --> Settings` menu of the accounting application. -Check the feature: **Allow batch deposit**. - -.. image:: media/batch01.png - :align: center - -Activate the feature on your bank accounts ------------------------------------------- - -Once you have installed this feature, Odoo automatically activate bank -deposits on your main bank accounts. - -To control which bank account can do batch deposit and which can not, go -to the journal that you defined to pay your checks, usually called -'Checks' or 'Bank' (see :doc:`../../receivables/customer_payments/check`, -in the Accounting apps, :menuselection:`Configuration --> Accounting --> Journals`. - -In **Advanced Settings** tab, in section **Miscellaneous**, set Debit Method to -**Batch Deposit**. - -.. image:: media/batch02.png - :align: center - -If you check **Batch Deposit** in your debit method field, it means that -payments created using this Journal (called Payment method when you want -to make or receive a payment) will be applicable for the creation of -Batch Deposits afterwards. - -From checks received to the bank -================================ - -Receive customer checks ------------------------ - -Once your checks are received, record them on the bank account on -which you plan to deposit them. Once you select the bank account (or -check journal if you configured Odoo that way), Odoo proposes you to use -a batch deposit. Select this option if you plan to deposit the check to -your bank. - -.. image:: media/batch03.png - :align: center - -In the memo field, you can set the reference of the check. - -.. note:: - - payments can be registered from the menu :menuselection:`Sales --> Payments`, - or directly on the related invoice, using the **Register Payment** button. - -Prepare a batch deposit ------------------------ - -From the Accounting application, go to the menu :menuselection:`Sales --> Batch Deposit`, -and create a new **Batch Deposit**. - -.. image:: media/batch04.png - :align: center - -Select the bank, then select the payments (checks) you want to add in -this deposit. By default, Odoo proposes you all the checks that have not -been deposited yet. That way you can verify that you do not forget or -lost a check. - -.. image:: media/batch05.png - :align: center - -You can then print the batch deposit, which will be very useful -to prepare the deposit slip that the bank usually requires to complete. - -Reconciling the Deposit with the Bank Statement ------------------------------------------------ - -When you process the bank statement reconciliation you will see the -deposit ticket number referenced in the statement. When the reconciliation -process is run, the user will be able to select the batch deposit that -matches with the bank statement line. - -.. image:: media/batch06.png - :align: center - -If you select a batch deposit, Odoo will automatically fill all the -checks contained in this deposit for the matching. (2 checks were in -the batch deposit in the example below) - -.. image:: media/batch07.png - :align: center - -Troubleshooting -=============== - -I don't see the batch deposit link on bank statements? ------------------------------------------------------- - -If you don't have a batch deposit link in your bank statement, there -could be two reasons: - -- After having installed the batch deposit features you need to reload - the page so that the browser is aware of this new feature. Just - click the reload button of your browser. - -- You do not have a batch deposit created for this bank account. - -What happens if a check was refused? ------------------------------------- - -If you have a smaller amount in your bank statement than the actual -amount in your batch deposit, it probably means that one of your check -has been refused. - -In this case click on the line related to this check to remove it from -the bank statement matching. diff --git a/accounting/bank/misc/media/batch01.png b/accounting/bank/misc/media/batch01.png deleted file mode 100644 index 212c33515..000000000 Binary files a/accounting/bank/misc/media/batch01.png and /dev/null differ diff --git a/accounting/bank/misc/media/batch02.png b/accounting/bank/misc/media/batch02.png deleted file mode 100644 index 303bd81a7..000000000 Binary files a/accounting/bank/misc/media/batch02.png and /dev/null differ diff --git a/accounting/bank/misc/media/batch03.png b/accounting/bank/misc/media/batch03.png deleted file mode 100644 index 153f4ea23..000000000 Binary files a/accounting/bank/misc/media/batch03.png and /dev/null differ diff --git a/accounting/bank/misc/media/batch04.png b/accounting/bank/misc/media/batch04.png deleted file mode 100644 index 8c4ca7270..000000000 Binary files a/accounting/bank/misc/media/batch04.png and /dev/null differ diff --git a/accounting/bank/misc/media/batch05.png b/accounting/bank/misc/media/batch05.png deleted file mode 100644 index 51a12402a..000000000 Binary files a/accounting/bank/misc/media/batch05.png and /dev/null differ diff --git a/accounting/bank/misc/media/batch06.png b/accounting/bank/misc/media/batch06.png deleted file mode 100644 index 3c865833a..000000000 Binary files a/accounting/bank/misc/media/batch06.png and /dev/null differ diff --git a/accounting/bank/misc/media/batch07.png b/accounting/bank/misc/media/batch07.png deleted file mode 100644 index 63b34ed5f..000000000 Binary files a/accounting/bank/misc/media/batch07.png and /dev/null differ diff --git a/accounting/fiscal_localizations/localizations/mexico.rst b/accounting/fiscal_localizations/localizations/mexico.rst index 3aad189d9..a1ff67be8 100644 --- a/accounting/fiscal_localizations/localizations/mexico.rst +++ b/accounting/fiscal_localizations/localizations/mexico.rst @@ -69,8 +69,8 @@ integrate with the normal invoicing flow in Odoo. .. _mx-legal-info: -Set you legal information in the company ----------------------------------------- +Set your legal information in the company +----------------------------------------- First, make sure that your company is configured with the correct data. Go in :menuselection:`Settings --> Users --> Companies` diff --git a/accounting/fiscal_localizations/overview/fiscal_localization_packages.rst b/accounting/fiscal_localizations/overview/fiscal_localization_packages.rst index 7c78f5840..4cd5c8cf7 100644 --- a/accounting/fiscal_localizations/overview/fiscal_localization_packages.rst +++ b/accounting/fiscal_localizations/overview/fiscal_localization_packages.rst @@ -42,6 +42,6 @@ Please refer to the documentation listed below for more information. .. seealso:: - :doc:`../../overview/getting_started/chart_of_accounts` - - :doc:`../../fiscality/taxes/create` + - :doc:`../../fiscality/taxes/taxes` .. 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/fiscality/taxes.rst b/accounting/fiscality/taxes.rst index 6a4e6f301..0076d6168 100644 --- a/accounting/fiscality/taxes.rst +++ b/accounting/fiscality/taxes.rst @@ -5,11 +5,10 @@ Taxes .. toctree:: :titlesonly: - taxes/create + taxes/taxes taxes/default_taxes taxes/fiscal_positions taxes/taxcloud - taxes/tax_included taxes/retention taxes/B2B_B2C taxes/cash_basis_taxes diff --git a/accounting/fiscality/taxes/create.rst b/accounting/fiscality/taxes/create.rst deleted file mode 100644 index 5d76cbf65..000000000 --- a/accounting/fiscality/taxes/create.rst +++ /dev/null @@ -1,70 +0,0 @@ -================ -Create new taxes -================ - -Odoo's tax engine is very flexible and support many different type of -taxes: value added taxes (VAT), eco-taxes, federal/states/city taxes, retention, -withholding taxes, etc. For most countries, your system is pre-configured with the -right taxes. - -This section details how you can define new taxes for specific use cases. - -* Go to :menuselection:`Accounting --> Configuration --> Taxes`. From this menu, you - get all the taxes you can use: sales taxes and purchase taxes. - -.. image:: media/create01.png - :align: center - -* Choose a scope: Sales, Purchase or None (e.g. deprecated tax). - -* Select a computation method: - - * **Fixed**: eco-taxes, etc. - - * **Percentage of Price**: most common (e.g. 15% sales tax) - - * **Percentage of Price Tax Included**: used in Brazil, etc. - - * **Group of taxes**: allows to have a compound tax - -.. image:: media/create02.png - :align: center - - -* If you use Odoo Accounting, set a tax account (i.e. where the tax journal item will be - posted). This field is optional, if you keep it empty, Odoo posts - the tax journal item in the income account. - -.. tip:: - If you want to avoid using a tax, you can not delete it because the tax - is probably used in several invoices. So, in order to avoid users to - continue using this tax, you should set the field *Tax Scope* to *None*. - -.. note:: - If you need more advanced tax mechanism, you can install the - module **account_tax_python** and you will be able to define new taxes - with Python code. - -Advanced configuration -====================== - -* **Label on Invoices**: a short text on how you want this tax to be - printed on invoice line. For example, a tax named "15% on - Services" can have the following label on invoice "15%". - -* **Tax Group**: defines where this tax is summed in the invoice footer. - All the tax belonging to the same tax group will be grouped on - the invoice footer. Examples of tax group: VAT, Retention. - -* **Include in Analytic Cost**: the tax is counted as a cost and, thus, - generate an analytic entry if your invoice uses analytic - accounts. - -* **Tags**: are used for custom reports. Usually, you can keep this field - empty. - - -.. seealso:: - - * :doc:`fiscal_positions` - * :doc:`tax_included` diff --git a/accounting/fiscality/taxes/default_taxes.rst b/accounting/fiscality/taxes/default_taxes.rst index dd56aa67f..27f839e02 100644 --- a/accounting/fiscality/taxes/default_taxes.rst +++ b/accounting/fiscality/taxes/default_taxes.rst @@ -2,7 +2,7 @@ Default Taxes ============= -**Default Taxes** define which :doc:`taxes ` are automatically selected when there is no +**Default Taxes** define which :doc:`taxes ` are automatically selected when there is no other indication about which tax to use. For example, Odoo prefills the **Taxes** field with the Default Taxes when you create a new product or add a new line on an invoice. @@ -35,6 +35,6 @@ To change your **Default Taxes**, go to :menuselection:`Accounting --> Configura .. seealso:: - - :doc:`create` + - :doc:`taxes` - :doc:`fiscal_positions` - - :doc:`../../fiscal_localizations/overview/fiscal_localization_packages` + - :doc:`../../fiscal_localizations/overview/fiscal_localization_packages` \ No newline at end of file diff --git a/accounting/fiscality/taxes/fiscal_positions.rst b/accounting/fiscality/taxes/fiscal_positions.rst index 31926664a..02267439e 100644 --- a/accounting/fiscality/taxes/fiscal_positions.rst +++ b/accounting/fiscality/taxes/fiscal_positions.rst @@ -106,6 +106,6 @@ To manually select which Fiscal Position to use for a new Sales Order, Invoice, .. seealso:: - * :doc:`create` + * :doc:`taxes` * :doc:`taxcloud` * :doc:`B2B_B2C` \ No newline at end of file diff --git a/accounting/fiscality/taxes/media/tax_included.png b/accounting/fiscality/taxes/media/tax_included.png deleted file mode 100644 index 1b4d65134..000000000 Binary files a/accounting/fiscality/taxes/media/tax_included.png and /dev/null differ diff --git a/accounting/fiscality/taxes/media/taxes-definition.png b/accounting/fiscality/taxes/media/taxes-definition.png new file mode 100644 index 000000000..a0c66cfac Binary files /dev/null and b/accounting/fiscality/taxes/media/taxes-definition.png differ diff --git a/accounting/fiscality/taxes/media/taxes-edit.png b/accounting/fiscality/taxes/media/taxes-edit.png new file mode 100644 index 000000000..eb61372f5 Binary files /dev/null and b/accounting/fiscality/taxes/media/taxes-edit.png differ diff --git a/accounting/fiscality/taxes/media/taxes-invoice-label.png b/accounting/fiscality/taxes/media/taxes-invoice-label.png new file mode 100644 index 000000000..9e68fcb12 Binary files /dev/null and b/accounting/fiscality/taxes/media/taxes-invoice-label.png differ diff --git a/accounting/fiscality/taxes/media/taxes-invoice-tax-group.png b/accounting/fiscality/taxes/media/taxes-invoice-tax-group.png new file mode 100644 index 000000000..04d605266 Binary files /dev/null and b/accounting/fiscality/taxes/media/taxes-invoice-tax-group.png differ diff --git a/accounting/fiscality/taxes/media/taxes-list-sequence.png b/accounting/fiscality/taxes/media/taxes-list-sequence.png new file mode 100644 index 000000000..45356104d Binary files /dev/null and b/accounting/fiscality/taxes/media/taxes-list-sequence.png differ diff --git a/accounting/fiscality/taxes/media/taxes-list.png b/accounting/fiscality/taxes/media/taxes-list.png new file mode 100644 index 000000000..e113d23ce Binary files /dev/null and b/accounting/fiscality/taxes/media/taxes-list.png differ diff --git a/accounting/fiscality/taxes/media/taxes-subsequent-line.png b/accounting/fiscality/taxes/media/taxes-subsequent-line.png new file mode 100644 index 000000000..4c01ce93f Binary files /dev/null and b/accounting/fiscality/taxes/media/taxes-subsequent-line.png differ diff --git a/accounting/fiscality/taxes/retention.rst b/accounting/fiscality/taxes/retention.rst index 8025e8de2..3680c5e60 100644 --- a/accounting/fiscality/taxes/retention.rst +++ b/accounting/fiscality/taxes/retention.rst @@ -67,4 +67,4 @@ The printed invoice will show the different amounts in each tax group. .. seealso:: - * :doc:`create` + * :doc:`taxes` diff --git a/accounting/fiscality/taxes/tax_included.rst b/accounting/fiscality/taxes/tax_included.rst deleted file mode 100644 index d0b677cbf..000000000 --- a/accounting/fiscality/taxes/tax_included.rst +++ /dev/null @@ -1,41 +0,0 @@ -======================= -Set tax-included prices -======================= - -In most countries, B2C prices are tax-included. To do that in Odoo, check -*Included in Price* for each of your sales taxes in -:menuselection:`Accounting --> Configuration --> Accounting --> Taxes`. - -.. image:: media/tax_included.png - :align: center - -This way the price set on the product form includes the tax. As an example, -let's say you have a product with a sales tax of 10%. The sales price on -the product form is $100. - -- If the tax is not included in the price, you will get: - - - Price without tax: $100 - - - Taxes: $10 - - - Total to pay: $110 - -- If the tax is included in the price - - - Price without tax: 90.91 - - - Taxes: $9.09 - - - Total to pay: $100 - -You can rely on following documentation if you need both tax-included (B2C) and -tax-excluded prices (B2B): :doc:`B2B_B2C`. - -Show tax-included prices in eCommerce catalog -============================================= - -By default prices displayed in your eCommerce catalog are tax-excluded. To display -it in tax-included, check *Show line subtotals with taxes included (B2C)* in -:menuselection:`Sales --> Configuration --> Settings` (Tax Display). - diff --git a/accounting/fiscality/taxes/taxes.rst b/accounting/fiscality/taxes/taxes.rst new file mode 100644 index 000000000..dbf8661ba --- /dev/null +++ b/accounting/fiscality/taxes/taxes.rst @@ -0,0 +1,282 @@ +===== +Taxes +===== + +There are numerous types of **taxes**, and their application varies greatly, depending mostly on +your company's localization. To make sure they are recorded with accuracy, Odoo's tax engine +supports all kinds of uses and computations. + +.. _taxes/list_activation: + +Activate Sales Taxes from the List view +======================================= + +As part of your :doc:`Fiscal Localization Package +<../../fiscal_localizations/overview/fiscal_localization_packages>`, most of your country's sales +taxes are already preconfigured on your database. However, only a few of them are activated by +default, so that you can activate only the ones relevant for your business. + +To activate Sale Taxes, go to :menuselection:`Accounting --> Configuration --> Taxes` and use the +*Activate* toggle button to activate or deactivate a tax. + +.. image:: media/taxes-list.png + :align: center + :alt: Activate pre-configured taxes in Odoo Accounting + +.. _taxes/configuration: + +Configuration +============= + +To edit or create a **Tax**, go to :menuselection:`Accounting --> Configuration --> Taxes` and open +a tax or click on *Create*. + +.. image:: media/taxes-edit.png + :align: center + :alt: Edition of a tax in Odoo Accounting + +.. _taxes/labels: + +.. important:: + Taxes have three different labels, each one having a specific use. Refer to the following table to + see where they are displayed. + + +------------------+-------------------------+-------------------------+ + | :ref:`Tax Name | :ref:`Label on Invoice | :ref:`Tax Group | + | ` | ` | ` | + +==================+=========================+=========================+ + | Back end | *Taxes* column on | Above the *Total* line | + | | exported invoices | on exported invoices | + +------------------+-------------------------+-------------------------+ + +Basic Options +------------- + +.. _taxes/name: + +Tax Name +~~~~~~~~ + +The **Tax Name** as you want to display it for backend users. This is the :ref:`label +` you see while editing Sales Orders, Invoices, Products, etc. + +.. _taxes/computation: + +Tax Computation +~~~~~~~~~~~~~~~ + +- **Group of Taxes** + + The tax is a combination of multiple sub-taxes. You can add as many taxes you want, in the order + you want them to be applied. + + .. important:: + Make sure that the tax sequence is correct, as the order in which they are may impact the + taxes' amounts computation, especially if one of the taxes :ref:`affects the base of the + subsequent ones `. + +- **Fixed** + + The tax has a fixed amount in the default currency. The amount remains the same, regardless of the + Sales Price. + + For example, a product has a Sales Price of $1000, and we apply a *$10 fixed* tax. We then have: + + +-------------+-------------+----------+----------+ + | Product's | Price | Tax | Total | + | Sales Price | without tax | | | + +=============+=============+==========+==========+ + | 1,000 | 1,000 | 10 | 1,010.00 | + +-------------+-------------+----------+----------+ + +- **Percentage of Price** + + The *Sales Price* is the taxable basis: the tax's amount is computed by multiplying the Sales + Price by the tax's percentage. + + For example, a product has a Sales Price of $1000, and we apply a *10% of Price* tax. We then + have: + + +-------------+-------------+----------+----------+ + | Product's | Price | Tax | Total | + | Sales Price | without tax | | | + +=============+=============+==========+==========+ + | 1,000 | 1,000 | 100 | 1,100.00 | + +-------------+-------------+----------+----------+ + +- **Percentage of Price Tax Included** + + The *Total* is the taxable basis: the tax's amount is a percentage of the Total. + + For example, a product has a Sales Price of $1000, and we apply a *10% of Price Tax Included* tax. + We then have: + + +-------------+-------------+----------+----------+ + | Product's | Price | Tax | Total | + | Sales Price | without tax | | | + +=============+=============+==========+==========+ + | 1,000 | 1,000 | 111.11 | 1,111.11 | + +-------------+-------------+----------+----------+ + +.. _taxes/active: + +Active +~~~~~~ + +Only **Active** taxes can be added to new documents. + +.. important:: + It is not possible to delete taxes that have already been used. Instead, you can deactivate them + to prevent future use. + +.. note:: + This field can be modified from the *List View*. See :ref:`above ` for + more information. + +.. _taxes/scope: + +Tax Scope +~~~~~~~~~ + +The **Tax Scope** determines the tax's application, which also restricts where it is displayed. + +- **Sales**: Customer Invoices, Product's Customer Taxes, etc. +- **Purchase**: Vendor Bills, Product's Vendor Taxes, etc. +- **None** + +.. tip:: + You can use **None** for taxes that you want to include in a :ref:`Group of Taxes + ` but that you don't want to list along with other Sales or Purchase taxes. + +.. _taxes/definition-tab: + +Definition tab +-------------- + +Allocate with precision the amount of the taxable basis or percentages of the computed tax to +multiple accounts and Tax Grids. + +.. image:: media/taxes-definition.png + :align: center + :alt: Allocate tax amounts to the right accounts and tax grids + +- **Based On**: + + - Base: the price on the invoice line + - % of tax: a percentage of the computed tax. + +- **Account**: if defined, an additional Journal Item is recorded. +- **Tax Grids**: used to generate :doc:`Tax Reports <../../reporting/declarations/tax_returns>` + automatically, according to your country's regulations. + +.. _taxes/advanced-tab: + +Advanced Options tab +-------------------- + +.. _taxes/label-invoices: + +Label on Invoices +~~~~~~~~~~~~~~~~~ + +The label of the tax, as displayed on each invoice line in the **Taxes** column. This is the +:ref:`label ` visible to *front end* users, on exported invoices, on their Customer +Portals, etc. + +.. image:: media/taxes-invoice-label.png + :align: center + :alt: The Label on Invoices is displayed on each invoice line + +.. _taxes/tax-group: + +Tax Group +~~~~~~~~~ + +Select to which **Tax Group** the tax belongs. The Tax Group name is the :ref:`label +` displayed above the *Total* line on exported invoices, and the Customer Portals. + +Tax groups include different iterations of the same tax. This can be useful when you must record +differently the same tax according to :doc:`Fiscal Positions `. + +.. image:: media/taxes-invoice-tax-group.png + :align: center + :alt: The Tax Group name is different from the Label on Invoices + +In the example above, we see a 0% tax for Intra-Community customers in Europe. It records amounts on +specific accounts and with specific tax grids. Still, to the customer, it is a 0% tax. That's why +the :ref:`Label on the Invoice ` indicates *0% EU*, and the Tax Group name, +above the *Total* line, indicates *0%*. + +.. _taxes/analytic-cost: + +Include in Analytic Cost +~~~~~~~~~~~~~~~~~~~~~~~~ + +With this option activated, the tax's amount is assigned to the same **Analytic Account** as the +invoice line. + +.. _taxes/included-in-price: + +Included in Price +~~~~~~~~~~~~~~~~~ + +With this option activated, the total (including the tax) equals the **Sales Price**. + +:dfn:`Total = Sales Price = Computed Tax-Excluded price + Tax` + +For example, a product has a Sales Price of $1000, and we apply a *10% of Price* tax, which is +*included in the price*. We then have: + ++-------------+-------------+----------+----------+ +| Product's | Price | Tax | Total | +| Sales Price | without tax | | | ++=============+=============+==========+==========+ +| 1,000 | 900.10 | 90.9 | 1,000.00 | ++-------------+-------------+----------+----------+ + +.. note:: + If you need to define prices accurately, both tax-included and tax-excluded, please refer to the + following documentation: :doc:`B2B_B2C`. + +.. note:: + - **Invoices**: By default, the Line Subtotals displayed on your invoices are *Tax-Excluded*. To + display *Tax-Included* Line Subtotals, go to :menuselection:`Accounting --> Configuration --> + Settings --> Customer Invoices`, and select *Tax-Included* in the **Line Subtotals Tax + Display** field, then click on *Save*. + - **eCommerce**: By default, the prices displayed on your eCommerce website are *Tax-Excluded*. + To display *Tax-Included* prices, go to :menuselection:`Website --> Configuration --> Settings + --> Pricing`, and select *Tax-Included* in the **Product Prices** field, then click on *Save*. + +.. _taxes/base-subsequent: + +Affect Base of Subsequent Taxes +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +With this option, the total tax-included becomes the taxable basis for the other taxes applied to +the same product. + +You can configure a new :ref:`Group of Taxes ` to include this tax, or add it +directly to a product line. + +.. image:: media/taxes-subsequent-line.png + :align: center + :alt: The eco-tax is taken into the basis of the 21% VAT tax + +.. warning:: + The order in which you add the taxes on a product line has no effect on how amounts are computed. + If you add taxes directly on a product line, only the tax sequence determines the order in which + they are applied. + + To reorder the sequence, go to :menuselection:`Accounting --> Configuration --> Taxes`, and drag + and drop the lines with the handles next to the tax names. + + .. image:: media/taxes-list-sequence.png + :align: center + :alt: The taxes' sequence in Odoo determines which tax is applied first + +.. seealso:: + + - :doc:`fiscal_positions` + - :doc:`B2B_B2C` + - :doc:`taxcloud` + - :doc:`../../reporting/declarations/tax_returns` \ No newline at end of file diff --git a/accounting/payables/supplier_bills/ocr.rst b/accounting/payables/supplier_bills/ocr.rst index f10e9a08b..f0e6e9ab6 100644 --- a/accounting/payables/supplier_bills/ocr.rst +++ b/accounting/payables/supplier_bills/ocr.rst @@ -35,4 +35,18 @@ respective tag (available in *Edit* mode), and selecting the right information i :alt: Example of a scanned bill in Odoo Accounting .. note:: - The more bills you scan, the better the system gets at identifying the correct data. \ No newline at end of file + The more bills you scan, the better the system gets at identifying the correct data. + +Pricing +======= + +| The *Bill Digitalization* is an *In-App Purchase (IAP)* service which requires prepaid credits to + work. Digitalizing one document consumes one credit. +| To buy credits, go to :menuselection:`Accounting --> Configuration --> Settings --> Bill + Digitalization` and click on *Buy credits*, or go to :menuselection:`Settings --> Odoo IAP` and + click on *View My Services*. + +.. important:: + - If you are on Odoo Online (SAAS) and have the Enterprise version, you benefit from free trial + credits to test the feature. + - Click `here `_ to know about our *Privacy Policy*. \ No newline at end of file diff --git a/accounting/receivables/customer_payments.rst b/accounting/receivables/customer_payments.rst index 3a42d664f..e2b980d4b 100644 --- a/accounting/receivables/customer_payments.rst +++ b/accounting/receivables/customer_payments.rst @@ -8,5 +8,6 @@ Customer Payments customer_payments/recording customer_payments/online_payment customer_payments/check + customer_payments/batch customer_payments/batch_sdd customer_payments/followup diff --git a/accounting/receivables/customer_payments/batch.rst b/accounting/receivables/customer_payments/batch.rst new file mode 100644 index 000000000..48e5d6598 --- /dev/null +++ b/accounting/receivables/customer_payments/batch.rst @@ -0,0 +1,100 @@ +================================================== +Batch Payments: Batch Deposits (checks, cash etc.) +================================================== + +A **Batch Deposit** groups multiple payments in a single batch. This allows you to deposit several +payments into your bank account with a single transaction. This is particularly useful to deposit +cash and checks. + +This feature allows you to list several customer payments and print a **deposit slip**. This ticket +contains the details of the transactions and a reference to the batch deposit. You can then select +this reference during a bank reconciliation to match the single bank statement line with all the +transactions listed in the batch deposit. + +Configuration +============= + +To activate the feature, go to :menuselection:`Accounting --> Configuration --> Settings --> +Customer Payments`, activate **Batch Payments**, and click on *Save*. + +Payment Method Types +-------------------- + +To record new payments as part of a Batch Deposit, you have to configure first the Journal on which +you record them. + +To do so, go to :menuselection:`Accounting --> Configuration --> Journals`, open the Journal +you want to edit, click on *Edit*, and open the *Advanced Settings* tab. In the *Payment Method +Types* section, enable **Batch Deposit**, and click on *Save*. + +.. image:: media/batch-journal-settings.png + :align: center + :alt: Payment Method Types in a journal's advanced settings + +.. note:: + Your main bank accounts are automatically configured to process batch payments when you activate + the feature. + +Deposit multiple payments in batch +================================== + +Record payments to deposit in batch +----------------------------------- + +:doc:`Register the payments ` on the bank account on which you plan to deposit them by +opening the *Customer Invoice* for which you received a payment, and clicking on *Register Payment*. +There, select the appropriate Journal linked to your bank account and select *Batch Deposit* as +Payment Method. + +.. image:: media/batch-register-payment.png + :align: center + :alt: Registering a customer payment as part of a Batch Deposit in Odoo Accounting + +Do this step for all checks or payments you want to process in batch. + +.. note:: + Make sure to write the payment reference in the **Memo** field. + +Add payments to a Batch Deposit +------------------------------- + +To add the payments to a Batch Deposit, go to :menuselection:`Accounting --> Customers --> Batch +Payments`, and click on *Create*. Next, select the Bank and Payment Method, then click on *Add a +line*. + +.. image:: media/batch-new-inbound.png + :align: center + :alt: Filling out a new Inbound Batch Payment form on Odoo Accounting + +Select all payments to include in the current Batch Deposit and click on *Select*. You can also +record a new payment and add it to the list by clicking on *Create*. + +.. image:: media/batch-payments-selection.png + :align: center + :alt: Selection of all payments to include in the Batch Deposit + +Once done, click on *Validate* to finalize your Batch Deposit. You can then click on *Print* to +download a PDF file to include with the deposit slip that the bank usually requires to fill out. + +Bank Reconciliation +------------------- + +Once the bank statements are on your database, you can reconcile the bank statement line with the +*Batch Payment* reference. To do so, start your **Bank Reconciliation** by going to your Accounting +dashboard and clicking on *Reconcile Items* on the related bank account. At the bank statement line, +click on *Choose counterpart or Create Write-off* to display more options, open the *Batch Payments* +tab, and select your Batch Payment. All related payments are automatically added. + +.. note:: + The *Batch Payments* tab won't appear if a Partner is selected for this bank statement line. + +.. image:: media/batch-bank-reconciliation.png + :align: center + :alt: Reconciliation of the Batch Payment with all its transactions + +If a check, or a payment, couldn't be processed by the bank and is missing, remove the related +payment before validating the bank reconciliation. + +.. seealso:: + - :doc:`recording` + - :doc:`batch_sdd` \ No newline at end of file diff --git a/accounting/receivables/customer_payments/batch_sdd.rst b/accounting/receivables/customer_payments/batch_sdd.rst index b71ba4e56..01b154c5f 100644 --- a/accounting/receivables/customer_payments/batch_sdd.rst +++ b/accounting/receivables/customer_payments/batch_sdd.rst @@ -147,6 +147,7 @@ Finally, upload this file to your online banking interface to process the paymen :menuselection:`Accounting --> Configuration --> Customers --> Batch Payments`. .. seealso:: + * :doc:`batch` * :doc:`../../bank/setup/bank_accounts` * `Odoo Academy: SEPA Direct Debit Mandates (SDD) `_ * `List of all SEPA countries diff --git a/accounting/receivables/customer_payments/media/batch-bank-reconciliation.png b/accounting/receivables/customer_payments/media/batch-bank-reconciliation.png new file mode 100644 index 000000000..f3d306bb2 Binary files /dev/null and b/accounting/receivables/customer_payments/media/batch-bank-reconciliation.png differ diff --git a/accounting/receivables/customer_payments/media/batch-journal-settings.png b/accounting/receivables/customer_payments/media/batch-journal-settings.png new file mode 100644 index 000000000..89545208b Binary files /dev/null and b/accounting/receivables/customer_payments/media/batch-journal-settings.png differ diff --git a/accounting/receivables/customer_payments/media/batch-new-inbound.png b/accounting/receivables/customer_payments/media/batch-new-inbound.png new file mode 100644 index 000000000..fdc213ea1 Binary files /dev/null and b/accounting/receivables/customer_payments/media/batch-new-inbound.png differ diff --git a/accounting/receivables/customer_payments/media/batch-payments-selection.png b/accounting/receivables/customer_payments/media/batch-payments-selection.png new file mode 100644 index 000000000..91732fb80 Binary files /dev/null and b/accounting/receivables/customer_payments/media/batch-payments-selection.png differ diff --git a/accounting/receivables/customer_payments/media/batch-register-payment.png b/accounting/receivables/customer_payments/media/batch-register-payment.png new file mode 100644 index 000000000..f02602ff8 Binary files /dev/null and b/accounting/receivables/customer_payments/media/batch-register-payment.png differ diff --git a/accounting/reporting/declarations/tax_returns.rst b/accounting/reporting/declarations/tax_returns.rst index a3a5822d5..d5ef01c5f 100644 --- a/accounting/reporting/declarations/tax_returns.rst +++ b/accounting/reporting/declarations/tax_returns.rst @@ -120,6 +120,6 @@ with the amount you have to pay or be refunded. above. .. seealso:: - * :doc:`../../fiscality/taxes/create` + * :doc:`../../fiscality/taxes/taxes` * :doc:`../../overview/getting_started/setup` * :doc:`../../fiscal_localizations/overview/fiscal_localization_packages` \ No newline at end of file diff --git a/applications.rst b/applications.rst index cfc573f63..ee581baeb 100644 --- a/applications.rst +++ b/applications.rst @@ -57,6 +57,7 @@ Applications sales purchase accounting + subscriptions project timesheets planning diff --git a/ecommerce/taxes.rst b/ecommerce/taxes.rst index 5efb491d0..ad069f49f 100644 --- a/ecommerce/taxes.rst +++ b/ecommerce/taxes.rst @@ -7,6 +7,6 @@ Collect taxes ../../accounting/fiscality/taxes/default_taxes ../../accounting/fiscality/taxes/fiscal_positions - ../../accounting/fiscality/taxes/tax_included + ../../accounting/fiscality/taxes/taxes ../../accounting/fiscality/taxes/taxcloud diff --git a/events.rst b/events.rst index 1dadfa44b..f5ade015b 100644 --- a/events.rst +++ b/events.rst @@ -7,4 +7,5 @@ Events .. toctree:: :titlesonly: + events/overview events/integrations \ No newline at end of file diff --git a/events/overview.rst b/events/overview.rst new file mode 100644 index 000000000..f0754e7ff --- /dev/null +++ b/events/overview.rst @@ -0,0 +1,11 @@ +======== +Overview +======== + +.. toctree:: + :titlesonly: + + overview/create_event + overview/tickets + overview/track_attendees + overview/track_talks \ No newline at end of file diff --git a/events/overview/create_event.rst b/events/overview/create_event.rst new file mode 100644 index 000000000..0bcd23abb --- /dev/null +++ b/events/overview/create_event.rst @@ -0,0 +1,101 @@ +======================= +Create your First Event +======================= + +Some of the reasons why hosting events is essential are: + +- To create an engaging experience with your audience; +- To generate word of mouth about your company; +- To allow networking; +- To provide an opportunity for sales representatives to walk their prospects through the product + and even their pipeline. + +Get started +=========== + +Under the menu *Events*, have a view of all existing events and some key information, such as the +number of expected and confirmed attendees. + +.. image:: media/events_dashboard.png + :align: center + :alt: Overview of events with the kanban view in Odoo Events + +To start a new one, click on *Create* and fill in the form with all the needed information. Enable +*Website Menu* to have the menus *Introduction*, *Location*, and *Register* being shown on your +event’s website page. + +.. image:: media/website_menu_field.png + :align: center + :alt: View of an event's form emphasizing the option website menu in Odoo Events + +To personalize these pages, click on *Edit* to open the +`website builder `_, and edit +content by dragging and dropping blocks. + +.. image:: media/website_edit.png + :align: center + :alt: View of an event's website page emphasizing the edit button for Odoo Events + +Tab: Tickets +------------ + +| Go to :menuselection:`Events --> Configuration --> Settings` and enable + :doc:`Tickets and Online Ticketing `. +| Now, under the *Tickets* Tab, add lines to include the different ticket types you offer. Include + the price, the start and end dates for registrations, and even the maximum number of tickets that + can be sold. +| The *Reserved Seats* and *Unconfirmed Seat Reservations* are counted as attendees are marked as + :doc:`confirmed ` or not. + +.. image:: media/tickets_tab.png + :align: center + :alt: View of an event form emphasizing the tab tickets in Odoo Events + +Tab: Communication +------------------ + +| Choose the email and/or SMS message template, as well as the frequency with which you would like + to communicate with your attendees under the tab *Communication*. +| Create a template on the fly or choose an existing one. Define the *Interval* (2, 7, 15..) for the + *Unit* (days, hours, weeks, etc.), and the *Trigger* action (after registration, after the event, + etc.). + +.. image:: media/communication_tab.png + :align: center + :alt: View of an event form and the tab communication in Odoo Events + +Tab: Questions +-------------- + +| Go to :menuselection:`Configuration --> Settings` and enable *Questions*. +| Now, under the tab *Questions*, edit your questions and answers, choosing if you would like your + questionnaire to be asked per order or per registration. +| Example of a registration for 3 attendees: if enabling the option *Ask each attendee*, + the questionnaire is shown 3 times, meaning that answers can vary for each attendee; if *Ask each + attendee* is not enabled, the questionnaire is shown once, resulting in a global answer. + +.. image:: media/questions_tab.png + :align: center + :alt: View of an event form and a question’s window opened in Odoo Events + +Once your event is *Confirmed*, you can manage attendees badges, and mark the event as +*Finished*. Events marked as *Finished* can be *Set to draft*, putting the event back to an +*Unconfirmed* stage from which it can be edited and used again. + +.. image:: media/set_to_draft.png + :align: center + :alt: View of an event’s form emphasizing the option set to draft in Odoo Events + +Publish your event +------------------ + +*Go to Website* and turn *Published* on. + +.. image:: media/publish_event.png + :align: center + :alt: View of a website page and the option to publish the event in Odoo Events + +.. seealso:: + - :doc:`track_attendees` + - :doc:`tickets` + - :doc:`track_talks` \ No newline at end of file diff --git a/events/overview/media/attendees.png b/events/overview/media/attendees.png new file mode 100644 index 000000000..539bf2d36 Binary files /dev/null and b/events/overview/media/attendees.png differ diff --git a/events/overview/media/attendees_registration.png b/events/overview/media/attendees_registration.png new file mode 100644 index 000000000..ade75f005 Binary files /dev/null and b/events/overview/media/attendees_registration.png differ diff --git a/events/overview/media/communication_tab.png b/events/overview/media/communication_tab.png new file mode 100644 index 000000000..f2dec8b2f Binary files /dev/null and b/events/overview/media/communication_tab.png differ diff --git a/events/overview/media/emails_and_cancel_registration.png b/events/overview/media/emails_and_cancel_registration.png new file mode 100644 index 000000000..925020e0f Binary files /dev/null and b/events/overview/media/emails_and_cancel_registration.png differ diff --git a/events/overview/media/event_sales.png b/events/overview/media/event_sales.png new file mode 100644 index 000000000..9b1fb7182 Binary files /dev/null and b/events/overview/media/event_sales.png differ diff --git a/events/overview/media/events_dashboard.png b/events/overview/media/events_dashboard.png new file mode 100644 index 000000000..e7792a47e Binary files /dev/null and b/events/overview/media/events_dashboard.png differ diff --git a/events/overview/media/filters.png b/events/overview/media/filters.png new file mode 100644 index 000000000..f80afe077 Binary files /dev/null and b/events/overview/media/filters.png differ diff --git a/events/overview/media/proposals_list.png b/events/overview/media/proposals_list.png new file mode 100644 index 000000000..7f45cea38 Binary files /dev/null and b/events/overview/media/proposals_list.png differ diff --git a/events/overview/media/publish_event.png b/events/overview/media/publish_event.png new file mode 100644 index 000000000..b6b35b2e7 Binary files /dev/null and b/events/overview/media/publish_event.png differ diff --git a/events/overview/media/publish_speakers.png b/events/overview/media/publish_speakers.png new file mode 100644 index 000000000..28eccbee1 Binary files /dev/null and b/events/overview/media/publish_speakers.png differ diff --git a/events/overview/media/questions_tab.png b/events/overview/media/questions_tab.png new file mode 100644 index 000000000..de2c3be36 Binary files /dev/null and b/events/overview/media/questions_tab.png differ diff --git a/events/overview/media/registration_tickets_online.png b/events/overview/media/registration_tickets_online.png new file mode 100644 index 000000000..f671b8866 Binary files /dev/null and b/events/overview/media/registration_tickets_online.png differ diff --git a/events/overview/media/set_to_draft.png b/events/overview/media/set_to_draft.png new file mode 100644 index 000000000..6d29db7f7 Binary files /dev/null and b/events/overview/media/set_to_draft.png differ diff --git a/events/overview/media/ticket_sales_order.png b/events/overview/media/ticket_sales_order.png new file mode 100644 index 000000000..b3f03a22d Binary files /dev/null and b/events/overview/media/ticket_sales_order.png differ diff --git a/events/overview/media/tickets_product.png b/events/overview/media/tickets_product.png new file mode 100644 index 000000000..a2cb1f40a Binary files /dev/null and b/events/overview/media/tickets_product.png differ diff --git a/events/overview/media/tickets_tab.png b/events/overview/media/tickets_tab.png new file mode 100644 index 000000000..0c6589988 Binary files /dev/null and b/events/overview/media/tickets_tab.png differ diff --git a/events/overview/media/track_proposals_website.png b/events/overview/media/track_proposals_website.png new file mode 100644 index 000000000..9bf7f45e6 Binary files /dev/null and b/events/overview/media/track_proposals_website.png differ diff --git a/events/overview/media/website_edit.png b/events/overview/media/website_edit.png new file mode 100644 index 000000000..88d3c1347 Binary files /dev/null and b/events/overview/media/website_edit.png differ diff --git a/events/overview/media/website_menu_field.png b/events/overview/media/website_menu_field.png new file mode 100644 index 000000000..8820d370f Binary files /dev/null and b/events/overview/media/website_menu_field.png differ diff --git a/events/overview/media/website_menus.png b/events/overview/media/website_menus.png new file mode 100644 index 000000000..f8da5dfd1 Binary files /dev/null and b/events/overview/media/website_menus.png differ diff --git a/events/overview/media/website_ticket_transaction.png b/events/overview/media/website_ticket_transaction.png new file mode 100644 index 000000000..109efd624 Binary files /dev/null and b/events/overview/media/website_ticket_transaction.png differ diff --git a/events/overview/tickets.rst b/events/overview/tickets.rst new file mode 100644 index 000000000..99b695f8d --- /dev/null +++ b/events/overview/tickets.rst @@ -0,0 +1,53 @@ +=============== +Selling Tickets +=============== + +If you automate processes, you save time. If you give attendees multiple payment options to choose +from, you allow flexibility and open margins for more registrations to happen. + +Configuration +============= + +| Go to :menuselection:`Configuration --> Settings` and activate *Tickets* and *Online Ticketing*. +| *Tickets* allow tickets to be sold :ref:`events/create_event/through_sales_orders`. *Online + Ticketing* allows the sale of tickets to happen :ref:`events/create_event/through_the_website`. + +.. image:: media/registration_tickets_online.png + :align: center + :alt: View of the settings page for Odoo Events + +.. _events/create_event/through_sales_orders: + +Through Sales Orders +-------------------- + +On the *Sales* application, choose the event product you created and add it as a product line. A +window pops-up, allowing you to choose the event for which you want to create the sales order. + +.. image:: media/ticket_sales_order.png + :align: center + :alt: View of a sales order and the option to choose the event as the product line in Odoo Events + +.. important:: + Remember to create a product form for the event registration, under *Product*, in the *Sales* + application, and to add that same product under your event’s form. + + .. image:: media/tickets_product.png + :align: center + :alt: View of an event form highlighting the column product under the tab tickets in Odoo + Events + +.. _events/create_event/through_the_website: + +Through the Website +------------------- + +On the website, once tickets are added to the cart, the user can continue the transaction choosing +among the payment methods you chose to have available. + +.. image:: media/website_ticket_transaction.png + :align: center + :alt: View of website transaction for Odoo Events + +.. seealso:: + - :doc:`../../general/payment_acquirers/payment_acquirers` \ No newline at end of file diff --git a/events/overview/track_attendees.rst b/events/overview/track_attendees.rst new file mode 100644 index 000000000..4fff8b3b2 --- /dev/null +++ b/events/overview/track_attendees.rst @@ -0,0 +1,46 @@ +==================== +Track your Attendees +==================== + +Attendees are at the heart of your event. Keeping track of their number and managing their +registration and attendance is necessary for planning and analyzing reasons. + +Attendees list and attendance +============================= + +| Once attendees have registered or bought their tickets, they are added to the *Attendees* list. +| Tickets sold through sales orders validate attendees as soon as the quotation is confirmed. + +.. image:: media/attendees.png + :align: center + :alt: Overview of events with the kanban view in Odoo Events + +The check mark button is used to confirm the registration. Once a registration is confirmed, +attendance can be marked. + +.. image:: media/attendees_registration.png + :align: center + :alt: Overview of events with the kanban view in Odoo Events + +Bagdes and cancellations +------------------------ + +On the attendees form, choose to send badges manually by clicking on *Send By Email*. *Cancel +Registration* to have that attendee being moved to the *Cancelled* stage. + +.. image:: media/emails_and_cancel_registration.png + :align: center + :alt: View of an attendee form emphasizing the send by email and cancel registration in Odoo + Events + +To see a list of your canceled attendees, under *Filters*, add a *Custom Filter* choosing *Status +> is > Cancelled*. + +.. image:: media/filters.png + :align: center + :alt: View of a list of the canceled attendees using the filters in Odoo Events + +.. seealso:: + - :doc:`../integrations/integration_sms` + - :doc:`tickets` + - :doc:`track_talks` \ No newline at end of file diff --git a/events/overview/track_talks.rst b/events/overview/track_talks.rst new file mode 100644 index 000000000..9131af6f1 --- /dev/null +++ b/events/overview/track_talks.rst @@ -0,0 +1,49 @@ +====================== +Track and Manage Talks +====================== + +Allow partners to submit talk proposals so they can share their knowledge and expertise. Good +speakers and talks are what make your event great. + +Configuration +============= + +| Go to :menuselection:`Events --> Configuration --> Settings` and enable *Schedule & Tracks*. +| Now, in your event's form, once *Website menu* is enabled, the options *Tracks on Website* and + *Track Proposals on Website* become available. Enabling them adds the menus *Talks*, + *Talk Proposals*, and *Agenda* to your website. + +.. image:: media/track_proposals_website.png + :align: center + :alt: View of an event form and the options to track and propose speaker in Odoo Events + +Besides having the ability to suggest their own talks, the website now allows users to see a list of +the whole agenda and scheduled talks. + +.. image:: media/website_menus.png + :align: center + :alt: View of the published website and the menus talks, talk proposal and agenda in Odoo Events + +.. tip:: + To handle tracks internally and not have the menus *Talks*, *Talk Proposals*, and *Agenda* + online, use the menu *Tracks* individually. + +Publishing speaker proposals +---------------------------- + +Once partners have filled in the appropriate form and submitted their proposals, a new *Proposal* is +instantly created under the menu *Track*. + +.. image:: media/proposals_list.png + :align: center + :alt: View of the talks’ proposals page emphasizing the column proposal in Odoo Events + +If the proposal is accepted and can go online, simply open its form and click on *Go to Website*. +From the website page, turn *Published* on. + +.. image:: media/publish_speakers.png + :align: center + :alt: View of the website page to publish a proposed talk for Odoo Events + +.. seealso:: + - :doc:`../integrations/integration_sms` \ No newline at end of file diff --git a/expense/expense.rst b/expense/expense.rst index 455bafc9a..861e58ca5 100644 --- a/expense/expense.rst +++ b/expense/expense.rst @@ -33,7 +33,7 @@ Here are some examples to configure: Don't forget to set an expense tax on each expense type (and an account if you use Odoo Accounting). It's usually a good practice to use a tax that is configured -with *Tax Included in Price* (see: :doc:`../accounting/fiscality/taxes/tax_included`). +with :ref:`Tax Included in Price `. That way, employees report expenses with prices including taxes, which is usually the expected behaviour. diff --git a/general/payment_acquirers/authorize.rst b/general/payment_acquirers/authorize.rst index 302caf07c..01e0af92b 100644 --- a/general/payment_acquirers/authorize.rst +++ b/general/payment_acquirers/authorize.rst @@ -81,7 +81,7 @@ Settings --> Transaction Response Settings --> Response/Receipt URLs`, and set t - | Default Receipt URL: | *https://[yourcompany.odoo.com]*/**payment/authorize/return** - | Default Relay Response URL: - | *https://[yourcompany.odoo.com]*/**payment/authorize/return** + | *https://[yourcompany.odoo.com]*/**shop/confirmation** .. note:: | Failing to complete this step results in the following error: diff --git a/iot/config/connect.rst b/iot/config/connect.rst index b745c3ef7..61bae981f 100644 --- a/iot/config/connect.rst +++ b/iot/config/connect.rst @@ -25,10 +25,16 @@ Ethernet Connection 2. Power on the IoT Box. -3. Then click on the Scan button. +3. Read the Pairing Code from a screen or a receipt printer connected to the IoT Box. -.. image:: media/connect04.png - :align: center + .. image:: media/connect04.png + +4. Input the Pairing Code and click on the Pair button. + +.. note:: + Recent changes in modern web browsers forced us to modify the connection wizard. + If your screen is different from the screenshots, make sure that the + ``iot_pairing`` module is installed. WiFi Connection ~~~~~~~~~~~~~~~ @@ -37,35 +43,31 @@ WiFi Connection 2. Copy the token -.. image:: media/connect05.png - :align: center + .. image:: media/connect05.png -1. Connect to the IoT Box WiFi Network (make sure there is no ethernet +3. Connect to the IoT Box WiFi Network (make sure there is no ethernet cable plugged in your computer). -.. image:: media/connect06.png - :align: center + .. image:: media/connect06.png 4. You will be redirected to the IoT Box Homepage (if it doesn't work, connect to the IP address of the box). Give a name to your IoT Box (not required) and paste the token, then click on next. -.. image:: media/connect07.png - :align: center + .. image:: media/connect07.png -.. tip:: - If you are on Runbot, do not forget to add the -all or -base in the - token (e.g. this token - **http://375228-saas-11-5-iot-f3f920.runbot16.odoo.com\|4957098401** - should become - **http://375228-saas-11-5-iot-f3f920-all.runbot16.odoo.com\|4957098401**). + .. tip:: + If you are on Runbot, do not forget to add the -all or -base in the + token (e.g. this token + **http://375228-saas-11-5-iot-f3f920.runbot16.odoo.com\|4957098401** + should become + **http://375228-saas-11-5-iot-f3f920-all.runbot16.odoo.com\|4957098401**). 5. Choose the WiFi network you want to connect with (enter the password if there is one) and click on Submit. Wait a few seconds before being redirected to your database. -.. image:: media/connect08.png - :align: center + .. image:: media/connect08.png You should now see the IoT Box. diff --git a/iot/config/media/connect03.png b/iot/config/media/connect03.png index d45e48327..27b0ea912 100644 Binary files a/iot/config/media/connect03.png and b/iot/config/media/connect03.png differ diff --git a/iot/config/media/connect04.png b/iot/config/media/connect04.png index 972ae9a24..18a37f300 100644 Binary files a/iot/config/media/connect04.png and b/iot/config/media/connect04.png differ diff --git a/odoo_sh/advanced/submodules.rst b/odoo_sh/advanced/submodules.rst index 8dbc57d52..86f59948a 100644 --- a/odoo_sh/advanced/submodules.rst +++ b/odoo_sh/advanced/submodules.rst @@ -102,7 +102,7 @@ You can read the `git-scm.com documentation `_. +`Pulling in Upstream changes `_. Ignore modules ============== diff --git a/odoo_sh/getting_started/branches.rst b/odoo_sh/getting_started/branches.rst index d1fb356e5..56da7ee3d 100644 --- a/odoo_sh/getting_started/branches.rst +++ b/odoo_sh/getting_started/branches.rst @@ -19,7 +19,7 @@ Stages Odoo.sh offers three different stages for your branches: production, staging and development. -You can change the stage of a branch by drag and dropping it on the stage section title. +You can change the stage of a branch by drag and dropping it into the stage section title. .. image:: ./media/interface-branches-stagechange.png :align: center @@ -107,7 +107,7 @@ After that, they can be automatically garbage collected to make room for new dat Merging your branches --------------------- -You can merge your branches easily by drag and dropping them on each other. +You can merge your branches easily by drag and dropping them into each other. .. image:: ./media/interface-branches-merge.png :align: center diff --git a/planning/overview/duplicate_a_planning.rst b/planning/overview/duplicate_a_planning.rst index d672e2c7b..16375f678 100644 --- a/planning/overview/duplicate_a_planning.rst +++ b/planning/overview/duplicate_a_planning.rst @@ -1,11 +1,13 @@ -============================================ +========================================== 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. Organize your team by roles -============================ +=========================== + Go to :menuselection:`Configuration --> Roles --> Create`. Optionally, go to the *Employees* application, select the respective employee, and under *Work Information* select the *Default Planning Role*. @@ -15,7 +17,8 @@ Information* select the *Default Planning Role*. :alt: Roles in Odoo Planning Application Make shifts recurrent -====================== +===================== + While creating a shift, select *Repeat* and configure as needed, saving you from the need of re-planning it. @@ -23,32 +26,34 @@ of re-planning it. :align: center :alt: Repeat shifts in Odoo Planning Application - .. note:: - Repeated shifts are generated for the next six months. A modification is possible in developer - mode, from *Settings*. + Repeated shifts are generated for the next six months. A modification is possible in + :doc:`Developer mode <../../general/developer_mode/activate>`, from *Settings*. + + .. image:: media/rate_shift_generation.png + :align: center + :alt: Repeat shifts in Odoo Planning Application .. tip:: To duplicate a shift in the Gantt view, press CTRL + drag and drop. - Save shifts as templates -========================= -If creating a shift on the fly and knowing that you will use that template in the future, -click on *Save as a Template*. +======================== + +If creating a shift on the fly and know you might use that template in the future, click on *Save as +a Template*. .. image:: media/cs3.png :align: center :alt: Save shift as a Template in Odoo Planning Application - .. tip:: To create a template in advance, go to :menuselection:`Configuration --> Shifts Templates --> Create`. - Duplicate a planning from the previous week -============================================ +=========================================== + When in the Gantt view, either under *Schedule by Employee, Role or Project*, instead of re-planning shifts that have been planned before, simply click on *Copy Previous Week*. @@ -56,7 +61,6 @@ shifts that have been planned before, simply click on *Copy Previous Week*. :align: center :alt: Shift recurrency in Odoo Planning Application - .. note:: The integration with the *Time off* and *Employee* applications, show you grayed cells to the - days when the employee does not work and is on vacation time, for example. + days when the employee does not work and is on vacation time, for example. \ No newline at end of file diff --git a/planning/overview/media/rate_shift_generation.png b/planning/overview/media/rate_shift_generation.png new file mode 100644 index 000000000..6d2205eb7 Binary files /dev/null and b/planning/overview/media/rate_shift_generation.png differ diff --git a/planning/overview/send_planned_shifts.rst b/planning/overview/send_planned_shifts.rst index eb1c71c34..009c9d55c 100644 --- a/planning/overview/send_planned_shifts.rst +++ b/planning/overview/send_planned_shifts.rst @@ -1,12 +1,14 @@ -============================================================ +=========================================================== 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 gives them flexibility. Publish and send the planned week by email -=========================================== +========================================== + Once you have your shifts planned, click on *Send Schedule*. Select *Include Open shift* if you would like the *Unassigned* shifts to be seen. @@ -15,18 +17,17 @@ you would like the *Unassigned* shifts to be seen. :alt: Publish and Send planned shifts in Odoo Planning Application Choose if you just want to *Publish* or *Publish and Send*. If you *Publish and Send*, employees -will get an email that will redirect them to their planned tasks: +get an email that redirects them to their planned tasks: .. image:: media/sp2.png :alt: Publish and Send planned shifts in Odoo Planning Application - .. note:: Employees will not be able to see shifts until they have been published. - Let employees unassign themselves from shifts -=============================================== +============================================= + Go to *Configuration* and enable *Allow Unassignment*. From now on, when an employee opens his tasks, he can indicate his unavailability clicking on *I am unavailable*. The shift will be opened again, allowing someone else to take it. @@ -35,11 +36,9 @@ on *I am unavailable*. The shift will be opened again, allowing someone else to :align: center :alt: Allow Unassignment in Odoo Planning Application - .. image:: media/sp4.png :align: center :alt: Allow Unassignment in Odoo Planning Application - .. tip:: Employees have portal access; users have access to the database. diff --git a/redirects.txt b/redirects.txt index dde89ecae..6a75fc7d2 100644 --- a/redirects.txt +++ b/redirects.txt @@ -38,6 +38,7 @@ sales/sale_amazon.rst sales/amazon_connector.rst # sale_amazon -> sales/sale_amazon/apply.rst sales/amazon_connector/apply.rst # sale_amazon/* -> amazon_connector/* (#524) sales/sale_amazon/setup.rst sales/amazon_connector/setup.rst # sale_amazon/* -> amazon_connector/* (#524) sales/sale_amazon/manage.rst sales/amazon_connector/manage.rst # sale_amazon/* -> amazon_connector/* (#524) +sales/amazon_connector/apply.rst sales/amazon_connector/update.rst # (#728) 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) @@ -85,6 +86,9 @@ accounting/payables/supplier_bills/bills_or_receipts.rst accounting/payables/sup accounting/bank/reconciliation/configure.rst accounting/bank/reconciliation/reconciliation_models.rst # configure -> reconciliation_models (#613) accounting/receivables/customer_payments/credit_cards.rst accounting/receivables/customer_payments/online_payment.rst # credit_cards -> online_payment accounting/fiscality/taxes/application.rst accounting/fiscality/taxes/fiscal_positions.rst # application -> fiscal_positions +accounting/fiscality/taxes/create.rst accounting/fiscality/taxes/taxes.rst # create -> taxes +accounting/fiscality/taxes/tax_included.rst accounting/fiscality/taxes/taxes.rst # tax_included -> taxes +accounting/bank/misc/batch.rst accounting/receivables/customer_payments/batch.rst # bank/misc/* -> receivables/customer_payments/* social_marketing/social_marketing.rst social_marketing/overview.rst # social_marketing/* -> overview/* (#578) @@ -153,7 +157,7 @@ helpdesk/close_tickets.rst helpdesk/advanced/close_tickets.rst 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 : +# Redirections introduced in 13.3 : 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/sales/amazon_connector.rst b/sales/amazon_connector.rst index 0307176db..b21207325 100644 --- a/sales/amazon_connector.rst +++ b/sales/amazon_connector.rst @@ -5,6 +5,7 @@ Amazon Connector .. toctree:: :titlesonly: - amazon_connector/apply + amazon_connector/features amazon_connector/setup - amazon_connector/manage \ No newline at end of file + amazon_connector/manage + amazon_connector/update \ No newline at end of file diff --git a/sales/amazon_connector/apply.rst b/sales/amazon_connector/apply.rst deleted file mode 100644 index 9bd299c37..000000000 --- a/sales/amazon_connector/apply.rst +++ /dev/null @@ -1,10 +0,0 @@ -================================ -Apply for Amazon MWS Access Keys -================================ - -.. _amazon/developer-form: - -.. warning:: - | The authentication mechanism that previously used MWS keys is no longer authorized by Amazon - and will soon be replaced by another flow. - | This page will be updated accordingly in the coming weeks. diff --git a/sales/amazon_connector/features.rst b/sales/amazon_connector/features.rst new file mode 100644 index 000000000..5fb5d0968 --- /dev/null +++ b/sales/amazon_connector/features.rst @@ -0,0 +1,51 @@ +==================================== +Amazon Connector: supported features +==================================== + +The **Amazon Connector** synchronizes the orders between Amazon and your Odoo database, which +reduces considerably the amount of time spent on your Amazon Seller Central dashboard, making your +daily routine a lot easier. + +The connector is able to: + +- Synchronize (Amazon to Odoo) all confirmed orders (both FBA and FBM) and their order items which + include: + + - the product’s name, description and quantity + - the shipping costs for the product + - the gift wrapping charges + +- Create on Odoo any missing partner related to an order (contact types supported: contact and + delivery). +- Notify Amazon of a shipping confirmed on Odoo (FBM) in order to get paid. + +- Support multiple seller accounts. +- Support multiple marketplaces per seller account. + ++----------------------+----------------------------+-------------------------------------+ +| | Fulfilled By Amazon (FBA) | Fulfilled By Merchant (FBM) | ++======================+============================+=====================================+ +| **Orders** | Synchronize shipped and | Synchronize unshipped and canceled | +| | canceled orders | orders | ++----------------------+----------------------------+-------------------------------------+ +| **Shipping** | - Charges | - Charges | +| | | - Delivery created | ++----------------------+----------------------------+-------------------------------------+ +| **Gift Wrapping** | Handled by Amazon | - Gift wrapping charges | +| | | - Gift message | ++----------------------+----------------------------+-------------------------------------+ +| **Stock Management** | One stock move created | Handled by the delivery | +| | per sales order item | | ++----------------------+----------------------------+-------------------------------------+ +| **Confirmation** | Handled by Amazon | Notify Amazon when confirming | +| | | delivery | ++----------------------+----------------------------+-------------------------------------+ + +.. note:: + The connector is designed to synchronize orders' data as detailed above. Other actions, such as + downloading monthly fees report, handling disputes, or issuing refunds must be managed from + Amazon Seller Central, as usual. + +.. seealso:: + - :doc:`setup` + - :doc:`manage` diff --git a/sales/amazon_connector/manage.rst b/sales/amazon_connector/manage.rst index 2815892ac..02c2aa513 100644 --- a/sales/amazon_connector/manage.rst +++ b/sales/amazon_connector/manage.rst @@ -12,12 +12,6 @@ and **Canceled** orders are fetched. For **FBM** (Fulfilled by Merchant), the sa **Unshipped** and **Canceled** orders. For each synchronized order, a sales order and a customer are created in Odoo if they are not yet registered. -.. note:: - If you did not request access to Personally Identifiable Information of your customers in the - :ref:`Developer Registration and Assessment form `, the customers are - created anonymously (the name, postal address and phone number are omitted) and named - **Amazon Customer**. - When an order is canceled in Amazon and was already synchronized in Odoo, the corresponding sales order is automatically canceled in Odoo. @@ -31,8 +25,7 @@ order is automatically canceled in Odoo. .. tip:: To synchronize immediately the orders of your Amazon account switch to :doc:`Developer mode <../../general/developer_mode/activate>`, head to your Amazon account and - click on **SYNC ORDERS**. The same can be done with order cancellations and pickings by clicking - on **SYNC CANCELLATIONS** and **SYNC PICKINGS**. + click on **SYNC ORDERS**. The same can be done with pickings by clicking on **SYNC PICKINGS**. Manage deliveries in FBM ======================== @@ -98,4 +91,8 @@ reporting for the sales of this account. remove the marketplace you wish to track separately from the list of synchronized marketplaces. Then, create another registration for this account and remove all marketplaces, except the one to isolate from the others. Finally, assign another sales team to one of the two registrations of - your account. \ No newline at end of file + your account. + +.. seealso:: + - :doc:`features` + - :doc:`setup` diff --git a/sales/amazon_connector/media/auth_module.png b/sales/amazon_connector/media/auth_module.png new file mode 100644 index 000000000..91b73341a Binary files /dev/null and b/sales/amazon_connector/media/auth_module.png differ diff --git a/sales/amazon_connector/media/dev_form.png b/sales/amazon_connector/media/dev_form.png deleted file mode 100644 index 53a336bd5..000000000 Binary files a/sales/amazon_connector/media/dev_form.png and /dev/null differ diff --git a/sales/amazon_connector/media/seller_central_apps.png b/sales/amazon_connector/media/seller_central_apps.png new file mode 100644 index 000000000..58ba81092 Binary files /dev/null and b/sales/amazon_connector/media/seller_central_apps.png differ diff --git a/sales/amazon_connector/media/seller_central_form.png b/sales/amazon_connector/media/seller_central_form.png new file mode 100644 index 000000000..77b1a65ef Binary files /dev/null and b/sales/amazon_connector/media/seller_central_form.png differ diff --git a/sales/amazon_connector/setup.rst b/sales/amazon_connector/setup.rst index 1e7e9447b..3e1e3b52a 100644 --- a/sales/amazon_connector/setup.rst +++ b/sales/amazon_connector/setup.rst @@ -2,16 +2,67 @@ Configure Amazon Connector in Odoo ================================== +Generate an Authorization Token in Seller Central +================================================= + +.. _amazon/generate_auth_token: + +The Amazon Connector uses an Authorization Token that allows Odoo to fetch data from your Amazon +Seller Central account. This token can be obtained directly through Seller Central in a few clicks +and needs to be set up in your Odoo database configuration. + +Connect to your Seller Central account for the marketplace you initially signed +up (e.g. if you created your account on Amazon Germany, go to `Amazon Seller +Central for Germany `_) with an administrator account. + +.. note:: + You might need to use the *main* (or first) administrator account and not one + added subsequently. + +In the main menu, select :menuselection:`Apps & Services --> Manage Your Apps`; +in the page that displays, click on the ``Authorize new developper`` button: + +.. image:: ./media/seller_central_apps.png + :align: center + +Fill in the form depending on your Marketplace: + +.. image:: ./media/seller_central_form.png + :align: center + +If your seller account is registered in the **North America** region, use these values: + +- Developer's Name: ``Odoo S.A.`` +- Developer ID: ``586127723692`` + +For the **Europe** region, use these values: + +- Developer's Name: ``Odoo S.A.`` +- Developer ID: ``579095187166`` + +Amazon will then inform you that by submitting the form, you are giving access +to your Seller Central Information to Odoo S.A. + +.. note:: + Odoo S.A. is unable to access your Amazon account's information without the + Authorization Token which is stored in your Odoo database - we do not store + these tokens on our platform directly and are therefore unable to access + your account's information outside of the Amazon Connector normal flows. + Register your Amazon account in Odoo ==================================== +.. _amazon/setup: + To register your seller account in Odoo, navigate to :menuselection:`Sales --> Configuration --> Settings --> Connectors --> Amazon Sync --> Amazon Accounts` and click on **CREATE**. The **Seller ID** can be found in Seller Central under the link **Your Merchant Token** on the -**Seller Account Information** page. The **Access Key** and the **Secret Key** can be found in -Developer Central (where the :ref:`Developer Registration and Assessment form -` was located). +**Seller Account Information** page. The **Authorization Token** is the one you generated in the +:ref:`previous step `. + +Upon saving, your credentials are checked. In case of issues, an error will be displayed - the +information cannot be saved until your credentials are recognized by Amazon. Once the account is registered, the marketplaces available to this account are synchronized and listed under the **Marketplaces** tab. If you wish, you can remove some items from the list of @@ -62,4 +113,50 @@ the subtotals between Seller Central and Odoo. .. note:: As Amazon does not necessarily apply the same taxes as those configured in Odoo, it may happen that order totals differ by a few cents from that on Seller Central. Those differences can be - resolved with a write-off when reconciling the payments in Odoo. \ No newline at end of file + resolved with a write-off when reconciling the payments in Odoo. + +Add an unsupported marketplace to the Amazon Connector +====================================================== + +Some Amazon Marketplaces, such as Amazon Brazil or Amazon Netherlands, are +not included by default in the Amazon Connector list of possible marketplaces. + +These marketplaces can be added manually should you wish to use them. + +.. important:: + These marketplaces are not officially supported by Odoo - there is no guarantee + that adding a new marketplace as described here will work, nor can this be considered + as a bug when contacting Odoo Support. + +.. note:: + Amazon marketplaces are only supported in the European and North American region; + though Amazon includes Brazil with the North American region and India in the + European region, so your mileage may vary; check the `Amazon Documentation + `_ + to know to which region your marketplace belongs. + +To add a new marketplace, you must first enable +:doc:`Developer mode <../../general/developer_mode/activate>`. + +Once that is done, go to :menuselection:`Sales --> Configuration --> Settings --> Connectors --> Amazon Sync --> +Amazon Marketplaces`. + +From there, you can create a new marketplace record. You will need the Marketplace ID and Endpoint for your +marketplace as described in the +`Amazon Documentation `_. + +Set the name of the record to ``Amazon.`` to easily retrieve it. The **Code**, **Domain** and +**API Identifier** fields should contain the *Country Code*, *Amazon MWS Endpoint* and *MarkteplaceId* +values from the Amazon Documentation respectively. + +Once the marketplace is saved, you should then update the Amazon Account configuration by going to +:menuselection:`Sales --> Configuration --> Settings --> Connectors --> Amazon Sync --> Amazon Accounts`, +open the account on which you wish to use the new marketplace, go to the **Marketplaces** tab and click +on **Update available marketplaces** (an animation should confirm the success of the operation). You can then +edit the Amazon Account to add the new marketplace in the list of synchronized marketplaces - if the new +marketplace is not available in the list, it means it is either incompatible with the account's region or +simply that it is not supported by the Amazon Connector. + +.. seealso:: + - :doc:`features` + - :doc:`manage` diff --git a/sales/amazon_connector/update.rst b/sales/amazon_connector/update.rst new file mode 100644 index 000000000..af31aa576 --- /dev/null +++ b/sales/amazon_connector/update.rst @@ -0,0 +1,75 @@ +================================================== +Install the Amazon Connector Authentication Update +================================================== + +Starting July 2020, the Amazon Connector requires the use of a new authentication +method that makes it easier for you to set up the Connector. + +Prior to the update, Odoo customers who wished to use the Amazon Connector had +to apply to get developer credentials through Amazon, which was a painful and long +process that could take weeks. This method of authentication is still technically +possible, but Amazon will refuse to provide developer credentials for Odoo customers +from July 2020 onwards and will deactivate such credentials for existing customers. + +This documentation will help you install the update and use the new authentication +flow. + +Note that if your Odoo database was first created after the update was released, the +update module is installed automatically. You can check if this module is already installed +by going to the **Apps** menu, removing the ``Apps`` search facet and search for ``amazon``. +If the module **Amazon/Authentication Patch** is present and marked as installed, your Odoo +database is already up-to-date and you can proceed with the :doc:`setup ` step +of the Amazon Connector. + +Update Odoo to the latest release +================================= + +The new authentication mechanism is made available through a new Odoo module; to +be able to install it, you must make sure that your Odoo source code is up-to-date. + +If you use Odoo on Odoo.com or Odoo.sh platform, your code is already up-to-date and +you can proceed to the next step. + +If you use Odoo with an on-premise setup or through a partner, then you must update +your installation as detailed in +`this documentation page `_ +or by contacting your integrating partner. + +Update the list of available modules +==================================== + +New modules must be *discovered* by your Odoo instance to be available in the **Apps** +menu. + +To do so, activate the :doc:`Developer Mode <../../../general/developer_mode/activate>`, and go to +:menuselection:`Apps --> Update Apps List`. A wizard will ask for confirmation. + +Install the Amazon/Authentication Patch +======================================= + +.. warning:: + You should never install new modules in your production database without testing + them in a duplicate or staging environment. For Odoo.com customers, a duplicate database + can be created from the database management page as explained in + :doc:`this documentation page <../../db_management/db_online>`. For + Odoo.sh users, you should use a staging or duplicate database. For on-premise users, + you should use a staging environment - you should contact your integrating partner for + more information regarding how to test a new module in your particular setup. + +The module should now be available in your **Apps** menu. Remove the ``Apps`` search facet +and search for ``amazon``; the module **Amazon/Authentication Patch** should be available for +installation. If you cannot find the module after having updated the list of available +modules, it means your Odoo source code is not up-to-date; refer to step one of this +page. + +.. image:: ./media/auth_module.png + :align: center + +Once the module is installed, you will need to generate an Authorization Token in Amazon +Seller Central and set it up on your Amazon Account in Odoo; this process is detailed +in the :doc:`setup ` page. + +.. seealso:: + - :doc:`features` + - :doc:`setup` + - :doc:`manage` \ No newline at end of file diff --git a/sales/products_prices/taxes.rst b/sales/products_prices/taxes.rst index 7e4a3edcc..901808ea2 100644 --- a/sales/products_prices/taxes.rst +++ b/sales/products_prices/taxes.rst @@ -7,7 +7,7 @@ Set taxes ../../accounting/fiscality/taxes/default_taxes ../../accounting/fiscality/taxes/fiscal_positions - ../../accounting/fiscality/taxes/tax_included + ../../accounting/fiscality/taxes/taxes ../../accounting/fiscality/taxes/taxcloud ../../accounting/fiscality/taxes/B2B_B2C diff --git a/studio.rst b/studio.rst index 32db82bd9..715a0e8c7 100644 --- a/studio.rst +++ b/studio.rst @@ -8,4 +8,5 @@ Studio :titlesonly: studio/concepts - studio/use_cases \ No newline at end of file + studio/use_cases + studio/how_to \ No newline at end of file diff --git a/studio/how_to.rst b/studio/how_to.rst new file mode 100644 index 000000000..175cbdbd8 --- /dev/null +++ b/studio/how_to.rst @@ -0,0 +1,10 @@ +====== +How To +====== + +.. toctree:: + :titlesonly: + + how_to/rainbow_man + how_to/reports + how_to/export_import diff --git a/studio/how_to/export_import.rst b/studio/how_to/export_import.rst new file mode 100644 index 000000000..22cf678d3 --- /dev/null +++ b/studio/how_to/export_import.rst @@ -0,0 +1,28 @@ +========================= +Export and Import Modules +========================= + +When you do customizations in Odoo Studio, a new module is created in your database, making it easy +to use Studio for prototyping. + +To export these customizations, activate Studio on the main dashboard and, under the menu +*Customizations*, click on *Export*. The default filename is *customizations.zip*. + +.. image:: media/export_import/customizations_menu.png + :align: center + :alt: View of the menu customizations in Odoo Studio + +| The module created contains the definition of custom models and fields, as well as the UI elements + of any customization in an XML format. +| To import and install the customizations in another instance, connect to the destination database, + activate Studio and, under *Customizations*, click on *Import*. + +.. image:: media/export_import/import_modules.png + :align: center + :alt: View of the import modules window for Odoo Studio + +.. warning:: + Studio does not know which apps are customized (because the same view can be modified on + different apps), therefore, it *does not* add the underlying modules as dependencies of the + exported module. In other words, the applications installed on the source database should be + installed on the destination database. \ No newline at end of file diff --git a/studio/how_to/media/export_import/customizations_menu.png b/studio/how_to/media/export_import/customizations_menu.png new file mode 100644 index 000000000..0497ed5a5 Binary files /dev/null and b/studio/how_to/media/export_import/customizations_menu.png differ diff --git a/studio/how_to/media/export_import/import_modules.png b/studio/how_to/media/export_import/import_modules.png new file mode 100644 index 000000000..2f41e8668 Binary files /dev/null and b/studio/how_to/media/export_import/import_modules.png differ diff --git a/studio/how_to/media/rainbow/crm_rainbow.png b/studio/how_to/media/rainbow/crm_rainbow.png new file mode 100644 index 000000000..c9efe702a Binary files /dev/null and b/studio/how_to/media/rainbow/crm_rainbow.png differ diff --git a/studio/how_to/media/rainbow/properties_rainbow.png b/studio/how_to/media/rainbow/properties_rainbow.png new file mode 100644 index 000000000..ebcb55acf Binary files /dev/null and b/studio/how_to/media/rainbow/properties_rainbow.png differ diff --git a/studio/how_to/media/reports/add_tab.png b/studio/how_to/media/reports/add_tab.png new file mode 100644 index 000000000..191c5f6c7 Binary files /dev/null and b/studio/how_to/media/reports/add_tab.png differ diff --git a/studio/how_to/media/reports/limit_visibility.png b/studio/how_to/media/reports/limit_visibility.png new file mode 100644 index 000000000..1d65bdaf0 Binary files /dev/null and b/studio/how_to/media/reports/limit_visibility.png differ diff --git a/studio/how_to/media/reports/options_tab.png b/studio/how_to/media/reports/options_tab.png new file mode 100644 index 000000000..be4cf7ee8 Binary files /dev/null and b/studio/how_to/media/reports/options_tab.png differ diff --git a/studio/how_to/media/reports/print_menu.png b/studio/how_to/media/reports/print_menu.png new file mode 100644 index 000000000..0d9de83e0 Binary files /dev/null and b/studio/how_to/media/reports/print_menu.png differ diff --git a/studio/how_to/media/reports/report_typing.png b/studio/how_to/media/reports/report_typing.png new file mode 100644 index 000000000..c3b83061c Binary files /dev/null and b/studio/how_to/media/reports/report_typing.png differ diff --git a/studio/how_to/media/reports/undo_redo.png b/studio/how_to/media/reports/undo_redo.png new file mode 100644 index 000000000..58f7b50bf Binary files /dev/null and b/studio/how_to/media/reports/undo_redo.png differ diff --git a/studio/how_to/rainbow_man.rst b/studio/how_to/rainbow_man.rst new file mode 100644 index 000000000..4ee15f34a --- /dev/null +++ b/studio/how_to/rainbow_man.rst @@ -0,0 +1,23 @@ +=========================== +Customizing the Rainbow Man +=========================== + +The Rainbow Man in Odoo is an animation shown once the user completes certain tasks and clicks on +certain buttons. It is a way to make the software fun to use, and rewarding, for employees. + +.. image:: media/rainbow/crm_rainbow.png + :align: center + :alt: View of a sales form and the tab properties and its rainbow man field in Odoo Studio + +| On most buttons in Odoo, such as *Send by Email*, *Confirm* or *Cancel*, once they are selected in + Studio, under their *Properties*, the *Rainbow Man* effect can be applied. +| By default, the feature is active: + +- when opportunities are marked as won; +- when users empty their inboxes; +- when the user finishes a tour; +- when the user finishes doing reconciliations. + +.. image:: media/rainbow/properties_rainbow.png + :align: center + :alt: View of a sales form and the tab properties and its rainbow man field in Odoo Studio \ No newline at end of file diff --git a/studio/how_to/reports.rst b/studio/how_to/reports.rst new file mode 100644 index 000000000..d8e8f6dab --- /dev/null +++ b/studio/how_to/reports.rst @@ -0,0 +1,72 @@ +=================== +Customizing Reports +=================== + +| Odoo uses HTML and CSS technologies to create reports. HTML is a markup language that uses tags, + also called elements. It is the core of any webpage because it provides its basic structure. + CSS interacts with HTML elements to add style to the page, establishing how the HTML is shown to + the user. Odoo’s reports also use Bootstrap’s grid layout, which is the containers, rows, and + columns to align content, and support Odoo's website themes. +| When creating a new report, choose the purpose of it and if you would like the report to include + header and footer (company logo, name, address, phone, email address, etc.). + +.. image:: media/reports/report_typing.png + :align: center + :alt: View of the types of new reports in Odoo Studio + +Under the tab **Add**, you find the fields to be dragged and dropped to the view. *Fields*, *Data +tables*, *Subtotal & Total*, and *Address Book* are dynamic elements (meaning that they need a +:doc:`one2many or a many2many <../concepts/understanding_general>` related object). *Text*, *Title +Block*, *Image*, and *Text in Cell* are static elements. + +.. image:: media/reports/add_tab.png + :align: center + :alt: View of a report and the tab add in Odoo Studio + +Once the element is added to the view, select it to see its **Options**. The first section shows the +hierarchy of the selected object and its properties, allowing you to individually edit +them. Fields with related objects have their directives shown on *Field Expression*. + +.. image:: media/reports/options_tab.png + :align: center + :alt: View of a report and the tab options in Odoo Studio + +| Under **Visible if**, define the rule(s) to set visibility conditions to fields. +| Example: if choosing to display a product image, you could set a visibility rule to only display + the ones that are *set* in the product form, avoiding having a plain icon when they are not set. +| **Visible for** is used to set which :doc:`groups <../../general/odoo_basics/add_user>` + can have access to specific elements in the report. **Limit visibility to groups**, under + *Report*, sets the visibility of the report to specifics groups, meaning that users belonging to + other groups do not see the same final document. + +.. image:: media/reports/limit_visibility.png + :align: center + :alt: View of a report’s settings emphasizing the field limit visibility to groups in Odoo Studio + +Under the **Report** tab, name your report, choose the paper format, and if the report should be +added to the *Print* menu list on its respective document form. + +.. image:: media/reports/print_menu.png + :align: center + :alt: View of an invoice form emphasizing the menu print for Odoo Studio + +If activating the :doc:`Developer mode <../../general/developer_mode/activate>`, additional fields +such as *Class* under *Options*, and *Reload from attachment* under *Report*, become visible. + +- *Class*: add custom CSS classes to the selected element (e.g. Bootstrap classes such as + *text-danger*). + +- *Reload from attachment*: saves the report as an attachment of the document when printed. When the + report is reprinted, it re-downloads that attachment instead of re-printing it. + This means that if the underlying record (e.g. Invoice) changes when compared to the first + impression, the report does not reflect the changes because they were done after the attachment was + created. This is typically useful for reports linked to documents that should not change, such as + Invoices. + +.. tip:: + Actions in Odoo Studio can be undone until you *Close* the toolbox. Once you have closed Studio, + changes can not be undone anymore. + + .. image:: media/reports/undo_redo.png + :align: center + :alt: View of a report being built and emphasizing the undo and redo buttons in Odoo Studio \ No newline at end of file diff --git a/studio/use_cases/views.rst b/studio/use_cases/views.rst index 0452525f7..0016ce637 100644 --- a/studio/use_cases/views.rst +++ b/studio/use_cases/views.rst @@ -2,7 +2,7 @@ Advanced Use Cases: Views ========================= -- **Case Scenario 1: in Sales, show orders in a Kanban View instead of a List View.** +- **Case scenario 1: in Sales, show orders in a Kanban View instead of a List View.** From the Sales page, access Studio and, under *Views*, set the *Kanban* option as the default one. diff --git a/subscriptions.rst b/subscriptions.rst new file mode 100644 index 000000000..aa82b32a5 --- /dev/null +++ b/subscriptions.rst @@ -0,0 +1,11 @@ +:banner: banners/subscriptions.png + +============= +Subscriptions +============= + +.. toctree:: + :titlesonly: + + subscriptions/configuration + subscriptions/sales_flow diff --git a/subscriptions/configuration.rst b/subscriptions/configuration.rst new file mode 100644 index 000000000..71bff00fe --- /dev/null +++ b/subscriptions/configuration.rst @@ -0,0 +1,9 @@ +============= +Configuration +============= + +.. toctree:: + :titlesonly: + + configuration/subscription_templates + configuration/subscription_products diff --git a/subscriptions/configuration/media/subscription_products_1.png b/subscriptions/configuration/media/subscription_products_1.png new file mode 100644 index 000000000..72bfb6805 Binary files /dev/null and b/subscriptions/configuration/media/subscription_products_1.png differ diff --git a/subscriptions/configuration/media/subscription_products_2.png b/subscriptions/configuration/media/subscription_products_2.png new file mode 100644 index 000000000..5aeebd055 Binary files /dev/null and b/subscriptions/configuration/media/subscription_products_2.png differ diff --git a/subscriptions/configuration/media/subscription_products_3.png b/subscriptions/configuration/media/subscription_products_3.png new file mode 100644 index 000000000..cefa677f3 Binary files /dev/null and b/subscriptions/configuration/media/subscription_products_3.png differ diff --git a/subscriptions/configuration/media/subscription_templates_1.png b/subscriptions/configuration/media/subscription_templates_1.png new file mode 100644 index 000000000..dbe0ded27 Binary files /dev/null and b/subscriptions/configuration/media/subscription_templates_1.png differ diff --git a/subscriptions/configuration/media/subscription_templates_2.png b/subscriptions/configuration/media/subscription_templates_2.png new file mode 100644 index 000000000..ee71841fa Binary files /dev/null and b/subscriptions/configuration/media/subscription_templates_2.png differ diff --git a/subscriptions/configuration/media/subscription_templates_3.png b/subscriptions/configuration/media/subscription_templates_3.png new file mode 100644 index 000000000..b773ae093 Binary files /dev/null and b/subscriptions/configuration/media/subscription_templates_3.png differ diff --git a/subscriptions/configuration/media/subscription_templates_4.png b/subscriptions/configuration/media/subscription_templates_4.png new file mode 100644 index 000000000..e6ffd368e Binary files /dev/null and b/subscriptions/configuration/media/subscription_templates_4.png differ diff --git a/subscriptions/configuration/subscription_products.rst b/subscriptions/configuration/subscription_products.rst new file mode 100644 index 000000000..8c75c4fe6 --- /dev/null +++ b/subscriptions/configuration/subscription_products.rst @@ -0,0 +1,54 @@ +========================= +Add subscription products +========================= + +To properly sell your subscriptions using our amazing **Odoo Subscriptions** application, you must follow +these steps: + +1. **Create your own subscription templates** +2. **Create your own subscription products with the right settings** + +As a result, you will be able to manage your subscriptions like any other product, create your +quotations and continue the sales flow to track the number of subscriptions you sell and manage the +revenue they generate. + +Configuration +============= + +Go to :menuselection:`Subscriptions --> Subscription products` to learn how you can configure your +own subscription products. You have the possibility to create a new product or edit an existing one. +Once named, be careful to select the option *Can be sold* and deselect *Can be purchased*. For the +product type, it is recommended to use *Service* for subscription products as they are non-material +products that you provide to your customers. Finally, you can adapt your prices and also add an +internal reference. + +.. image:: media/subscription_products_1.png + :align: center + :alt: View of a subscription product form in Odoo Subscriptions + +.. note:: + In the Sales tab, underneath the Subscriptions section, make sure the *Subscription products* + option is activated. In fact, if you create a subscription product from the **Odoo Subscriptions** + application, this option is selected by default. However, if you create a product from another + application, it is not the case. + + .. image:: media/subscription_products_2.png + :align: center + :alt: View of a subscription product form in Odoo Subscriptions + + You can also choose the subscription templates you want to use. + + .. image:: media/subscription_products_3.png + :align: center + :alt: View of a subscription product form in Odoo Subscriptions + +.. important:: + Be sure to check out our documentation on how to create, edit and manage your own + :doc:`Subscription templates <../../subscriptions/configuration/subscription_templates>` + before creating your own subscription products. Once created, check out our documentation on how to + :doc:`Create a quotation using subscription products <../../subscriptions/sales_flow/create_a_quotation>`, + to complete the sales flow. + +.. seealso:: + - :doc:`../../subscriptions/configuration/subscription_templates` + - :doc:`../../subscriptions/sales_flow/create_a_quotation` \ No newline at end of file diff --git a/subscriptions/configuration/subscription_templates.rst b/subscriptions/configuration/subscription_templates.rst new file mode 100644 index 000000000..19d81eb42 --- /dev/null +++ b/subscriptions/configuration/subscription_templates.rst @@ -0,0 +1,91 @@ +========================== +Use subscription templates +========================== + +The subscription business model is becoming more popular. Are you wondering why? + +- For **customers**, value lies in **convenience**: + + - Subscriptions simplify the business process. Indeed, subscribers never have to remember to renew + their orders every month, which gives them the assurance that they will have everything they + need before they actually need it. + - Subscriptions help customers stay on budget. + +- For **businesses**, value lies in the **ability to predict recurring revenue**: + + - Subscriptions reduce customer churn rate and significantly increase customer retention. + - Subscriptions provide much higher payment security for your business. They stabilize and + maintain recurring revenue streams by guaranteeing monthly revenues and adding value to your + business. + +.. raw:: html + +
Simplicity. + Higher customer retention. Opportunities for marketing. Business consistency. Better cash flow + management.
+ +**Odoo Subscriptions** help you save time and money. Subscription templates can help you generate +recurring invoices and manage renewals at a fast pace. With Odoo you have the possibility to create, +edit, and manage your own subscription templates. + +Configuration +============= + +Go to :menuselection:`Subscriptions --> Configuration --> Subscription templates`. By default, Odoo +suggests you two types of subscription (MON - Monthly subscription *vs* YEA - Yearly subscription). +You can also create your own ones. + +.. image:: media/subscription_templates_1.png + :align: center + :alt: Default subscription templates on Odoo Subscriptions + +.. important:: + The **Odoo Subscriptions** application automatically installs **Odoo Sales** and **Odoo Invoicing** + as they work integrated. + +Create your first template +========================== + +You can create a new template or edit an existing one. The first thing you need to do is give your +template a name. After that, choose an *Invoicing period* and specify whether you would like to +invoice your customers per *Days*, *Weeks*, *Months* or *Years*. On *Duration*, determine if +the subscription must go on *Forever* (until it’s manually closed), or for a *Fixed amount* of time. +Among the payment options, an additional field called *Invoice email* appears when you choose +*Send*, *Send & try to charge* or *Send after successful payment*. This field allows you to add an +invoice email template to your subscription templates. + +.. image:: media/subscription_templates_2.png + :align: center + :alt: Create your own subscription templates on Odoo Subscriptions + +For each template, you can also choose if you want your customers to be able to close their +subscriptions or not. If enabled, you can set an *Automatic closing* limit and specify the +*Group of subscription* and *Journal* options. + +.. note:: + On each template, you can add your **Terms and Conditions**. Specifying terms and conditions is + essential to set out important contractual points between the customers and the sellers (payment, + refund policy, cancellation, complaints, etc.). + + .. image:: media/subscription_templates_3.png + :align: center + :alt: Terms & conditions on Odoo Subscriptions + + Finally, if you want to know the basic running health status of your subscriptions, you also have + access to a specific tab called **Health Check**. There, you can edit and create your own + filters to define what is a subscription in good health *vs* bad health. The system automatically + summarizes all the records corresponding to these filters and you are able to manage them in one + click. + + .. image:: media/subscription_templates_4.png + :align: center + :alt: Health check on Odoo Subscriptions + +.. important:: + After creating your own subscription templates, be sure to check out our documentation on how to + create, edit and manage your own + :doc:`Subscription products <../../subscriptions/configuration/subscription_products>`, + to complete the sales flow. + +.. seealso:: + - :doc:`../../subscriptions/configuration/subscription_products` diff --git a/subscriptions/sales_flow.rst b/subscriptions/sales_flow.rst new file mode 100644 index 000000000..7aea3b1be --- /dev/null +++ b/subscriptions/sales_flow.rst @@ -0,0 +1,11 @@ +========== +Sales flow +========== + +.. toctree:: + :titlesonly: + + sales_flow/create_a_quotation + sales_flow/renewals + sales_flow/upselling + sales_flow/closing diff --git a/subscriptions/sales_flow/closing.rst b/subscriptions/sales_flow/closing.rst new file mode 100644 index 000000000..8506342aa --- /dev/null +++ b/subscriptions/sales_flow/closing.rst @@ -0,0 +1,107 @@ +==================== +Close a subscription +==================== + +Losing a customer is always difficult, especially if you put a lot of effort into getting them to +sign up for your products/services. However, many companies come up with dubious methods to reduce +the probability of this happening. + +.. raw:: html + +
What is the right + way to go?
+ +1. If you adopt such methods, you are among companies that actively and indirectly spread the + phobia of subscriptions, who do not think about how negatively dissatisfied customers could impact + their business and, who frustrate the customers in a way or another. However, at some point, it is + understandable that you do not want your customers to be involved in your subscription status. + +2. If you do not adopt such methods, you are among companies that continue to evolve in a + long-term subscription business model, especially in an era of ultra-fast communications between + dissatisfied customers, and who retain their customers by making it easier for them to leave if + they want to. By giving them the opportunity to close their own subscriptions, your customers do + not feel trapped because they subscribed to your products/services. + +In summary, the **Odoo Subscriptions** application gives you the +**possibility to choose what you want to apply**. Indeed, you can decide whether to give your customers the +option to close their subscriptions whenever they want to or to restrict this possibility. It depends +on you and we will show you how to do that in our amazing application. + +Configuration +============= + +Go to :menuselection:`Subscriptions --> Configuration --> Subscription templates`. From there, you can +create a new *Subscription template* or modify an existing one. When editing your template, underneath +the Invoicing tab, you have the possibility to activate the option *Closable by customer*. +Once enabled, this option gives your customers the right to close their own subscriptions. + +.. image:: media/closing_1.png + :align: center + :alt: Configuration to close your subscription with Odoo Subscriptions + +.. note:: + Be sure to check out our documentation on + how to :doc:`Use subscription templates <../../subscriptions/configuration/subscription_templates>` + to fully understand the importance of this feature in a basic flow using the + **Odoo Subscriptions** application. + +Close your first subscription +============================= + +Administrator view +------------------ + +Once confirmed, a quotation becomes a sales order and a new subscription is automatically created. +Therefore, this subscription has the status *In progress*. From there, you have the possibility to +close the subscription. + +.. image:: media/closing_2.png + :align: center + :alt: Close your subscription from an administration point of view with Odoo Subscriptions + +By using the smart button *Close*, you have to enter a close reason. For example, "Subscription too +expensive", "Subscription does not meet my requirements", "Subscription reached its end date", etc. +Immediately after confirming your close reason, you can observe that the status of the subscription +is now *Closed* and that the close reason is mentioned on the subscription. + +.. image:: media/closing_3.png + :align: center + :alt: What happens when you close your subscription with Odoo Subscriptions? + +Customer view +------------- + +As previously explained in the *Administrator view* part, from the subscription form, you also have the +possibility to visualize what your customers see when managing their subscriptions thanks to the +*Customer preview* button. In this example, the customer has the choice to close his/her subscription +whenever he/she wants to, due to the *Close Subscription* button. + +.. image:: media/closing_4.png + :align: center + :alt: Close your subscription from a customer point of view with Odoo Subscriptions + +By using this button, the customer can specify the reason for cancelling his/her subscription and +he/she can even leave a message. + +.. image:: media/closing_5.png + :align: center + :alt: What happens when customers close their subscription with Odoo Subscriptions? + +By confirming the cancellation, the customer is redirected to his/her portal. The administrator is +informed of this modification. Indeed, the status of the subscription becomes *Closed* and a note +appears in the chatter with the new stage, the end date, the close reason, and the closing text +added by the customer. + +.. image:: media/closing_6.png + :align: center + :alt: What happens when customers close their subscription in Odoo Subscriptions? + +.. note:: + Before closing a subscription, check out our documentation on how to + :doc:`Create a quotation using subscription products <../../subscriptions/sales_flow/create_a_quotation>` + to understand how subscriptions are managed in the **Odoo Subscriptions** application. + +.. seealso:: + - :doc:`../../subscriptions/configuration/subscription_templates` + - :doc:`../../subscriptions/configuration/subscription_products` + - :doc:`../../subscriptions/sales_flow/create_a_quotation` \ No newline at end of file diff --git a/subscriptions/sales_flow/create_a_quotation.rst b/subscriptions/sales_flow/create_a_quotation.rst new file mode 100644 index 000000000..72e5b02b9 --- /dev/null +++ b/subscriptions/sales_flow/create_a_quotation.rst @@ -0,0 +1,83 @@ +============================================== +Create a quotation using subscription products +============================================== + +Selling a digital product or service gives instant gratification. However, you have to work hard for +a new customer to make a purchase. It costs time and money. By convincing customers to sign up for a +subscription, you maximize your income and streamline your cash flow. You can sell any type of +product or service through a subscription business model. + +.. raw:: html + +
The only limit is + your imagination.
+ +Here is a scenario using **Odoo Subscriptions** to create a quotation including subscription +products. + +Create your first quotation +=========================== + +Before creating your first quotation, be sure to check out our documentation on how to create and +manage your own +:doc:`Subscription templates <../../subscriptions/configuration/subscription_templates>` +and on how to add +:doc:`Subscription products <../../subscriptions/configuration/subscription_products>` +to your templates. + +.. important:: + + These steps are **mandatory** to make a basic sales flow using **Odoo Subscriptions**. + +Go to **Odoo Sales** and create a new quotation. Then, choose a customer and add a product. +Be careful to select a product that you previously configured as a *Subscription product*. + +.. image:: media/quotations_1.png + :align: center + :alt: View of a quotation form in Odoo Sales + +When your quotation is ready, you have the possibility to send it to your customers or to confirm +it. It is better to first *Send by email* the quotation to your customers to have their confirmation +and, then, *Confirm* it in **Odoo Sales**. By clicking on *Customer preview*, you have an idea of +what your customers will see when receiving your quotation. + +.. image:: media/quotations_2.png + :align: center + :alt: Customer preview of a quotation form in Odoo Sales + +From there, your customers have three choices: *Sign & Pay* the quotation, give you a *Feedback* or +*Reject* the quotation. It appears that they are very happy and accept the option *Sign & Pay*. +Then, they have to validate the order with a signature and by choosing a payment method. When it is +done, you can check out the quotation in **Odoo Sales** and *Confirm* it. + +Manage your subscriptions from your SO +====================================== + +Once confirmed, the quotation becomes a sales order and a new button appears, *Subscriptions*. +Indeed, a subscription is automatically created. + +.. image:: media/quotations_3.png + :align: center + :alt: Quotation form in Odoo Sales with a button "Subscriptions" + +By clicking on the *Subscriptions* button, you can see that the status of the subscription is +*In progress*. From there, you will have three options: +:doc:`Renew <../../subscriptions/sales_flow/renewals>`, +:doc:`Close <../../subscriptions/sales_flow/closing>` or +:doc:`Upsell <../../subscriptions/sales_flow/upselling>` your subscription. + +.. image:: media/quotations_4.png + :align: center + :alt: Use of the intelligent button "Subscriptions" in Odoo Sales + +In the top-right corner, you can see the status of the subscription. When a subscription is new and +created from **Odoo Subscriptions**, the status is *Draft*. When a sales order has been validated, +the status is *In progress*. Finally, when a customer decides to close his subscription, the status +becomes *Closed*. + +.. seealso:: + - :doc:`../../subscriptions/configuration/subscription_templates` + - :doc:`../../subscriptions/configuration/subscription_products` + - :doc:`../../subscriptions/sales_flow/renewals` + - :doc:`../../subscriptions/sales_flow/closing` + - :doc:`../../subscriptions/sales_flow/upselling` diff --git a/subscriptions/sales_flow/media/closing_1.png b/subscriptions/sales_flow/media/closing_1.png new file mode 100644 index 000000000..c26324c0c Binary files /dev/null and b/subscriptions/sales_flow/media/closing_1.png differ diff --git a/subscriptions/sales_flow/media/closing_2.png b/subscriptions/sales_flow/media/closing_2.png new file mode 100644 index 000000000..d7a1c1588 Binary files /dev/null and b/subscriptions/sales_flow/media/closing_2.png differ diff --git a/subscriptions/sales_flow/media/closing_3.png b/subscriptions/sales_flow/media/closing_3.png new file mode 100644 index 000000000..525f91801 Binary files /dev/null and b/subscriptions/sales_flow/media/closing_3.png differ diff --git a/subscriptions/sales_flow/media/closing_4.png b/subscriptions/sales_flow/media/closing_4.png new file mode 100644 index 000000000..2dbd87766 Binary files /dev/null and b/subscriptions/sales_flow/media/closing_4.png differ diff --git a/subscriptions/sales_flow/media/closing_5.png b/subscriptions/sales_flow/media/closing_5.png new file mode 100644 index 000000000..230ece273 Binary files /dev/null and b/subscriptions/sales_flow/media/closing_5.png differ diff --git a/subscriptions/sales_flow/media/closing_6.png b/subscriptions/sales_flow/media/closing_6.png new file mode 100644 index 000000000..b9dc520ab Binary files /dev/null and b/subscriptions/sales_flow/media/closing_6.png differ diff --git a/subscriptions/sales_flow/media/quotations_1.png b/subscriptions/sales_flow/media/quotations_1.png new file mode 100644 index 000000000..64bcc6ab7 Binary files /dev/null and b/subscriptions/sales_flow/media/quotations_1.png differ diff --git a/subscriptions/sales_flow/media/quotations_2.png b/subscriptions/sales_flow/media/quotations_2.png new file mode 100644 index 000000000..fecfed414 Binary files /dev/null and b/subscriptions/sales_flow/media/quotations_2.png differ diff --git a/subscriptions/sales_flow/media/quotations_3.png b/subscriptions/sales_flow/media/quotations_3.png new file mode 100644 index 000000000..ae736613c Binary files /dev/null and b/subscriptions/sales_flow/media/quotations_3.png differ diff --git a/subscriptions/sales_flow/media/quotations_4.png b/subscriptions/sales_flow/media/quotations_4.png new file mode 100644 index 000000000..6df980b60 Binary files /dev/null and b/subscriptions/sales_flow/media/quotations_4.png differ diff --git a/subscriptions/sales_flow/media/renewals_1.png b/subscriptions/sales_flow/media/renewals_1.png new file mode 100644 index 000000000..1d43bf89f Binary files /dev/null and b/subscriptions/sales_flow/media/renewals_1.png differ diff --git a/subscriptions/sales_flow/media/renewals_2.png b/subscriptions/sales_flow/media/renewals_2.png new file mode 100644 index 000000000..ece616c65 Binary files /dev/null and b/subscriptions/sales_flow/media/renewals_2.png differ diff --git a/subscriptions/sales_flow/media/renewals_3.png b/subscriptions/sales_flow/media/renewals_3.png new file mode 100644 index 000000000..95c04b099 Binary files /dev/null and b/subscriptions/sales_flow/media/renewals_3.png differ diff --git a/subscriptions/sales_flow/media/renewals_4.png b/subscriptions/sales_flow/media/renewals_4.png new file mode 100644 index 000000000..c7d860aca Binary files /dev/null and b/subscriptions/sales_flow/media/renewals_4.png differ diff --git a/subscriptions/sales_flow/media/renewals_5.png b/subscriptions/sales_flow/media/renewals_5.png new file mode 100644 index 000000000..70d1395db Binary files /dev/null and b/subscriptions/sales_flow/media/renewals_5.png differ diff --git a/subscriptions/sales_flow/media/upsell_1.png b/subscriptions/sales_flow/media/upsell_1.png new file mode 100644 index 000000000..5bf5fbb23 Binary files /dev/null and b/subscriptions/sales_flow/media/upsell_1.png differ diff --git a/subscriptions/sales_flow/media/upsell_2.png b/subscriptions/sales_flow/media/upsell_2.png new file mode 100644 index 000000000..98028e32e Binary files /dev/null and b/subscriptions/sales_flow/media/upsell_2.png differ diff --git a/subscriptions/sales_flow/media/upsell_3.png b/subscriptions/sales_flow/media/upsell_3.png new file mode 100644 index 000000000..fb157181b Binary files /dev/null and b/subscriptions/sales_flow/media/upsell_3.png differ diff --git a/subscriptions/sales_flow/media/upsell_4.png b/subscriptions/sales_flow/media/upsell_4.png new file mode 100644 index 000000000..4ea46db49 Binary files /dev/null and b/subscriptions/sales_flow/media/upsell_4.png differ diff --git a/subscriptions/sales_flow/media/upsell_5.png b/subscriptions/sales_flow/media/upsell_5.png new file mode 100644 index 000000000..1cbb11e7a Binary files /dev/null and b/subscriptions/sales_flow/media/upsell_5.png differ diff --git a/subscriptions/sales_flow/renewals.rst b/subscriptions/sales_flow/renewals.rst new file mode 100644 index 000000000..e59a1078b --- /dev/null +++ b/subscriptions/sales_flow/renewals.rst @@ -0,0 +1,82 @@ +==================== +Renew a subscription +==================== + +The key feature of a subscription business model is the recurring nature of payments. In this model, +customers pay a recurring amount in exchange for access to a product or a service. + +.. raw:: html + +
The renewal of a + subscription is the process followed by each customer when willing to pursue a + subscription.
+ +Each subscriber experiences this renewal process monthly, annually, or sometimes more, depending on +the duration of the contract. Most subscription companies choose to automate their renewal processes +but, in some cases, manual subscription renewals are still the preferred option. + +With **Odoo Subscriptions**, you can have all your subscriptions in one application, suggest an +automatic subscription renewal to your customers (as well as a manual one) and, finally, filter all +your subscriptions and easily find those to renew (with the help of the tag *To renew*). + +Renew your first subscription +============================= + +Before renewing a subscription, be sure to check out our documentation on how to +:doc:`Create a quotation <../../subscriptions/sales_flow/create_a_quotation>` using subscription +products. Indeed, once confirmed, a quotation becomes a sales order and a new subscription is +automatically created. Therefore, this subscription has the status *In progress*. From there, you +have the possibility to renew the subscription. In the Other Info tab, underneath the To Renew +section, you can activate the *To renew* option. When activated, a yellow tag automatically appears +in the upper right corner of the subscription. + +.. image:: media/renewals_1.png + :align: center + :alt: Renew your subscription with Odoo Subscriptions + +.. important:: + The *To renew* tag is automatically ticked when a payment fails. This indicator also appears + on the customer portal. To visualize that, you just have to click on the *Customer preview* + button. The tag *To renew* appears on the top right corner. + + .. image:: media/renewals_2.png + :align: center + :alt: Customer preview of a renewal with Odoo Subscriptions + +When a subscription needs to be renewed, you have the possibility to use a new button called +*Renewal quotation*. By clicking on it, a new quotation is created. From there, start a basic sales +flow allowing you to send the quotation by email to your customers or to confirm it. It is better to +first *Send by email* the quotation to your customers in order to have their confirmation and, then, +*Confirm* it in **Odoo Sales**. + +.. note:: + In the Chatter of this new quotation, it is mentioned that "This renewal order has been created + from the previous subscription". Once confirmed by your customers, this quotation becomes a + sales order and a new sale is mentioned in the upper right corner of the subscription. + + .. image:: media/renewals_3.png + :align: center + :alt: Renew a quotation with Odoo Subscriptions + + By clicking on the *Sales* button, you have a summary of your sales orders in a list view. + The only difference between your two quotations is the description underneath the + *Subscription Management* category. There, you can easily visualize which one is your renewal. + + .. image:: media/renewals_4.png + :align: center + :alt: Renewal as Subscription Management form in Odoo Subscriptions + +Visualize your subscriptions to renew +===================================== + +Finally, if you want to visualize all your subscriptions and easily find those to renew, you can go +to your *Subscriptions dashboard* and use the filter *To renew*. + +.. image:: media/renewals_5.png + :align: center + :alt: List view of all subscriptions and use of the filter to renew in Odoo Subscriptions + +.. seealso:: + - :doc:`../../subscriptions/configuration/subscription_templates` + - :doc:`../../subscriptions/configuration/subscription_products` + - :doc:`../../subscriptions/sales_flow/create_a_quotation` diff --git a/subscriptions/sales_flow/upselling.rst b/subscriptions/sales_flow/upselling.rst new file mode 100644 index 000000000..a13bc522e --- /dev/null +++ b/subscriptions/sales_flow/upselling.rst @@ -0,0 +1,85 @@ +===================== +Upsell a subscription +===================== + +Subscriptions are recurrent and go on indefinitely. As time passes by, our customers may want to +modify them. We must then be able to adapt the prices or change the products’ quantities to +accommodate their needs. Two situations can happen: + +1. **Loyal customers:** This kind of customers already trust you as a brand. Therefore, you are + confident regarding what you offer since they keep paying for your products and services. + Consequently, it is easier to sell them something additional than it would be to a + new customer. + +2. **New customers:** For this kind of customers, you have to come with something new, something + attractive. What about discounts? Typically, every subscription ends after a certain given time. + Making these types of offers for new customers strengthens your relationships with them and also + increases their retention. + +.. raw:: html + +
Upselling can make + a subscription last longer!
+ +Configuration +============= + +As previously explained, to upsell a subscription to new customers, it is recommended to offer +*Discounts*. To activate this option, go to :menuselection:`Sales --> Configuration --> Settings` and, +under the *Pricing* category, you have the possibility to grant discounts on sales order lines. + +.. image:: media/upsell_1.png + :align: center + :alt: Activation of the discount option in Odoo Sales + +Upsell your first subscription +============================== + +Before upselling a subscription, be sure to check out our documentation on how to +:doc:`Create a quotation <../../subscriptions/sales_flow/create_a_quotation>` using subscription +products. Indeed, once confirmed, a quotation becomes a sales order and a new subscription is +automatically created. Therefore, this subscription has the status *In progress*. From there, you +have the possibility to upsell your subscription. + +.. image:: media/upsell_2.png + :align: center + :alt: Upsell your subscription with Odoo Subscriptions + +By using the smart button *Upsell*, you are able to create a new quotation with new subscription +products and send it to your customers for approval. + +.. image:: media/upsell_3.png + :align: center + :alt: Add products to your subscription via the upsell option in Odoo Subscriptions + +.. important:: + When the quotation is confirmed by your customers, the products are added to the initial + subscription. Quotation prices are, then, prorated to the remaining time of the current invoicing + period. + +Of course, before sending this new quotation to your customers, you can change the unit price, taxes, +and, even the discount you want to offer. The smart button *Customer preview* is useful for mimicking +the customer's reaction. In this case, we can confidently say that the customer will *Sign and pay* +this new quotation. When it is done, you have to go back in edit mode, confirm the quotation, and +click on the smart button *Subscriptions* to visualize all updates. From there, you can see that an +additional line has been added to the subscription with the new extra service the customer wanted to +purchase. + +.. image:: media/upsell_4.png + :align: center + :alt: Visualize all your subscriptions updates with Odoo Subscriptions + +In addition, by clicking on the *Sales* button, you have a summary of your sales orders in a list +view. + +.. image:: media/upsell_5.png + :align: center + :alt: List view of all sales orders created for a subscription + +The only difference between your two sales orders is the description underneath the +*Subscription Management* category. There, you can easily visualize which one is your upselling. + +.. seealso:: + - :doc:`../../subscriptions/configuration/subscription_templates` + - :doc:`../../subscriptions/configuration/subscription_products` + - :doc:`../../subscriptions/sales_flow/create_a_quotation` \ No newline at end of file diff --git a/support/what_can_i_expect.rst b/support/what_can_i_expect.rst index d5b0e7544..b6551f8ee 100644 --- a/support/what_can_i_expect.rst +++ b/support/what_can_i_expect.rst @@ -31,7 +31,7 @@ What kind of support is included? misconfiguration or customization) - Issues that might occur in a test database after upgrading to a newer version -*Odoo Support does not make changes to your production database, but gives you +*Odoo Support does not make changes to your production database without your agreement and gives you the material and knowledge to do it yourself!* diff --git a/survey/overview.rst b/survey/overview.rst index 6b06efb4d..e7856a2ab 100644 --- a/survey/overview.rst +++ b/survey/overview.rst @@ -5,4 +5,6 @@ Overview .. toctree:: :titlesonly: - overview/create \ No newline at end of file + overview/create + overview/scoring + overview/time_random \ No newline at end of file diff --git a/survey/overview/create.rst b/survey/overview/create.rst index 74e64ffdd..e74b12d0e 100644 --- a/survey/overview/create.rst +++ b/survey/overview/create.rst @@ -1,6 +1,6 @@ -================ -Create a Survey -================ +======================== +Get Started with Surveys +======================== Surveys can be used for a range of purposes that can go from collecting customer feedback, evaluate the success of an event, measure how pleased customers are with your products/services, gauge @@ -10,33 +10,79 @@ your market is thinking. Get started =========== -Choose the type of answer you would like your question to have, and under *Options* find the -feature *Mandatory Answer*. +When creating your survey, choose a *Title* and *Category*. The *Category* field is used to know in +which context the survey is being conducted, as different applications might use it for different +purposes such as recruitment, certification, or employee appraisal. -.. image:: media/sur1.png +.. image:: media/new_survey.png :align: center - :alt: Create surveys with Odoo Survey application + :alt: Form view of a survey with a title and category being chosen in Odoo Surveys -| Write a *Description* to be displayed on the homepage of the survey, and under *Options*, find - features such as *Time Limit* and *Scoring*. -| *Test* to go through the survey before sharing it, avoiding errors. -| Once done, click on *Start Survey* to be able to *Share* it with your recipients (respondents). +Tab: Questions +-------------- -Getting responses and analysing results -======================================= +| Add sections and questions by clicking on the respective links. +| On the *Sections and Questions* form, once the question type is chosen and the answer added, + under the tab *Options*, enable *Mandatory Answer*, and set an *Error message* to be shown + when the user tries to submit the survey without answering the respective question. +| Depending on the *Question Type*, the tab *Options* aggregates extra and different + possibilities. Examples: -| As your recipients respond to it, the answers can be seen under the status button *Answers*, or - under :menuselection:`Survey --> Participations --> Participations`. -| If checking the answers under *Participations*, more details such as the number of attempts and - skipped answers a respondent took are shown. +- *Single Line Text Box* - can choose a minimum and maximum text length (number of characters - + spaces do not count), and its error message. +- *Multiple choice: multiple answers allowed*: choose between radio buttons or a dropdown menu + list, and if you would like to have a comment field. If the user select an answer and type a + comment, the values are separately recorded. Or, enable the comment field to be + displayed as an answer choice, with which a text type field is displayed. +- *Matrix Type*: choose if you would like to have one or multiple choices per row. -.. image:: media/sur2.png +.. image:: media/sections_questions.png :align: center - :alt: Create surveys with Odoo Survey application + :alt: Sections and questions view of a survey in Odoo Surveys -Click on *See results* to see an analysis of the responses, and if you chose to have a scoring -system and certificate available, a *Certified* status menu becomes available. +Tab: Description +---------------- -.. image:: media/sur3.png +Write a *Description* to be displayed under the title of the survey's homepage. + +.. image:: media/frontend_description.png :align: center - :alt: Create surveys with Odoo Survey application \ No newline at end of file + :alt: Frontend of a survey showing the title and description of a survey for Odoo Surveys + +.. tip:: + Click on *Edit* to personalize your pages with the website builder. + +Tab: Options +------------ + +Under the tab *Options*, choose the *Layout* of your questions. If choosing *One page per section* or +*One page per question*, an option *Back Button* becomes available, which allows the user to go back +pages. + +.. image:: media/tab_options_layout.png + :align: center + :alt: Form view of a survey emphasizing the layout feature under options in Odoo Surveys + +Test and share the survey +========================= + +| Once your Survey is ready, *Test* it to avoid *Sharing* it with potential errors. As answers get + collected, click on *Answers* to access all the details of the respondent and his answers. +| By default, a filter *Except Test Entries* is applied to keep the list of entries clean with only + real participants. + +.. image:: media/user_feedback.png + :align: center + :alt: View list of the participations of a survey in Odoo Surveys + +| Another way to access detailed answers is by going to :menuselection:`Participations --> + Participations`. +| Click on *See results* to be redirected to an analytical page. + +.. image:: media/analytical_page.png + :align: center + :alt: View of an analytical page for Odoo Surveys + +.. seealso:: + - :doc:`scoring` + - :doc:`time_random` diff --git a/survey/overview/media/analytical_page.png b/survey/overview/media/analytical_page.png new file mode 100644 index 000000000..e811646b5 Binary files /dev/null and b/survey/overview/media/analytical_page.png differ diff --git a/survey/overview/media/answers_form.png b/survey/overview/media/answers_form.png new file mode 100644 index 000000000..51877dfd2 Binary files /dev/null and b/survey/overview/media/answers_form.png differ diff --git a/survey/overview/media/frontend_bagdes.png b/survey/overview/media/frontend_bagdes.png new file mode 100644 index 000000000..7e025b03c Binary files /dev/null and b/survey/overview/media/frontend_bagdes.png differ diff --git a/survey/overview/media/frontend_description.png b/survey/overview/media/frontend_description.png new file mode 100644 index 000000000..92ec9b321 Binary files /dev/null and b/survey/overview/media/frontend_description.png differ diff --git a/survey/overview/media/new_survey.png b/survey/overview/media/new_survey.png new file mode 100644 index 000000000..7274c2cf6 Binary files /dev/null and b/survey/overview/media/new_survey.png differ diff --git a/survey/overview/media/random_question.png b/survey/overview/media/random_question.png new file mode 100644 index 000000000..64e67d4ad Binary files /dev/null and b/survey/overview/media/random_question.png differ diff --git a/survey/overview/media/scoring_candidates.png b/survey/overview/media/scoring_candidates.png new file mode 100644 index 000000000..90fbde307 Binary files /dev/null and b/survey/overview/media/scoring_candidates.png differ diff --git a/survey/overview/media/sections_questions.png b/survey/overview/media/sections_questions.png new file mode 100644 index 000000000..388367c0a Binary files /dev/null and b/survey/overview/media/sections_questions.png differ diff --git a/survey/overview/media/sur1.png b/survey/overview/media/sur1.png deleted file mode 100644 index 44942aede..000000000 Binary files a/survey/overview/media/sur1.png and /dev/null differ diff --git a/survey/overview/media/sur2.png b/survey/overview/media/sur2.png deleted file mode 100644 index b0068b203..000000000 Binary files a/survey/overview/media/sur2.png and /dev/null differ diff --git a/survey/overview/media/sur3.png b/survey/overview/media/sur3.png deleted file mode 100644 index a2ed8637b..000000000 Binary files a/survey/overview/media/sur3.png and /dev/null differ diff --git a/survey/overview/media/tab_options_layout.png b/survey/overview/media/tab_options_layout.png new file mode 100644 index 000000000..d53ad8534 Binary files /dev/null and b/survey/overview/media/tab_options_layout.png differ diff --git a/survey/overview/media/tab_options_timelimit.png b/survey/overview/media/tab_options_timelimit.png new file mode 100644 index 000000000..c9b33623e Binary files /dev/null and b/survey/overview/media/tab_options_timelimit.png differ diff --git a/survey/overview/media/user_feedback.png b/survey/overview/media/user_feedback.png new file mode 100644 index 000000000..97c076388 Binary files /dev/null and b/survey/overview/media/user_feedback.png differ diff --git a/survey/overview/scoring.rst b/survey/overview/scoring.rst new file mode 100644 index 000000000..f04a59e6e --- /dev/null +++ b/survey/overview/scoring.rst @@ -0,0 +1,36 @@ +=============== +Scoring Surveys +=============== + +To measure your respondent’s performance, knowledge of a subject, or overall satisfaction, attach +points to the answers of specific questions. The points are summed up to give your respondent a +final score. + +On your survey’s form, click on *Add a question* and, under the tab *Options*, choose between +*Scoring with answers at the end* or *Scoring without answers at the end*. Now, on your question’s +form, set the right answer and score. + +.. image:: media/answers_form.png + :align: center + :alt: Form view of a survey showing a list of answers in Odoo Surveys + +Set the percentage score the user needs to achieve to have successfully taken the survey. If +enabling *Certificate*, choose its template. The certification is automatically sent by email to the +users who successfully finish it. + +.. image:: media/scoring_candidates.png + :align: center + :alt: Form view of a survey emphasizing the scoring and candidates section in Odoo Surveys + +Enable *Login required* to be able to *Give Badges*. Badges are related to the eLearning section of +your website. Besides the logged-in user, visitors of the website that access the page *Courses* +can also see the granted badges. + +.. image:: media/frontend_bagdes.png + :align: center + :alt: View of the courses tab emphasizing the latest achievements section on the website for + Odoo Surveys + +.. seealso:: + - :doc:`time_random` + diff --git a/survey/overview/time_random.rst b/survey/overview/time_random.rst new file mode 100644 index 000000000..1cda964ee --- /dev/null +++ b/survey/overview/time_random.rst @@ -0,0 +1,34 @@ +============================ +Time and Randomize Questions +============================ + +Time Limit +========== + +| On timed surveys, respondents need to complete the survey within a certain period of time. It can + be used to ensure that all respondents get the same amount of time to find the answers, or to + decrease the chance of having them looking at external resources. +| Set the *Time limit* under the tab *Options*. + +.. image:: media/tab_options_timelimit.png + :align: center + :alt: View of a survey form emphasizing the time limit feature in Odoo Surveys + +A timer is shown on the pages so the user can keep track of the remaining time. Surveys not \ +submitted by the *Time limit* do not have their answers saved. + +Selection +========= + +| When you randomize a survey, you allow for the questions to be shuffled in a random order every + time someone opens the questionnaire. This can be useful to avoid having respondents looking at + each others' answers. +| To do so, under the tab *Options*, enable *Randomized per section*. Now, under the tab *Questions*, + set how many of the questions in that section should be taken into account during the shuffling. + +.. image:: media/random_question.png + :align: center + :alt: View of a survey form emphasizing the random questions count column in Odoo Surveys + +.. seealso:: + - :doc:`scoring` \ No newline at end of file diff --git a/timesheets/overview.rst b/timesheets/overview.rst index 376085978..a2429f91d 100644 --- a/timesheets/overview.rst +++ b/timesheets/overview.rst @@ -6,4 +6,5 @@ Overview :titlesonly: overview/get_started - overview/compare \ No newline at end of file + overview/compare + overview/time_off \ No newline at end of file diff --git a/timesheets/overview/media/record_time_off.png b/timesheets/overview/media/record_time_off.png new file mode 100644 index 000000000..a89b8875e Binary files /dev/null and b/timesheets/overview/media/record_time_off.png differ diff --git a/timesheets/overview/media/time_off_request.png b/timesheets/overview/media/time_off_request.png new file mode 100644 index 000000000..56d847128 Binary files /dev/null and b/timesheets/overview/media/time_off_request.png differ diff --git a/timesheets/overview/media/time_off_types.png b/timesheets/overview/media/time_off_types.png new file mode 100644 index 000000000..a4b34fa44 Binary files /dev/null and b/timesheets/overview/media/time_off_types.png differ diff --git a/timesheets/overview/media/timesheet_description.png b/timesheets/overview/media/timesheet_description.png new file mode 100644 index 000000000..a56bcaa69 Binary files /dev/null and b/timesheets/overview/media/timesheet_description.png differ diff --git a/timesheets/overview/media/timesheets.png b/timesheets/overview/media/timesheets.png new file mode 100644 index 000000000..f7b6c0a14 Binary files /dev/null and b/timesheets/overview/media/timesheets.png differ diff --git a/timesheets/overview/time_off.rst b/timesheets/overview/time_off.rst new file mode 100644 index 000000000..f48f1df1d --- /dev/null +++ b/timesheets/overview/time_off.rst @@ -0,0 +1,49 @@ +========================================== +Create Timesheets upon Time Off Validation +========================================== + +Odoo automatically timesheets on project/tasks upon time off requests. This allows for better +overall control over the validation of timesheets, as it does not leave place for forgetfulness +and questions after hours that have not been timesheeted by the employee. + +Activate the :doc:`Developer mode <../../general/developer_mode/activate>`, go to *Timesheets*, +and change the *Project* and *Task* set by default, if you like. + +.. image:: media/record_time_off.png + :align: center + :alt: View of Timesheets setting enabling the feature record time off in Odoo Timesheets + +Go to :menuselection:`Time Off --> Configuration --> Time Off Types`. Select or create the +needed type, and decide if you would like the requests to be validated or not. + +.. image:: media/time_off_types.png + :align: center + :alt: View of a time off types form emphasizing the time off requests and timesheets section in + Odoo Time Off + +| Now, once the employee has requested his time off and the request has been validated (or not, + depending on the setting chosen), the time is automatically allocated on *Timesheets*, under the + respective project and task. +| On the example below, the user requested *Paid Time off* from July 13th to 15th. + +.. image:: media/time_off_request.png + :align: center + :alt: View of the time off request form in Odoo Time Off + +Considering that validation is not required, the requested time off is automatically displayed in +*Timesheets*. If validation is necessary, the time is automatically allocated after the responsible +person for validating does it so. + +.. image:: media/timesheets.png + :align: center + :alt: Video of timesheets emphasizing the requested time off from the employee in Odoo Timesheets + +Click on the magnifying glass, hovering over the concerned cell, to access all the aggregated data +on that cell (day), and see details regarding the project/task. + +.. image:: media/timesheet_description.png + :align: center + :alt: View of the details of a project/task in Odoo Timeheets + +.. seealso:: + - :doc:`compare` \ No newline at end of file