|Author:||Open Source Integrators, Fabrice Henrion, Odoo SA, Odoo Community Association (OCA)|
|Dependencies:||account, base, base_geolocalize, product, and sale_stock|
|Languages:||HTML (683, 26.7%), Python (1309, 51.2%), and XML (565, 22.1%)|
|Other repositories:||Change2improve/account-fiscal-rule, anderswallenquist/account-fiscal-rule, brain-tec/account-fiscal-rule, marclebrun/account-fiscal-rule, and ursais/account-fiscal-rule|
Odoo provides integration with AvaTax, a tax solution software by Avalara which includes sales tax calculation for all US states and territories and all Canadian provinces and territories (including GST, PST, and HST).
This module is capable of automatically detecting origin (Output Warehouse) and destination (Client Address), then calculating and reporting taxes to the user's Avalara account as well as a recording the correct sales taxes for the validated addresses within Odoo ERP.
This module is compatible both with the Odoo Enterprise and odoo Community editions.
An Avatax account is needed. Account information to access the Avatax dashboard can be obtained through the Avalara website here: https://www.avalara.com/products/avatax/
Once configured, the module operates in the background and performs calculations and reporting seamlessly to the AvaTax server.
This guide includes instructions for the following elements:
Note: Test the module before deploying in live environment. All changes to the AvaTax settings must be performed by a user with administrative access rights.
Table of contents
To install this app:
To Configure AvaTax API:
Other Avatax API advanced configurations:
- Add or remove applicable countries -- the calculator will not calculate for a country unless it's on the list.
Create product tax codes to assign to products and/or product categories. Navigate to: Accounting or Invoicing App >> Configuration >> AvaTax >> Product Tax Codes.
From here you can add, remove, and modify the product tax codes.
The AvaTax module is integrated into the tax calculation of Odoo. AVATAX is automatically added as a type of taxes to be applied. You can configure how AVATAX integrates within the Odoo system.
Configure AVATAX Tax Type:
Note: Upon initial install the settings will be blank. The image shows the demo configuration.
Products in Odoo are typically assigned to product categories. AvaTax settings can also be assigned to the product category when a product category is created.
Each company linked to AvaTax and their associated warehouses should be configured to ensure the correct tax is calculated and applied for all transactions.
Configure Warehouse Address
Properly configuring each customer ensures the correct tax is calculated and applied for all transactions.
Create New Customer
Configure and Validate Customer Address
Tax Exemption Status
The AvaTax module is integrated into Sales Invoices and is applied to each transaction. The transaction log in the AvaTax dashboard shows the invoice details and displays whether the transaction is in an uncommitted or committed status.
A validated invoice will have a Committed status and a cancelled invoice will have a Voided status.
The module will check if there is a selected warehouse and will automatically determine the address of the warehouse and the origin location. If no address is assigned to the warehouse, the company address is used.
Discounts are handled when they are enabled in Odoo's settings. They are calculated as a net deduction on the line item cost before the total is sent to AvaTax.
Odoo applies refunds as opposed to voids in its accounting module. As with customer invoices, the AvaTax module is integrated with customer refunds and is applied to each transaction.
Initiate Customer Refund
Create Credit Note
Note: You will be taken to the Credit Notes list view
Register Refund Payment
The AvaTax module is integrated into Sales Orders and allows computation of taxes. Sales order transactions do not appear in the in the AvaTax interface.
Discounts are handled when they are enabled in Odoo's settings. They will be reported as a net deduction on the line item cost.
Create New Sales Order
Compute Taxes with AvaTax
The development of this module was driven by US companies to compute Sales Tax.
However the Avatax service supports more use cases, that could be added:
Other improvements that could be added:
Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed feedback.
Do not contact contributors directly about support or help with technical issues.
This module was originally developed by Frabrice Henrion at Odoo SA, and maintained up to version 11.
For version 12, Fabrice invited partners to migrate this modules to later version, and maintain it.
Open Source Integrators performed the migration to Odoo 12 , and later added support for the more up to date REST API , alongside with the legacy SOAP API.
With the addition of the REST API, a deep refactor was introduced, changing the tax calculation approach, from just setting the total tax amount, to instead adding the tax rates to each document line and then having Odoo do all the other computations.
For Odoo 13, the legacy SOAP support was supported, and additional refactoring was done to contribute the module to the odoo Community Association.
This module is maintained by the OCA.
OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.
This module is part of the OCA/account-fiscal-rule project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.