[REM] Accounting: Scrub Taxcloud
closes odoo/documentation#5976 Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
@ -296,7 +296,6 @@ directly to a product line.
|
|||||||
|
|
||||||
- :doc:`taxes/fiscal_positions`
|
- :doc:`taxes/fiscal_positions`
|
||||||
- :doc:`taxes/B2B_B2C`
|
- :doc:`taxes/B2B_B2C`
|
||||||
- :doc:`taxes/taxcloud`
|
|
||||||
- :doc:`reporting/tax_returns`
|
- :doc:`reporting/tax_returns`
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
|
@ -115,5 +115,4 @@ To define which fiscal position must be used by default for a specific partner,
|
|||||||
.. seealso::
|
.. seealso::
|
||||||
|
|
||||||
* :doc:`../taxes`
|
* :doc:`../taxes`
|
||||||
* :doc:`taxcloud`
|
|
||||||
* :doc:`B2B_B2C`
|
* :doc:`B2B_B2C`
|
||||||
|
@ -2,150 +2,10 @@
|
|||||||
TaxCloud integration
|
TaxCloud integration
|
||||||
====================
|
====================
|
||||||
|
|
||||||
TaxCloud calculates the sales tax rate in real time for every state, city, and special jurisdiction
|
|
||||||
in the United States. It keeps track of which products are exempt from sales tax and in which states
|
|
||||||
each exemption applies.
|
|
||||||
|
|
||||||
TaxCloud registration
|
|
||||||
=====================
|
|
||||||
|
|
||||||
Register an account on `TaxCloud.com <https://taxcloud.com/register>`_ and complete the setup.
|
|
||||||
Once you go live, get the :guilabel:`TaxCloud API Keys` by clicking on :guilabel:`Stores`, then
|
|
||||||
:guilabel:`Get Details`.
|
|
||||||
|
|
||||||
.. image:: taxcloud/taxcloud-api-keys.png
|
|
||||||
:align: center
|
|
||||||
:alt: Example of a store's TaxCloud API Keys
|
|
||||||
|
|
||||||
Enable TaxCloud
|
|
||||||
===============
|
|
||||||
|
|
||||||
#. Go to :menuselection:`Accounting Dashboard --> Configuration --> Settings` and in the
|
|
||||||
:guilabel:`Taxes` section enable :guilabel:`TaxCloud`.
|
|
||||||
#. Add the store's :guilabel:`Login ID` under :guilabel:`API ID` and the store's :guilabel:`Key`
|
|
||||||
under :guilabel:`API KEY`. Click on :guilabel:`Save`.
|
|
||||||
#. Click the :guilabel:`Refresh` button (:guilabel:`🗘`) next to :guilabel:`Default Category` to
|
|
||||||
import the TIC :dfn:`Taxability Information Codes` product categories from TaxCloud. Some
|
|
||||||
categories may imply specific tax rates or exemptions.
|
|
||||||
#. Select a :guilabel:`Default Category` and :guilabel:`Save`. The :guilabel:`Default Category` is
|
|
||||||
applied when no :guilabel:`TaxCloud Category` is set on your products or product categories,
|
|
||||||
or when no product is found on an order/invoice.
|
|
||||||
|
|
||||||
.. image:: taxcloud/taxcloud-settings.png
|
|
||||||
:align: center
|
|
||||||
:alt: Filling in TaxCloud API Keys in Odoo
|
|
||||||
|
|
||||||
Set TaxCloud categories on products
|
|
||||||
===================================
|
|
||||||
|
|
||||||
If you need to use more than one TIC category (i.e., the :guilabel:`Default Category`), go to the
|
|
||||||
product's :guilabel:`General Information` tab and select a :guilabel:`TaxCloud Category`.
|
|
||||||
|
|
||||||
If you want to configure multiple products simultaneously, ensure they share the same
|
|
||||||
:guilabel:`Product Category` and click on the external link button (:guilabel:`🡕`) to set a
|
|
||||||
:guilabel:`TaxCloud Category` on the :guilabel:`Product Category` instead.
|
|
||||||
|
|
||||||
.. note::
|
|
||||||
If you set a :guilabel:`TaxCloud Category` on a product and another on its :guilabel:`Product
|
|
||||||
Category`, Odoo only considers the :guilabel:`TaxCloud Category` found on the product itself.
|
|
||||||
|
|
||||||
A :guilabel:`TaxCloud Category` set on a **parent product category** does not apply to its
|
|
||||||
**child product categories**. For example, if you set :guilabel:`TaxCloud Category` on the *All*
|
|
||||||
:guilabel:`Product Category`, it is not applied to the *All/Sales* :guilabel:`Product Category`.
|
|
||||||
|
|
||||||
.. important::
|
|
||||||
Make sure your company address is complete, including the state and the ZIP code. Go to
|
|
||||||
:menuselection:`Settings --> Companies: Update Info` to open and edit your company address.
|
|
||||||
|
|
||||||
Automatically post taxes in the correct tax payable account
|
|
||||||
===========================================================
|
|
||||||
|
|
||||||
To make sure the new taxes generated by the TaxCloud integration are created with the correct
|
|
||||||
**Tax Payable** account, create a **user-defined default**. This process should be repeated for each
|
|
||||||
one of your companies that uses TaxCloud.
|
|
||||||
|
|
||||||
.. warning::
|
.. warning::
|
||||||
A user-defined default impacts all records at creation. It means that **every** new tax is
|
The Odoo TaxCloud integration has begun its decommissioning, starting in Odoo 17. New
|
||||||
set up to record income in the specified Tax Payable account unless the tax is manually edited to
|
installations are prohibited in Odoo 17, and in Odoo 18, the TaxCloud module(s) won't exist at
|
||||||
specify a different income account (or if another user-defined default takes precedence).
|
all. Odoo recommends the use of the Avatax platform.
|
||||||
|
|
||||||
To do so, go to :menuselection:`Accounting Dashboard --> Configuration --> Accounting: Chart of
|
|
||||||
Accounts`, find the company's :guilabel:`Tax Payable` account, and click on :guilabel:`Setup`. Take
|
|
||||||
note of the number after `id=` in the URL string; it is the **Tax Payable account ID** and will
|
|
||||||
be used later.
|
|
||||||
|
|
||||||
.. image:: taxcloud/tax-payable-id.png
|
|
||||||
:align: center
|
|
||||||
:alt: Example of Tax Payable account id in the URL string
|
|
||||||
|
|
||||||
Activate the :ref:`developer mode <developer-mode>`, then go to :menuselection:`Settings -->
|
|
||||||
Technical --> Actions: User-defined Defaults` and click on :guilabel:`Create`.
|
|
||||||
|
|
||||||
Click on :guilabel:`Field` drop-down menu and then on :guilabel:`Search More...`.
|
|
||||||
|
|
||||||
.. image:: taxcloud/user-defaults-search-more.png
|
|
||||||
:alt: User-defined Defaults Field search
|
|
||||||
:align: center
|
|
||||||
|
|
||||||
Use the search bar to filter for the :guilabel:`Tax Repartition Line` model, and use it a second
|
|
||||||
time to filter for the :guilabel:`Account` field. Select the line with :guilabel:`Tax Repartition
|
|
||||||
Line` under the :guilabel:`Model` column.
|
|
||||||
|
|
||||||
.. image:: taxcloud/user-defaults-search-filters.png
|
|
||||||
:alt: Searching for the Tax Repartition Line model and Account field
|
|
||||||
:align: center
|
|
||||||
|
|
||||||
Once you are back to the :guilabel:`User-defined Defaults` creation, enter the **Tax Payable account
|
|
||||||
ID** you took note of earlier under the :guilabel:`Default Value (JSON format)` field.
|
|
||||||
|
|
||||||
Select the company for which this configuration should apply under the :guilabel:`Company` field and
|
|
||||||
click :guilabel:`Save`.
|
|
||||||
|
|
||||||
.. image:: taxcloud/user-defaults-complete-configuration.png
|
|
||||||
:align: center
|
|
||||||
:alt: Example of a User-defined Defaults configuration
|
|
||||||
|
|
||||||
Automatically detect the fiscal position
|
|
||||||
========================================
|
|
||||||
|
|
||||||
Sales taxes are calculated in Odoo based on :doc:`fiscal positions <fiscal_positions>`. A fiscal
|
|
||||||
position for the United States is created when enabling TaxCloud.
|
|
||||||
|
|
||||||
You can configure Odoo to automatically detect to which customers the fiscal position should be
|
|
||||||
applied. To do so, go to :menuselection:`Accounting Dashboard --> Configuration --> Accounting:
|
|
||||||
Fiscal Positions` and select :guilabel:`Automatic Tax Mapping (TaxCloud)`. Enable :guilabel:`Detect
|
|
||||||
Automatically` and then :guilabel:`Save`.
|
|
||||||
|
|
||||||
.. image:: taxcloud/fiscal-position-detect.png
|
|
||||||
:align: center
|
|
||||||
:alt: Detect Automatically setting on the TaxCloud fiscal position
|
|
||||||
|
|
||||||
Now, this fiscal position is automatically set on any order or invoice if the customer country is
|
|
||||||
*United States*. This triggers the automated tax computation.
|
|
||||||
|
|
||||||
.. note::
|
|
||||||
To get the sales taxes on a sales order, confirm it or click the :guilabel:`Update Taxes` button
|
|
||||||
next to :guilabel:`Add Shipping`.
|
|
||||||
|
|
||||||
Interaction with coupons and promotions
|
|
||||||
=======================================
|
|
||||||
|
|
||||||
If you use the **Coupon** or **Promotion Programs**, the integration with TaxCloud might behave
|
|
||||||
unexpectedly. Indeed, as TaxCloud does not accept lines with negative amounts as part of the tax
|
|
||||||
computation, the amount of the lines added by the promotion program must be deduced from the total
|
|
||||||
of the lines it impacts.
|
|
||||||
|
|
||||||
.. important::
|
|
||||||
This means, amongst other complications, that orders using coupons or promotions with a TaxCloud
|
|
||||||
fiscal position **must** be invoiced completely - you cannot create invoices for partial
|
|
||||||
deliveries, etc.
|
|
||||||
|
|
||||||
Another unexpected behavior is possible. For example, you sell a product for which you have a
|
|
||||||
promotion program that provides a 50% discount. If the product's tax rate is 7%, the tax rate
|
|
||||||
computed from the TaxCloud integration displays 3.5%. This happens because the discount is included
|
|
||||||
in the price sent to TaxCloud. However, in Odoo, the discount is on another line entirely. Still,
|
|
||||||
the tax computation is correct. Indeed, a 3.5% tax on the full price is the equivalent of a 7% tax
|
|
||||||
on half the price, but this might be unexpected from a user point of view.
|
|
||||||
|
|
||||||
.. seealso::
|
.. seealso::
|
||||||
:doc:`fiscal_positions`
|
:doc:`avatax`
|
||||||
|
Before Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 4.6 KiB |
Before Width: | Height: | Size: 35 KiB |
Before Width: | Height: | Size: 8.3 KiB |
Before Width: | Height: | Size: 7.3 KiB |
Before Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 15 KiB |
@ -109,11 +109,6 @@ generated on Odoo to the Amazon backend.
|
|||||||
In addition, for your B2B clients, it is currently required to manually retrieve VAT numbers from
|
In addition, for your B2B clients, it is currently required to manually retrieve VAT numbers from
|
||||||
the Amazon backend before creating the invoice in Odoo.
|
the Amazon backend before creating the invoice in Odoo.
|
||||||
|
|
||||||
.. note::
|
|
||||||
For :doc:`TaxCloud <../../../finance/accounting/taxes/taxcloud>` users: invoices created from
|
|
||||||
Amazon sales orders are **not** synchronized with TaxCloud, since Amazon already includes them in
|
|
||||||
its own tax report to TaxCloud.
|
|
||||||
|
|
||||||
Register payments
|
Register payments
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
|
@ -18,7 +18,6 @@ To add a tax on a product, you can either set a tax in the :guilabel:`Customer T
|
|||||||
.. seealso::
|
.. seealso::
|
||||||
- :doc:`/applications/finance/accounting/taxes`
|
- :doc:`/applications/finance/accounting/taxes`
|
||||||
- :doc:`/applications/finance/accounting/taxes/avatax`
|
- :doc:`/applications/finance/accounting/taxes/avatax`
|
||||||
- :doc:`/applications/finance/accounting/taxes/taxcloud`
|
|
||||||
- :doc:`/applications/finance/accounting/taxes/fiscal_positions`
|
- :doc:`/applications/finance/accounting/taxes/fiscal_positions`
|
||||||
|
|
||||||
Tax display
|
Tax display
|
||||||
|