Avalara Avatax Certified Connector

AVALARA CERTIFICATION PENDING!
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/calculations.html
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:
- Activating your organization’s AvaTax account and downloading the product
- Entering the AvaTax credentials into your Odoo database and configuring it to use AvaTax services and features within Odoo
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.
IMPORTANT - resolving name conflict with Odoo EE
Avatax support was added to Odoo EE 14 and 15. Unfortunately the module names used are the same as the OCA ones, and because of this name collision the OCA modules were forced to change name.
The main module was renamed from account_avatax (now used by Odoo EE) to account_avatax_oca.
To apply this change in your odoo database and continue using the OCA Avalara certified connector:
-
Ensure you have the latest version from the OCA, and you see account_avatax_oca
in your Apps list.
-
Install the new account_avatax_oca module
-
Unistall the account_avatax module
-
Confirm that your configurations were kept safe, in particular:
Avatax API, “Avatax” default Fiscal Position, and “Avatax” default Tax record.
Table of contents
Before installing the Avatax app, the Avalara Python client must be installed in your system. It is available at https://pypi.org/project/Avalara.
Typically it can be installed in your system usin pip:
pip3 install Avalara
The base app, account_avatax_oca, adds Avatax support to Customer Invoices. In the official app store: https://apps.odoo.com/apps/modules/18.0/account_avatax_oca
The account_avatax_sale extension adds support to Quotations / Sales Orders. In the official app store: https://apps.odoo.com/apps/modules/16.0/account_avatax_sale_oca/
In most cases you will want to download and install both modules.
To install the Avatax app:
- Download the AvaTax modules
- Extract the downloaded files
- Upload the extracted directories into your Odoo module/addons directory
- Log into Odoo as an Administrator and enable the Developer Mode, in ‘Settings’
- Navigate to ‘Apps’, select the ‘Update Apps List’ menu, to have the new apps listed.
- In the Apps list, search for ‘AvaTax’
- Click on the Install button. If available, the account_avatax_sale_oca module will also be installed automatically.
To configure an Odoo company to use Avatax, follow these steps. Note tha tsome of them might be configured out of the box for the Odoo default company.
- Configure AvaTax API Connection
- Configure Company Taxes
- Configure Customers
- Configure Products
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.
- Navigate to: Accounting or Invoicing >> Customers >> Invoices.
- Click Create button.
- Ensure that Tax based on shipping address is checked.
- Line items should have AVATAX selected under Taxes for internal records.
- To complete the invoice, click the Validate button.
- The sale order will now appear in the AvaTax dashboard.
- Click the Register Payment button to finalize the invoice.
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.
Refunded invoice transactions will be indicated
with a negative total in the AvaTax interface.
Initiate Customer Refund
- Navigate to: Accounting or Invoicing >> Customers >> Invoices
- Select the invoice you wish to refund
- Click Add Credit Note button
Create Credit Note
- Under Credit Method, select Create a draft credit note.
- Enter a reason.
- Click Add Credit Note button.
Note: You will be taken to the Credit Notes list view
Validate Refund
- Select the Credit Note you wish to validate, review and then click Validate button.
Register Refund Payment
- Click Register Payment button to complete a refund
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.
The information placed in the sales order will automatically pass to the invoice
on the Avalara server and can be viewed in the AvaTax control panel.
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
- Navigate to: Sales >> Orders >> Orders
- Click Create button
Compute Taxes with AvaTax
- The module will calculate tax when the sales order is confirmed, or by navigating to Action >> Update taxes with Avatax. At this step, the sales order will retrieve the tax amount from Avalara but will not report the transaction to the AvaTax dashboard. Only invoice, refund, and payment activity are reported to the dashboard.
- 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 module will automatically use the address of the company as its origin. Location code will automatically populate with the warehouse code but can be modified if needed.
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:
- Add support to EU VAT
- Add support to US Use Tax on Purchases / vendor Bills
Other improvements that could be added:
- Detect and warn if customers State is not a nexus available for the current account
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 to smash it by providing a detailed and welcomed feedback.
Do not contact contributors directly about support or help with technical issues.
- Open Source Integrators
- Fabrice Henrion
- Sodexis
- Odoo SA
- Open Source Integrators (https://opensourceintegrators.com)
- Serpent CS
- Sodexis
- Kencove (https://kencove.com)
This module was originally developed by Fabrice 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.
Current maintainer:

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.